hvcallpci.h
来自「多年来」· C头文件 代码 · 共 674 行 · 第 1/2 页
H
674 行
struct HvCallPci_DsaAddr dsa; struct HvCallPci_LoadReturn retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; HvCall3Ret16(HvCallPciBarLoad64, &retVal, *(__u64 *)&dsa, offsetParm, 0); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); *valueParm = retVal.value; return retVal.rc;}//============================================================================static inline __u64 HvCallPci_barStore8(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u8 barNumberParm, __u64 offsetParm, __u8 valueParm){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; retVal = HvCall4(HvCallPciBarStore8, *(__u64 *)&dsa, offsetParm, valueParm, 0); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_barStore16(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u8 barNumberParm, __u64 offsetParm, __u16 valueParm){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; retVal = HvCall4(HvCallPciBarStore16, *(__u64 *)&dsa, offsetParm, valueParm, 0); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_barStore32(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u8 barNumberParm, __u64 offsetParm, __u32 valueParm){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; retVal = HvCall4(HvCallPciBarStore32, *(__u64 *)&dsa, offsetParm, valueParm, 0); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_barStore64(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u8 barNumberParm, __u64 offsetParm, __u64 valueParm){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; retVal = HvCall4(HvCallPciBarStore64, *(__u64 *)&dsa, offsetParm, valueParm, 0); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_eoi(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm){ struct HvCallPci_DsaAddr dsa; struct HvCallPci_LoadReturn retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; HvCall1Ret16(HvCallPciEoi, &retVal, *(u64*)&dsa); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal.rc;}//============================================================================static inline __u64 HvCallPci_getBarParms(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u8 barNumberParm, __u64 parms, __u32 sizeofParms){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; dsa.barNumber = barNumberParm; retVal = HvCall3(HvCallPciGetBarParms, *(u64*)&dsa, parms, sizeofParms); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_maskFisr(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 fisrMask){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall2(HvCallPciMaskFisr, *(u64*)&dsa, fisrMask); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_unmaskFisr(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 fisrMask){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall2(HvCallPciUnmaskFisr, *(u64*)&dsa, fisrMask); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_setSlotReset(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 onNotOff){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall2(HvCallPciSetSlotReset, *(u64*)&dsa, onNotOff); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_getDeviceInfo(__u16 busNumberParm, __u8 subBusParm, __u8 deviceNumberParm, __u64 parms, __u32 sizeofParms){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceNumberParm << 4; retVal = HvCall3(HvCallPciGetDeviceInfo, *(u64*)&dsa, parms, sizeofParms); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_maskInterrupts(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 interruptMask){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall2(HvCallPciMaskInterrupts, *(u64*)&dsa, interruptMask); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_unmaskInterrupts(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 interruptMask){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall2(HvCallPciUnmaskInterrupts, *(u64*)&dsa, interruptMask); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline __u64 HvCallPci_getBusUnitInfo(__u16 busNumberParm, __u8 subBusParm, __u8 deviceIdParm, __u64 parms, __u32 sizeofParms){ struct HvCallPci_DsaAddr dsa; __u64 retVal; *((u64*)&dsa) = 0; dsa.busNumber = busNumberParm; dsa.subBusNumber = subBusParm; dsa.deviceId = deviceIdParm; retVal = HvCall3(HvCallPciGetBusUnitInfo, *(u64*)&dsa, parms, sizeofParms); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); return retVal;}//============================================================================static inline int HvCallPci_getBusVpd(__u16 busNumParm, __u64 destParm, __u16 sizeParm){ int xRetSize; __u64 xRc = HvCall4(HvCallPciGetCardVpd, busNumParm, destParm, sizeParm, HvCallPci_BusVpd); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); if (xRc == -1) xRetSize = -1; else xRetSize = xRc & 0xFFFF; return xRetSize;}//============================================================================static inline int HvCallPci_getBusAdapterVpd(__u16 busNumParm, __u64 destParm, __u16 sizeParm){ int xRetSize; __u64 xRc = HvCall4(HvCallPciGetCardVpd, busNumParm, destParm, sizeParm, HvCallPci_BusAdapterVpd); // getPaca()->adjustHmtForNoOfSpinLocksHeld(); if (xRc == -1) xRetSize = -1; else xRetSize = xRc & 0xFFFF; return xRetSize;}//============================================================================#endif /* _HVCALLPCI_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?