1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
#[doc = r" Value read from the register"] pub struct R { bits: u32, } impl super::CPUID { #[doc = r" Reads the contents of the register"] #[inline] pub fn read(&self) -> R { R { bits: self.register.get(), } } } #[doc = r" Value of the field"] pub struct REVISIONR { bits: u8, } impl REVISIONR { #[doc = r" Value of the field as raw bits"] #[inline] pub fn bits(&self) -> u8 { self.bits } } #[doc = r" Value of the field"] pub struct PARTNOR { bits: u16, } impl PARTNOR { #[doc = r" Value of the field as raw bits"] #[inline] pub fn bits(&self) -> u16 { self.bits } } #[doc = r" Value of the field"] pub struct VARIANTR { bits: u8, } impl VARIANTR { #[doc = r" Value of the field as raw bits"] #[inline] pub fn bits(&self) -> u8 { self.bits } } #[doc = r" Value of the field"] pub struct IMPLEMENTERR { bits: u8, } impl IMPLEMENTERR { #[doc = r" Value of the field as raw bits"] #[inline] pub fn bits(&self) -> u8 { self.bits } } impl R { #[doc = r" Value of the register as raw bits"] #[inline] pub fn bits(&self) -> u32 { self.bits } #[doc = "Bits 0:3 - Indicates patch release: 0x0 = Patch 0"] #[inline] pub fn revision(&self) -> REVISIONR { let bits = { const MASK: u8 = 15; const OFFSET: u8 = 0; ((self.bits >> OFFSET) & MASK as u32) as u8 }; REVISIONR { bits } } #[doc = "Bits 4:15 - Indicates part number"] #[inline] pub fn partno(&self) -> PARTNOR { let bits = { const MASK: u16 = 4095; const OFFSET: u8 = 4; ((self.bits >> OFFSET) & MASK as u32) as u16 }; PARTNOR { bits } } #[doc = "Bits 20:23 - Indicates processor revision: 0x2 = Revision 2"] #[inline] pub fn variant(&self) -> VARIANTR { let bits = { const MASK: u8 = 15; const OFFSET: u8 = 20; ((self.bits >> OFFSET) & MASK as u32) as u8 }; VARIANTR { bits } } #[doc = "Bits 24:31 - Implementer code"] #[inline] pub fn implementer(&self) -> IMPLEMENTERR { let bits = { const MASK: u8 = 255; const OFFSET: u8 = 24; ((self.bits >> OFFSET) & MASK as u32) as u8 }; IMPLEMENTERR { bits } } }