rp2040_pac/syscfg/
proc_in_sync_bypass_hi.rs

1#[doc = "Register `PROC_IN_SYNC_BYPASS_HI` reader"]
2pub type R = crate::R<PROC_IN_SYNC_BYPASS_HI_SPEC>;
3#[doc = "Register `PROC_IN_SYNC_BYPASS_HI` writer"]
4pub type W = crate::W<PROC_IN_SYNC_BYPASS_HI_SPEC>;
5#[doc = "Field `PROC_IN_SYNC_BYPASS_HI` reader - "]
6pub type PROC_IN_SYNC_BYPASS_HI_R = crate::FieldReader;
7#[doc = "Field `PROC_IN_SYNC_BYPASS_HI` writer - "]
8pub type PROC_IN_SYNC_BYPASS_HI_W<'a, REG> = crate::FieldWriter<'a, REG, 6>;
9impl R {
10    #[doc = "Bits 0:5"]
11    #[inline(always)]
12    pub fn proc_in_sync_bypass_hi(&self) -> PROC_IN_SYNC_BYPASS_HI_R {
13        PROC_IN_SYNC_BYPASS_HI_R::new((self.bits & 0x3f) as u8)
14    }
15}
16impl W {
17    #[doc = "Bits 0:5"]
18    #[inline(always)]
19    #[must_use]
20    pub fn proc_in_sync_bypass_hi(
21        &mut self,
22    ) -> PROC_IN_SYNC_BYPASS_HI_W<PROC_IN_SYNC_BYPASS_HI_SPEC> {
23        PROC_IN_SYNC_BYPASS_HI_W::new(self, 0)
24    }
25    #[doc = r" Writes raw bits to the register."]
26    #[doc = r""]
27    #[doc = r" # Safety"]
28    #[doc = r""]
29    #[doc = r" Passing incorrect value can cause undefined behaviour. See reference manual"]
30    #[inline(always)]
31    pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
32        self.bits = bits;
33        self
34    }
35}
36#[doc = "For each bit, if 1, bypass the input synchronizer between that GPIO  
37 and the GPIO input register in the SIO. The input synchronizers should  
38 generally be unbypassed, to avoid injecting metastabilities into processors.  
39 If you're feeling brave, you can bypass to save two cycles of input  
40 latency. This register applies to GPIO 30...35 (the QSPI IOs).  
41
42You can [`read`](crate::generic::Reg::read) this register and get [`proc_in_sync_bypass_hi::R`](R).  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`proc_in_sync_bypass_hi::W`](W). You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
43pub struct PROC_IN_SYNC_BYPASS_HI_SPEC;
44impl crate::RegisterSpec for PROC_IN_SYNC_BYPASS_HI_SPEC {
45    type Ux = u32;
46}
47#[doc = "`read()` method returns [`proc_in_sync_bypass_hi::R`](R) reader structure"]
48impl crate::Readable for PROC_IN_SYNC_BYPASS_HI_SPEC {}
49#[doc = "`write(|w| ..)` method takes [`proc_in_sync_bypass_hi::W`](W) writer structure"]
50impl crate::Writable for PROC_IN_SYNC_BYPASS_HI_SPEC {
51    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
52    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
53}
54#[doc = "`reset()` method sets PROC_IN_SYNC_BYPASS_HI to value 0"]
55impl crate::Resettable for PROC_IN_SYNC_BYPASS_HI_SPEC {
56    const RESET_VALUE: u32 = 0;
57}