- Timestamp:
- Dec 13, 2016 2:41:04 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/DevHDA.cpp
r64822 r64849 208 208 #define HDA_INTCTL_S7_SHIFT 7 209 209 #define INTCTL_SX(pThis, X) (HDA_REG_FLAG_VALUE((pThis), INTCTL, S##X)) 210 #define HDA_INTCTL_GIE_MASK RT_BIT(31) /* Global Interrupt Enable (3.3.14). */ 210 211 211 212 #define HDA_REG_INTSTS 12 /* 0x24 */ … … 2176 2177 RT_NOREF(iReg); 2177 2178 2179 int rc; 2180 2178 2181 HDA_REG(pThis, INTCTL) = u32Value; 2179 2182 2180 return hdaProcessInterrupt(pThis); 2183 /* Global Interrupt Enable (GIE) set? */ 2184 if (u32Value & HDA_INTCTL_GIE_MASK) 2185 { 2186 rc = hdaProcessInterrupt(pThis); 2187 } 2188 else 2189 { 2190 /** @todo Clear INTSTS's individual stream status bits as well? */ 2191 2192 /* Make sure to lower interrupt line, as Global Interrupt Enable (GIE) is disabled. */ 2193 PDMDevHlpPCISetIrq(pThis->CTX_SUFF(pDevIns), 0, 0 /* iLevel */); 2194 2195 rc = VINF_SUCCESS; 2196 } 2197 2198 return rc; 2181 2199 } 2182 2200
Note:
See TracChangeset
for help on using the changeset viewer.