hv_call_xm.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * This file contains the "hypervisor call" interface which is used to
  3. * drive the hypervisor from SLIC.
  4. */
  5. #ifndef _ASM_POWERPC_ISERIES_HV_CALL_XM_H
  6. #define _ASM_POWERPC_ISERIES_HV_CALL_XM_H
  7. #include <asm/iseries/hv_call_sc.h>
  8. #include <asm/iseries/hv_types.h>
  9. #define HvCallXmGetTceTableParms HvCallXm + 0
  10. #define HvCallXmTestBus HvCallXm + 1
  11. #define HvCallXmConnectBusUnit HvCallXm + 2
  12. #define HvCallXmLoadTod HvCallXm + 8
  13. #define HvCallXmTestBusUnit HvCallXm + 9
  14. #define HvCallXmSetTce HvCallXm + 11
  15. #define HvCallXmSetTces HvCallXm + 13
  16. static inline void HvCallXm_getTceTableParms(u64 cb)
  17. {
  18. HvCall1(HvCallXmGetTceTableParms, cb);
  19. }
  20. static inline u64 HvCallXm_setTce(u64 tceTableToken, u64 tceOffset, u64 tce)
  21. {
  22. return HvCall3(HvCallXmSetTce, tceTableToken, tceOffset, tce);
  23. }
  24. static inline u64 HvCallXm_setTces(u64 tceTableToken, u64 tceOffset,
  25. u64 numTces, u64 tce1, u64 tce2, u64 tce3, u64 tce4)
  26. {
  27. return HvCall7(HvCallXmSetTces, tceTableToken, tceOffset, numTces,
  28. tce1, tce2, tce3, tce4);
  29. }
  30. static inline u64 HvCallXm_testBus(u16 busNumber)
  31. {
  32. return HvCall1(HvCallXmTestBus, busNumber);
  33. }
  34. static inline u64 HvCallXm_testBusUnit(u16 busNumber, u8 subBusNumber,
  35. u8 deviceId)
  36. {
  37. return HvCall2(HvCallXmTestBusUnit, busNumber,
  38. (subBusNumber << 8) | deviceId);
  39. }
  40. static inline u64 HvCallXm_connectBusUnit(u16 busNumber, u8 subBusNumber,
  41. u8 deviceId, u64 interruptToken)
  42. {
  43. return HvCall5(HvCallXmConnectBusUnit, busNumber,
  44. (subBusNumber << 8) | deviceId, interruptToken, 0,
  45. 0 /* HvLpConfig::mapDsaToQueueIndex(HvLpDSA(busNumber, xBoard, xCard)) */);
  46. }
  47. static inline u64 HvCallXm_loadTod(void)
  48. {
  49. return HvCall0(HvCallXmLoadTod);
  50. }
  51. #endif /* _ASM_POWERPC_ISERIES_HV_CALL_XM_H */