efm32gg290_pac/etm/
etmpidr1.rs1#[doc = "Register `ETMPIDR1` reader"]
2pub struct R(crate::R<ETMPIDR1_SPEC>);
3impl core::ops::Deref for R {
4    type Target = crate::R<ETMPIDR1_SPEC>;
5    #[inline(always)]
6    fn deref(&self) -> &Self::Target {
7        &self.0
8    }
9}
10impl From<crate::R<ETMPIDR1_SPEC>> for R {
11    #[inline(always)]
12    fn from(reader: crate::R<ETMPIDR1_SPEC>) -> Self {
13        R(reader)
14    }
15}
16#[doc = "Field `PARTNUM` reader - Part Number"]
17pub type PARTNUM_R = crate::FieldReader<u8, u8>;
18#[doc = "Field `IDCODE` reader - JEP106 Identity Code"]
19pub type IDCODE_R = crate::FieldReader<u8, u8>;
20impl R {
21    #[doc = "Bits 0:3 - Part Number"]
22    #[inline(always)]
23    pub fn partnum(&self) -> PARTNUM_R {
24        PARTNUM_R::new((self.bits & 0x0f) as u8)
25    }
26    #[doc = "Bits 4:7 - JEP106 Identity Code"]
27    #[inline(always)]
28    pub fn idcode(&self) -> IDCODE_R {
29        IDCODE_R::new(((self.bits >> 4) & 0x0f) as u8)
30    }
31}
32#[doc = "Peripheral ID1 Register\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [etmpidr1](index.html) module"]
33pub struct ETMPIDR1_SPEC;
34impl crate::RegisterSpec for ETMPIDR1_SPEC {
35    type Ux = u32;
36}
37#[doc = "`read()` method returns [etmpidr1::R](R) reader structure"]
38impl crate::Readable for ETMPIDR1_SPEC {
39    type Reader = R;
40}
41#[doc = "`reset()` method sets ETMPIDR1 to value 0xb9"]
42impl crate::Resettable for ETMPIDR1_SPEC {
43    #[inline(always)]
44    fn reset_value() -> Self::Ux {
45        0xb9
46    }
47}