1 /*
2  * Copyright (c) 2024 Microchip Technology Inc.
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 #ifndef _MEC5_ESPI_VW_V1_4_H
7 #define _MEC5_ESPI_VW_V1_4_H
8 
9 /** @addtogroup Device_Peripheral_clusters
10   * @{
11   */
12 /**
13   * @brief MEC_ESPI_VW_CTVW [CTVW] (eSPI Host to Device Virtual Wire 96-bit registers)
14   */
15 typedef struct mec_espi_vw_ctvw_regs {
16   __IOM uint32_t  HIRSS;                        /*!< (@ 0x00000000) Host index, reset source and reset state for
17                                                                     the group of 4 virtual wires                               */
18   __IOM uint32_t  SRC_ISELS;                    /*!< (@ 0x00000004) VW group IRQ Select for each of the 4 VWires               */
19   __IOM uint32_t  STATES;                       /*!< (@ 0x00000008) VW group VWire states                                      */
20 } MEC_ESPI_VW_CTVW_Type;                        /*!< Size = 12 (0xc)                                                           */
21 
22 
23 /**
24   * @brief MEC_ESPI_VW_TCVW [TCVW] (Device to eSPI Host Wire 64-bit registers)
25   */
26 typedef struct mec_espi_vw_tcvw_regs {
27   __IOM uint32_t  HIRCS;                        /*!< (@ 0x00000000) Host index, reset configuration, and R/O change
28                                                                     status                                                     */
29   __IOM uint32_t  STATES;                       /*!< (@ 0x00000004) VW group register containing states of the 4
30                                                                     VWires                                                     */
31 } MEC_ESPI_VW_TCVW_Type;                        /*!< Size = 8 (0x8)                                                            */
32 /** @} */ /* End of group Device_Peripheral_clusters */
33 
34 /** @addtogroup Device_Peripheral_peripherals
35   * @{
36   */
37 /**
38   * @brief eSPI Virtual Wire Logic (MEC_ESPI_VW)
39   */
40 
41 typedef struct mec_espi_vw_regs {               /*!< (@ 0x400F9C00) MEC_ESPI_VW Structure                                      */
42   __IOM MEC_ESPI_VW_CTVW_Type CTVW[11];         /*!< (@ 0x00000000) eSPI Host to Device Virtual Wire 96-bit registers          */
43   __IM  uint32_t  RESERVED[95];
44   __IOM MEC_ESPI_VW_TCVW_Type TCVW[11];         /*!< (@ 0x00000200) Device to eSPI Host Wire 64-bit registers                  */
45 } MEC_ESPI_VW_Type;                             /*!< Size = 600 (0x258)                                                        */
46 
47 /** @} */ /* End of group Device_Peripheral_peripherals */
48 
49 /** @addtogroup PosMask_clusters
50   * @{
51   */
52 /* ================                                           CTVW                                            ================ */
53 /* =========================================================  HIRSS  ========================================================= */
54 #define MEC_ESPI_VW_CTVW_HIRSS_HOST_IDX_Pos (0UL)                   /*!< HOST_IDX (Bit 0)                                      */
55 #define MEC_ESPI_VW_CTVW_HIRSS_HOST_IDX_Msk (0xffUL)                /*!< HOST_IDX (Bitfield-Mask: 0xff)                        */
56 #define MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_Pos (8UL)                    /*!< RST_SRC (Bit 8)                                       */
57 #define MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_Msk (0x300UL)                /*!< RST_SRC (Bitfield-Mask: 0x03)                         */
58 #define MEC_ESPI_VW_CTVW_HIRSS_RST_STATE_Pos (12UL)                 /*!< RST_STATE (Bit 12)                                    */
59 #define MEC_ESPI_VW_CTVW_HIRSS_RST_STATE_Msk (0xf000UL)             /*!< RST_STATE (Bitfield-Mask: 0x0f)                       */
60 /* =======================================================  SRC_ISELS  ======================================================= */
61 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_Pos (0UL)           /*!< SRC0_IRQ_SEL (Bit 0)                                  */
62 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_Msk (0xfUL)         /*!< SRC0_IRQ_SEL (Bitfield-Mask: 0x0f)                    */
63 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_Pos (8UL)           /*!< SRC1_IRQ_SEL (Bit 8)                                  */
64 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_Msk (0xf00UL)       /*!< SRC1_IRQ_SEL (Bitfield-Mask: 0x0f)                    */
65 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_Pos (16UL)          /*!< SRC2_IRQ_SEL (Bit 16)                                 */
66 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_Msk (0xf0000UL)     /*!< SRC2_IRQ_SEL (Bitfield-Mask: 0x0f)                    */
67 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_Pos (24UL)          /*!< SRC3_IRQ_SEL (Bit 24)                                 */
68 #define MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_Msk (0xf000000UL)   /*!< SRC3_IRQ_SEL (Bitfield-Mask: 0x0f)                    */
69 /* ========================================================  STATES  ========================================================= */
70 #define MEC_ESPI_VW_CTVW_STATES_SRC0_Pos  (0UL)                     /*!< SRC0 (Bit 0)                                          */
71 #define MEC_ESPI_VW_CTVW_STATES_SRC0_Msk  (0x1UL)                   /*!< SRC0 (Bitfield-Mask: 0x01)                            */
72 #define MEC_ESPI_VW_CTVW_STATES_SRC1_Pos  (8UL)                     /*!< SRC1 (Bit 8)                                          */
73 #define MEC_ESPI_VW_CTVW_STATES_SRC1_Msk  (0x100UL)                 /*!< SRC1 (Bitfield-Mask: 0x01)                            */
74 #define MEC_ESPI_VW_CTVW_STATES_SRC2_Pos  (16UL)                    /*!< SRC2 (Bit 16)                                         */
75 #define MEC_ESPI_VW_CTVW_STATES_SRC2_Msk  (0x10000UL)               /*!< SRC2 (Bitfield-Mask: 0x01)                            */
76 #define MEC_ESPI_VW_CTVW_STATES_SRC3_Pos  (24UL)                    /*!< SRC3 (Bit 24)                                         */
77 #define MEC_ESPI_VW_CTVW_STATES_SRC3_Msk  (0x1000000UL)             /*!< SRC3 (Bitfield-Mask: 0x01)                            */
78 
79 /* ================                                           TCVW                                            ================ */
80 /* =========================================================  HIRCS  ========================================================= */
81 #define MEC_ESPI_VW_TCVW_HIRCS_HOST_IDX_Pos (0UL)                   /*!< HOST_IDX (Bit 0)                                      */
82 #define MEC_ESPI_VW_TCVW_HIRCS_HOST_IDX_Msk (0xffUL)                /*!< HOST_IDX (Bitfield-Mask: 0xff)                        */
83 #define MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_Pos (8UL)                    /*!< RST_SRC (Bit 8)                                       */
84 #define MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_Msk (0x300UL)                /*!< RST_SRC (Bitfield-Mask: 0x03)                         */
85 #define MEC_ESPI_VW_TCVW_HIRCS_RST_STATE_Pos (12UL)                 /*!< RST_STATE (Bit 12)                                    */
86 #define MEC_ESPI_VW_TCVW_HIRCS_RST_STATE_Msk (0xf000UL)             /*!< RST_STATE (Bitfield-Mask: 0x0f)                       */
87 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE0_Pos (16UL)                   /*!< CHANGE0 (Bit 16)                                      */
88 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE0_Msk (0x10000UL)              /*!< CHANGE0 (Bitfield-Mask: 0x01)                         */
89 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE1_Pos (17UL)                   /*!< CHANGE1 (Bit 17)                                      */
90 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE1_Msk (0x20000UL)              /*!< CHANGE1 (Bitfield-Mask: 0x01)                         */
91 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE2_Pos (18UL)                   /*!< CHANGE2 (Bit 18)                                      */
92 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE2_Msk (0x40000UL)              /*!< CHANGE2 (Bitfield-Mask: 0x01)                         */
93 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE3_Pos (19UL)                   /*!< CHANGE3 (Bit 19)                                      */
94 #define MEC_ESPI_VW_TCVW_HIRCS_CHANGE3_Msk (0x80000UL)              /*!< CHANGE3 (Bitfield-Mask: 0x01)                         */
95 /* ========================================================  STATES  ========================================================= */
96 #define MEC_ESPI_VW_TCVW_STATES_SRC0_Pos  (0UL)                     /*!< SRC0 (Bit 0)                                          */
97 #define MEC_ESPI_VW_TCVW_STATES_SRC0_Msk  (0x1UL)                   /*!< SRC0 (Bitfield-Mask: 0x01)                            */
98 #define MEC_ESPI_VW_TCVW_STATES_SRC1_Pos  (8UL)                     /*!< SRC1 (Bit 8)                                          */
99 #define MEC_ESPI_VW_TCVW_STATES_SRC1_Msk  (0x100UL)                 /*!< SRC1 (Bitfield-Mask: 0x01)                            */
100 #define MEC_ESPI_VW_TCVW_STATES_SRC2_Pos  (16UL)                    /*!< SRC2 (Bit 16)                                         */
101 #define MEC_ESPI_VW_TCVW_STATES_SRC2_Msk  (0x10000UL)               /*!< SRC2 (Bitfield-Mask: 0x01)                            */
102 #define MEC_ESPI_VW_TCVW_STATES_SRC3_Pos  (24UL)                    /*!< SRC3 (Bit 24)                                         */
103 #define MEC_ESPI_VW_TCVW_STATES_SRC3_Msk  (0x1000000UL)             /*!< SRC3 (Bitfield-Mask: 0x01)                            */
104 
105 /** @} */ /* End of group PosMask_clusters */
106 
107 /** @addtogroup EnumValue_clusters
108   * @{
109   */
110 /* =========================================================  CTVW   ========================================================= */
111 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW                                                          */
112   MEC_CTVW_IDX00                       = 0,     /*!< IDX00 : CTVW array index 0                                                */
113   MEC_CTVW_IDX01                       = 1,     /*!< IDX01 : CTVW array index 1                                                */
114   MEC_CTVW_IDX02                       = 2,     /*!< IDX02 : CTVW array index 2                                                */
115   MEC_CTVW_IDX03                       = 3,     /*!< IDX03 : CTVW array index 3                                                */
116   MEC_CTVW_IDX04                       = 4,     /*!< IDX04 : CTVW array index 4                                                */
117   MEC_CTVW_IDX05                       = 5,     /*!< IDX05 : CTVW array index 5                                                */
118   MEC_CTVW_IDX06                       = 6,     /*!< IDX06 : CTVW array index 6                                                */
119   MEC_CTVW_IDX07                       = 7,     /*!< IDX07 : CTVW array index 7                                                */
120   MEC_CTVW_IDX08                       = 8,     /*!< IDX08 : CTVW array index 8                                                */
121   MEC_CTVW_IDX09                       = 9,     /*!< IDX09 : CTVW array index 9                                                */
122   MEC_CTVW_IDX10                       = 10,    /*!< IDX10 : CTVW array index 10                                               */
123 } MEC_CTVW_Enum;
124 
125 /* =========================================================  HIRSS  ========================================================= */
126 /* ==============================================  CTVW HIRSS HOST_IDX [0..7]  =============================================== */
127 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_HIRSS_HOST_IDX                                           */
128   MEC_ESPI_VW_CTVW_HIRSS_HOST_IDX_MIN  = 2,     /*!< MIN : Minimum Host index value                                            */
129 } MEC_ESPI_VW_CTVW_HIRSS_HOST_IDX_Enum;
130 
131 /* ===============================================  CTVW HIRSS RST_SRC [8..9]  =============================================== */
132 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_HIRSS_RST_SRC                                            */
133   MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_RST_ESPI = 0,  /*!< RST_ESPI : VW group reset value loaded on rising edge of ESPI_nRESET      */
134   MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_RST_SYS = 1,   /*!< RST_SYS : VW group reset value loaded on rising edge of RESET_SYS         */
135   MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_RST_SIO = 2,   /*!< RST_SIO : VW group reset value loaded on rising edge of RESET_SIO         */
136   MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_PLTRST = 3,    /*!< PLTRST : VW group reset value loaded on rising edge of PLTRST             */
137 } MEC_ESPI_VW_CTVW_HIRSS_RST_SRC_Enum;
138 
139 /* =============================================  CTVW HIRSS RST_STATE [12..15]  ============================================= */
140 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_HIRSS_RST_STATE                                          */
141   MEC_ESPI_VW_CTVW_HIRSS_RST_STATE_ALL_ZERO = 0,/*!< ALL_ZERO : All 4 VWires reset to 0                                        */
142   MEC_ESPI_VW_CTVW_HIRSS_RST_STATE_ALL_ONE = 15,/*!< ALL_ONE : All 4 VWires reset to 1                                         */
143 } MEC_ESPI_VW_CTVW_HIRSS_RST_STATE_Enum;
144 
145 /* =======================================================  SRC_ISELS  ======================================================= */
146 /* ==========================================  CTVW SRC_ISELS SRC0_IRQ_SEL [0..3]  =========================================== */
147 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL                                   */
148   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_LEVEL_LO = 0,/*!< LEVEL_LO : VWire interrupt on low level                            */
149   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_LEVEL_HI = 1,/*!< LEVEL_HI : VWire interrupt on high level                           */
150   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_DIS = 4,/*!< DIS : VWire interrupt disabled                                          */
151   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_RISING_EDGE = 13,/*!< RISING_EDGE : VWire interrupt on rising edge                   */
152   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_FALLING_EDGE = 14,/*!< FALLING_EDGE : VWire interrupt on falling edge                */
153   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_EITHER_EDGE = 15,/*!< EITHER_EDGE : VWire interrupt on either edge                   */
154 } MEC_ESPI_VW_CTVW_SRC_ISELS_SRC0_IRQ_SEL_Enum;
155 
156 /* ==========================================  CTVW SRC_ISELS SRC1_IRQ_SEL [8..11]  ========================================== */
157 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL                                   */
158   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_LEVEL_LO = 0,/*!< LEVEL_LO : VWire interrupt on low level                            */
159   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_LEVEL_HI = 1,/*!< LEVEL_HI : VWire interrupt on high level                           */
160   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_DIS = 4,/*!< DIS : VWire interrupt disabled                                          */
161   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_RISING_EDGE = 13,/*!< RISING_EDGE : VWire interrupt on rising edge                   */
162   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_FALLING_EDGE = 14,/*!< FALLING_EDGE : VWire interrupt on falling edge                */
163   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_EITHER_EDGE = 15,/*!< EITHER_EDGE : VWire interrupt on either edge                   */
164 } MEC_ESPI_VW_CTVW_SRC_ISELS_SRC1_IRQ_SEL_Enum;
165 
166 /* =========================================  CTVW SRC_ISELS SRC2_IRQ_SEL [16..19]  ========================================== */
167 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL                                   */
168   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_LEVEL_LO = 0,/*!< LEVEL_LO : VWire interrupt on low level                            */
169   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_LEVEL_HI = 1,/*!< LEVEL_HI : VWire interrupt on high level                           */
170   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_DIS = 4,/*!< DIS : VWire interrupt disabled                                          */
171   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_RISING_EDGE = 13,/*!< RISING_EDGE : VWire interrupt on rising edge                   */
172   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_FALLING_EDGE = 14,/*!< FALLING_EDGE : VWire interrupt on falling edge                */
173   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_EITHER_EDGE = 15,/*!< EITHER_EDGE : VWire interrupt on either edge                   */
174 } MEC_ESPI_VW_CTVW_SRC_ISELS_SRC2_IRQ_SEL_Enum;
175 
176 /* =========================================  CTVW SRC_ISELS SRC3_IRQ_SEL [24..27]  ========================================== */
177 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL                                   */
178   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_LEVEL_LO = 0,/*!< LEVEL_LO : VWire interrupt on low level                            */
179   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_LEVEL_HI = 1,/*!< LEVEL_HI : VWire interrupt on high level                           */
180   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_DIS = 4,/*!< DIS : VWire interrupt disabled                                          */
181   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_RISING_EDGE = 13,/*!< RISING_EDGE : VWire interrupt on rising edge                   */
182   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_FALLING_EDGE = 14,/*!< FALLING_EDGE : VWire interrupt on falling edge                */
183   MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_EITHER_EDGE = 15,/*!< EITHER_EDGE : VWire interrupt on either edge                   */
184 } MEC_ESPI_VW_CTVW_SRC_ISELS_SRC3_IRQ_SEL_Enum;
185 
186 /* ========================================================  STATES  ========================================================= */
187 /* ================================================  CTVW STATES SRC0 [0..0]  ================================================ */
188 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_STATES_SRC0                                              */
189   MEC_ESPI_VW_CTVW_STATES_SRC0_HIGH    = 1,     /*!< HIGH : VW group Source 0 is high                                          */
190 } MEC_ESPI_VW_CTVW_STATES_SRC0_Enum;
191 
192 /* ================================================  CTVW STATES SRC1 [8..8]  ================================================ */
193 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_STATES_SRC1                                              */
194   MEC_ESPI_VW_CTVW_STATES_SRC1_HIGH    = 1,     /*!< HIGH : VW group Source 1 is high                                          */
195 } MEC_ESPI_VW_CTVW_STATES_SRC1_Enum;
196 
197 /* ===============================================  CTVW STATES SRC2 [16..16]  =============================================== */
198 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_STATES_SRC2                                              */
199   MEC_ESPI_VW_CTVW_STATES_SRC2_HIGH    = 1,     /*!< HIGH : VW group Source 2 is high                                          */
200 } MEC_ESPI_VW_CTVW_STATES_SRC2_Enum;
201 
202 /* ===============================================  CTVW STATES SRC3 [24..24]  =============================================== */
203 typedef enum {                                  /*!< MEC_ESPI_VW_CTVW_STATES_SRC3                                              */
204   MEC_ESPI_VW_CTVW_STATES_SRC3_HIGH    = 1,     /*!< HIGH : VW group Source 3 is high                                          */
205 } MEC_ESPI_VW_CTVW_STATES_SRC3_Enum;
206 
207 /* =========================================================  TCVW   ========================================================= */
208 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW                                                          */
209   MEC_TCVW_IDX00                       = 0,     /*!< IDX00 : TCVW array index 0                                                */
210   MEC_TCVW_IDX01                       = 1,     /*!< IDX01 : TCVW array index 1                                                */
211   MEC_TCVW_IDX02                       = 2,     /*!< IDX02 : TCVW array index 2                                                */
212   MEC_TCVW_IDX03                       = 3,     /*!< IDX03 : TCVW array index 3                                                */
213   MEC_TCVW_IDX04                       = 4,     /*!< IDX04 : TCVW array index 4                                                */
214   MEC_TCVW_IDX05                       = 5,     /*!< IDX05 : TCVW array index 5                                                */
215   MEC_TCVW_IDX06                       = 6,     /*!< IDX06 : TCVW array index 6                                                */
216   MEC_TCVW_IDX07                       = 7,     /*!< IDX07 : TCVW array index 7                                                */
217   MEC_TCVW_IDX08                       = 8,     /*!< IDX08 : TCVW array index 8                                                */
218   MEC_TCVW_IDX09                       = 9,     /*!< IDX09 : TCVW array index 9                                                */
219   MEC_TCVW_IDX10                       = 10,    /*!< IDX10 : TCVW array index 10                                               */
220 } MEC_TCVW_Enum;
221 
222 /* =========================================================  HIRCS  ========================================================= */
223 /* ==============================================  TCVW HIRCS HOST_IDX [0..7]  =============================================== */
224 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_HOST_IDX                                           */
225   MEC_ESPI_VW_TCVW_HIRCS_HOST_IDX_MIN_VAL = 2,  /*!< MIN_VAL : Minimum value of host index                                     */
226 } MEC_ESPI_VW_TCVW_HIRCS_HOST_IDX_Enum;
227 
228 /* ===============================================  TCVW HIRCS RST_SRC [8..9]  =============================================== */
229 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_RST_SRC                                            */
230   MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_RST_ESPI = 0,  /*!< RST_ESPI : VW group reset value loaded on rising edge of ESPI_nRESET      */
231   MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_RST_SYS = 1,   /*!< RST_SYS : VW group reset value loaded on rising edge of RESET_SYS         */
232   MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_RST_SIO = 2,   /*!< RST_SIO : VW group reset value loaded on rising edge of RESET_SIO         */
233   MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_PLTRST = 3,    /*!< PLTRST : VW group reset value loaded on rising edge of PLTRST             */
234 } MEC_ESPI_VW_TCVW_HIRCS_RST_SRC_Enum;
235 
236 /* =============================================  TCVW HIRCS RST_STATE [12..15]  ============================================= */
237 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_RST_STATE                                          */
238   MEC_ESPI_VW_TCVW_HIRCS_RST_STATE_ALL_ZERO = 0,/*!< ALL_ZERO : All 4 VWires reset to 0                                        */
239   MEC_ESPI_VW_TCVW_HIRCS_RST_STATE_ALL_ONE = 15,/*!< ALL_ONE : All 4 VWires reset to 1                                         */
240 } MEC_ESPI_VW_TCVW_HIRCS_RST_STATE_Enum;
241 
242 /* ==============================================  TCVW HIRCS CHANGE0 [16..16]  ============================================== */
243 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_CHANGE0                                            */
244   MEC_ESPI_VW_TCVW_HIRCS_CHANGE0_ACTIVE = 1,    /*!< ACTIVE : VW group Source 0 changed state                                  */
245 } MEC_ESPI_VW_TCVW_HIRCS_CHANGE0_Enum;
246 
247 /* ==============================================  TCVW HIRCS CHANGE1 [17..17]  ============================================== */
248 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_CHANGE1                                            */
249   MEC_ESPI_VW_TCVW_HIRCS_CHANGE1_ACTIVE = 1,    /*!< ACTIVE : VW group Source 1 changed state                                  */
250 } MEC_ESPI_VW_TCVW_HIRCS_CHANGE1_Enum;
251 
252 /* ==============================================  TCVW HIRCS CHANGE2 [18..18]  ============================================== */
253 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_CHANGE2                                            */
254   MEC_ESPI_VW_TCVW_HIRCS_CHANGE2_ACTIVE = 1,    /*!< ACTIVE : VW group Source 2 changed state                                  */
255 } MEC_ESPI_VW_TCVW_HIRCS_CHANGE2_Enum;
256 
257 /* ==============================================  TCVW HIRCS CHANGE3 [19..19]  ============================================== */
258 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_HIRCS_CHANGE3                                            */
259   MEC_ESPI_VW_TCVW_HIRCS_CHANGE3_ACTIVE = 1,    /*!< ACTIVE : VW group Source 3 changed state                                  */
260 } MEC_ESPI_VW_TCVW_HIRCS_CHANGE3_Enum;
261 
262 /* ========================================================  STATES  ========================================================= */
263 /* ================================================  TCVW STATES SRC0 [0..0]  ================================================ */
264 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_STATES_SRC0                                              */
265   MEC_ESPI_VW_TCVW_STATES_SRC0_HIGH    = 1,     /*!< HIGH : VW group Source 0 is one                                           */
266 } MEC_ESPI_VW_TCVW_STATES_SRC0_Enum;
267 
268 /* ================================================  TCVW STATES SRC1 [8..8]  ================================================ */
269 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_STATES_SRC1                                              */
270   MEC_ESPI_VW_TCVW_STATES_SRC1_HIGH    = 1,     /*!< HIGH : VW group Source 1 is one                                           */
271 } MEC_ESPI_VW_TCVW_STATES_SRC1_Enum;
272 
273 /* ===============================================  TCVW STATES SRC2 [16..16]  =============================================== */
274 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_STATES_SRC2                                              */
275   MEC_ESPI_VW_TCVW_STATES_SRC2_HIGH    = 1,     /*!< HIGH : VW group Source 2 is one                                           */
276 } MEC_ESPI_VW_TCVW_STATES_SRC2_Enum;
277 
278 /* ===============================================  TCVW STATES SRC3 [24..24]  =============================================== */
279 typedef enum {                                  /*!< MEC_ESPI_VW_TCVW_STATES_SRC3                                              */
280   MEC_ESPI_VW_TCVW_STATES_SRC3_HIGH    = 1,     /*!< HIGH : VW group Source 3 is one                                           */
281 } MEC_ESPI_VW_TCVW_STATES_SRC3_Enum;
282 
283 /** @} */ /* End of group EnumValue_clusters */
284 
285 #endif /* _MEC5_ESPI_VW_V1_4_H */
286