esp32p4/h264/
debug_info0.rs

1#[doc = "Register `DEBUG_INFO0` reader"]
2pub type R = crate::R<DEBUG_INFO0_SPEC>;
3#[doc = "Field `TOP_CTRL_INTER_DEBUG_STATE` reader - Represents top_ctrl_inter module FSM info."]
4pub type TOP_CTRL_INTER_DEBUG_STATE_R = crate::FieldReader;
5#[doc = "Field `TOP_CTRL_INTRA_DEBUG_STATE` reader - Represents top_ctrl_intra module FSM info."]
6pub type TOP_CTRL_INTRA_DEBUG_STATE_R = crate::FieldReader;
7#[doc = "Field `P_I_CMP_DEBUG_STATE` reader - Represents p_i_cmp module FSM info."]
8pub type P_I_CMP_DEBUG_STATE_R = crate::FieldReader;
9#[doc = "Field `MVD_DEBUG_STATE` reader - Represents mvd module FSM info."]
10pub type MVD_DEBUG_STATE_R = crate::FieldReader;
11#[doc = "Field `MC_CHROMA_IP_DEBUG_STATE` reader - Represents mc_chroma_ip module FSM info."]
12pub type MC_CHROMA_IP_DEBUG_STATE_R = crate::BitReader;
13#[doc = "Field `INTRA_16X16_CHROMA_CTRL_DEBUG_STATE` reader - Represents intra_16x16_chroma_ctrl module FSM info."]
14pub type INTRA_16X16_CHROMA_CTRL_DEBUG_STATE_R = crate::FieldReader;
15#[doc = "Field `INTRA_4X4_CTRL_DEBUG_STATE` reader - Represents intra_4x4_ctrl module FSM info."]
16pub type INTRA_4X4_CTRL_DEBUG_STATE_R = crate::FieldReader;
17#[doc = "Field `INTRA_TOP_CTRL_DEBUG_STATE` reader - Represents intra_top_ctrl module FSM info."]
18pub type INTRA_TOP_CTRL_DEBUG_STATE_R = crate::FieldReader;
19#[doc = "Field `IME_CTRL_DEBUG_STATE` reader - Represents ime_ctrl module FSM info."]
20pub type IME_CTRL_DEBUG_STATE_R = crate::FieldReader;
21impl R {
22    #[doc = "Bits 0:3 - Represents top_ctrl_inter module FSM info."]
23    #[inline(always)]
24    pub fn top_ctrl_inter_debug_state(&self) -> TOP_CTRL_INTER_DEBUG_STATE_R {
25        TOP_CTRL_INTER_DEBUG_STATE_R::new((self.bits & 0x0f) as u8)
26    }
27    #[doc = "Bits 4:6 - Represents top_ctrl_intra module FSM info."]
28    #[inline(always)]
29    pub fn top_ctrl_intra_debug_state(&self) -> TOP_CTRL_INTRA_DEBUG_STATE_R {
30        TOP_CTRL_INTRA_DEBUG_STATE_R::new(((self.bits >> 4) & 7) as u8)
31    }
32    #[doc = "Bits 7:9 - Represents p_i_cmp module FSM info."]
33    #[inline(always)]
34    pub fn p_i_cmp_debug_state(&self) -> P_I_CMP_DEBUG_STATE_R {
35        P_I_CMP_DEBUG_STATE_R::new(((self.bits >> 7) & 7) as u8)
36    }
37    #[doc = "Bits 10:12 - Represents mvd module FSM info."]
38    #[inline(always)]
39    pub fn mvd_debug_state(&self) -> MVD_DEBUG_STATE_R {
40        MVD_DEBUG_STATE_R::new(((self.bits >> 10) & 7) as u8)
41    }
42    #[doc = "Bit 13 - Represents mc_chroma_ip module FSM info."]
43    #[inline(always)]
44    pub fn mc_chroma_ip_debug_state(&self) -> MC_CHROMA_IP_DEBUG_STATE_R {
45        MC_CHROMA_IP_DEBUG_STATE_R::new(((self.bits >> 13) & 1) != 0)
46    }
47    #[doc = "Bits 14:17 - Represents intra_16x16_chroma_ctrl module FSM info."]
48    #[inline(always)]
49    pub fn intra_16x16_chroma_ctrl_debug_state(&self) -> INTRA_16X16_CHROMA_CTRL_DEBUG_STATE_R {
50        INTRA_16X16_CHROMA_CTRL_DEBUG_STATE_R::new(((self.bits >> 14) & 0x0f) as u8)
51    }
52    #[doc = "Bits 18:21 - Represents intra_4x4_ctrl module FSM info."]
53    #[inline(always)]
54    pub fn intra_4x4_ctrl_debug_state(&self) -> INTRA_4X4_CTRL_DEBUG_STATE_R {
55        INTRA_4X4_CTRL_DEBUG_STATE_R::new(((self.bits >> 18) & 0x0f) as u8)
56    }
57    #[doc = "Bits 22:24 - Represents intra_top_ctrl module FSM info."]
58    #[inline(always)]
59    pub fn intra_top_ctrl_debug_state(&self) -> INTRA_TOP_CTRL_DEBUG_STATE_R {
60        INTRA_TOP_CTRL_DEBUG_STATE_R::new(((self.bits >> 22) & 7) as u8)
61    }
62    #[doc = "Bits 25:27 - Represents ime_ctrl module FSM info."]
63    #[inline(always)]
64    pub fn ime_ctrl_debug_state(&self) -> IME_CTRL_DEBUG_STATE_R {
65        IME_CTRL_DEBUG_STATE_R::new(((self.bits >> 25) & 7) as u8)
66    }
67}
68#[cfg(feature = "impl-register-debug")]
69impl core::fmt::Debug for R {
70    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
71        f.debug_struct("DEBUG_INFO0")
72            .field(
73                "top_ctrl_inter_debug_state",
74                &format_args!("{}", self.top_ctrl_inter_debug_state().bits()),
75            )
76            .field(
77                "top_ctrl_intra_debug_state",
78                &format_args!("{}", self.top_ctrl_intra_debug_state().bits()),
79            )
80            .field(
81                "p_i_cmp_debug_state",
82                &format_args!("{}", self.p_i_cmp_debug_state().bits()),
83            )
84            .field(
85                "mvd_debug_state",
86                &format_args!("{}", self.mvd_debug_state().bits()),
87            )
88            .field(
89                "mc_chroma_ip_debug_state",
90                &format_args!("{}", self.mc_chroma_ip_debug_state().bit()),
91            )
92            .field(
93                "intra_16x16_chroma_ctrl_debug_state",
94                &format_args!("{}", self.intra_16x16_chroma_ctrl_debug_state().bits()),
95            )
96            .field(
97                "intra_4x4_ctrl_debug_state",
98                &format_args!("{}", self.intra_4x4_ctrl_debug_state().bits()),
99            )
100            .field(
101                "intra_top_ctrl_debug_state",
102                &format_args!("{}", self.intra_top_ctrl_debug_state().bits()),
103            )
104            .field(
105                "ime_ctrl_debug_state",
106                &format_args!("{}", self.ime_ctrl_debug_state().bits()),
107            )
108            .finish()
109    }
110}
111#[cfg(feature = "impl-register-debug")]
112impl core::fmt::Debug for crate::generic::Reg<DEBUG_INFO0_SPEC> {
113    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
114        core::fmt::Debug::fmt(&self.read(), f)
115    }
116}
117#[doc = "Debug information register0.\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`debug_info0::R`](R).  See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
118pub struct DEBUG_INFO0_SPEC;
119impl crate::RegisterSpec for DEBUG_INFO0_SPEC {
120    type Ux = u32;
121}
122#[doc = "`read()` method returns [`debug_info0::R`](R) reader structure"]
123impl crate::Readable for DEBUG_INFO0_SPEC {}
124#[doc = "`reset()` method sets DEBUG_INFO0 to value 0"]
125impl crate::Resettable for DEBUG_INFO0_SPEC {
126    const RESET_VALUE: u32 = 0;
127}