You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef _IPXE_XENVER_H
  2. #define _IPXE_VENVER_H
  3. /** @file
  4. *
  5. * Xen version
  6. *
  7. */
  8. FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
  9. #include <ipxe/xen.h>
  10. #include <xen/version.h>
  11. /**
  12. * Get Xen version
  13. *
  14. * @v xen Xen hypervisor
  15. * @ret version Version (major.minor: 16 bits each)
  16. */
  17. static inline __attribute__ (( always_inline )) uint32
  18. xenver_version ( struct xen_hypervisor *xen ) {
  19. return xen_hypercall_2 ( xen, __HYPERVISOR_xen_version,
  20. XENVER_version, 0 );
  21. }
  22. /**
  23. * Get Xen extra version string
  24. *
  25. * @v xen Xen hypervisor
  26. * @v extraversion Extra version string to fill in
  27. * @ret xenrc Xen status code
  28. */
  29. static inline __attribute__ (( always_inline )) int
  30. xenver_extraversion ( struct xen_hypervisor *xen,
  31. xen_extraversion_t *extraversion ) {
  32. return xen_hypercall_2 ( xen, __HYPERVISOR_xen_version,
  33. XENVER_extraversion,
  34. virt_to_phys ( extraversion ) );
  35. }
  36. #endif /* _IPXE_XENVER_H */