stm32mp1/stm32mp157/ddrctrl/
init3.rs

1///Register `INIT3` reader
2pub type R = crate::R<INIT3rs>;
3///Register `INIT3` writer
4pub type W = crate::W<INIT3rs>;
5///Field `EMR` reader - EMR
6pub type EMR_R = crate::FieldReader<u16>;
7///Field `EMR` writer - EMR
8pub type EMR_W<'a, REG> = crate::FieldWriter<'a, REG, 16, u16>;
9///Field `MR` reader - MR
10pub type MR_R = crate::FieldReader<u16>;
11///Field `MR` writer - MR
12pub type MR_W<'a, REG> = crate::FieldWriter<'a, REG, 16, u16>;
13impl R {
14    ///Bits 0:15 - EMR
15    #[inline(always)]
16    pub fn emr(&self) -> EMR_R {
17        EMR_R::new((self.bits & 0xffff) as u16)
18    }
19    ///Bits 16:31 - MR
20    #[inline(always)]
21    pub fn mr(&self) -> MR_R {
22        MR_R::new(((self.bits >> 16) & 0xffff) as u16)
23    }
24}
25impl core::fmt::Debug for R {
26    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
27        f.debug_struct("INIT3")
28            .field("emr", &self.emr())
29            .field("mr", &self.mr())
30            .finish()
31    }
32}
33impl W {
34    ///Bits 0:15 - EMR
35    #[inline(always)]
36    pub fn emr(&mut self) -> EMR_W<INIT3rs> {
37        EMR_W::new(self, 0)
38    }
39    ///Bits 16:31 - MR
40    #[inline(always)]
41    pub fn mr(&mut self) -> MR_W<INIT3rs> {
42        MR_W::new(self, 16)
43    }
44}
45/**DDRCTRL SDRAM initialization register 3
46
47You can [`read`](crate::Reg::read) this register and get [`init3::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`init3::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
48
49See register [structure](https://stm32-rs.github.io/stm32-rs/STM32MP157.html#DDRCTRL:INIT3)*/
50pub struct INIT3rs;
51impl crate::RegisterSpec for INIT3rs {
52    type Ux = u32;
53}
54///`read()` method returns [`init3::R`](R) reader structure
55impl crate::Readable for INIT3rs {}
56///`write(|w| ..)` method takes [`init3::W`](W) writer structure
57impl crate::Writable for INIT3rs {
58    type Safety = crate::Unsafe;
59}
60///`reset()` method sets INIT3 to value 0x0510
61impl crate::Resettable for INIT3rs {
62    const RESET_VALUE: u32 = 0x0510;
63}