nrf9160_pac/ficr_s/info/
devicetype.rs1#[doc = "Register `DEVICETYPE` reader"]
2pub struct R(crate::R<DEVICETYPE_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<DEVICETYPE_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<DEVICETYPE_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<DEVICETYPE_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Field `DEVICETYPE` reader - Device type"]
17pub type DEVICETYPE_R = crate::FieldReader<u32, DEVICETYPE_A>;
18#[doc = "Device type\n\nValue on reset: 4294967295"]
19#[derive(Clone, Copy, Debug, PartialEq)]
20#[repr(u32)]
21pub enum DEVICETYPE_A {
22 #[doc = "0: Device is an physical DIE"]
23 DIE = 0,
24 #[doc = "4294967295: Device is an FPGA"]
25 FPGA = 4294967295,
26}
27impl From<DEVICETYPE_A> for u32 {
28 #[inline(always)]
29 fn from(variant: DEVICETYPE_A) -> Self {
30 variant as _
31 }
32}
33impl DEVICETYPE_R {
34 #[doc = "Get enumerated values variant"]
35 #[inline(always)]
36 pub fn variant(&self) -> Option<DEVICETYPE_A> {
37 match self.bits {
38 0 => Some(DEVICETYPE_A::DIE),
39 4294967295 => Some(DEVICETYPE_A::FPGA),
40 _ => None,
41 }
42 }
43 #[doc = "Checks if the value of the field is `DIE`"]
44 #[inline(always)]
45 pub fn is_die(&self) -> bool {
46 *self == DEVICETYPE_A::DIE
47 }
48 #[doc = "Checks if the value of the field is `FPGA`"]
49 #[inline(always)]
50 pub fn is_fpga(&self) -> bool {
51 *self == DEVICETYPE_A::FPGA
52 }
53}
54impl R {
55 #[doc = "Bits 0:31 - Device type"]
56 #[inline(always)]
57 pub fn devicetype(&self) -> DEVICETYPE_R {
58 DEVICETYPE_R::new(self.bits)
59 }
60}
61#[doc = "Device type\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 [devicetype](index.html) module"]
62pub struct DEVICETYPE_SPEC;
63impl crate::RegisterSpec for DEVICETYPE_SPEC {
64 type Ux = u32;
65}
66#[doc = "`read()` method returns [devicetype::R](R) reader structure"]
67impl crate::Readable for DEVICETYPE_SPEC {
68 type Reader = R;
69}
70#[doc = "`reset()` method sets DEVICETYPE to value 0xffff_ffff"]
71impl crate::Resettable for DEVICETYPE_SPEC {
72 #[inline(always)]
73 fn reset_value() -> Self::Ux {
74 0xffff_ffff
75 }
76}