]> xenbits.xensource.com Git - xenclient/toolstack.git/commitdiff
add binding to get the acpi S_STATE of a domain
authorVincent Hanquez <vincent.hanquez@eu.citrix.com>
Wed, 10 Jun 2009 09:07:08 +0000 (10:07 +0100)
committerVincent Hanquez <vincent.hanquez@eu.citrix.com>
Wed, 10 Jun 2009 09:07:08 +0000 (10:07 +0100)
libs/xc/xc.h
libs/xc/xc.ml
libs/xc/xc.mli
libs/xc/xc_lib.c
libs/xc/xc_stubs.c

index b19ca08d997a07565796f5b9433859729a17da93..2ed702090607158d1d3295f560d3256be012f0ef 100644 (file)
@@ -170,6 +170,7 @@ int xc_domain_send_s3resume(int handle, unsigned int domid);
 int xc_domain_set_vpt_align(int handle, unsigned int domid, int vpt_align);
 int xc_domain_set_hpet(int handle, unsigned int domid, int hpet);
 int xc_domain_set_timer_mode(int handle, unsigned int domid, int mode);
+int xc_domain_get_acpi_s_state(int handle, unsigned int domid);
 
 #if XEN_SYSCTL_INTERFACE_VERSION >= 6
 #define SAFEDIV(a, b)                                  (((b) >= 0) ? (a) / (b) : (a))
index b7b21730545f273021cbf581ea7b12c292c39b54..4d93d29e7090d3ca505d44a3e8ce282184fdbce8 100644 (file)
@@ -231,6 +231,7 @@ external domain_set_hpet: handle -> domid -> int -> unit = "stub_xc_domain_set_h
 external domain_set_vpt_align: handle -> domid -> int -> unit = "stub_xc_domain_set_vpt_align"
 
 external domain_send_s3resume: handle -> domid -> unit = "stub_xc_domain_send_s3resume"
+external domain_get_acpi_s_state: handle -> domid -> int = "stub_xc_domain_get_acpi_s_state"
 
 (** check if some hvm domain got pv driver or not *)
 external hvm_check_pvdriver: handle -> domid -> bool
index 75880a1e16bf116d6c78f00e2908db629e68eed2..cbb3c839b8016bcf50b181dd4687b604f48ed6fb 100644 (file)
@@ -152,6 +152,7 @@ external domain_set_vpt_align: handle -> domid -> int -> unit = "stub_xc_domain_
 
 external domain_send_s3resume: handle -> domid -> unit
   = "stub_xc_domain_send_s3resume"
+external domain_get_acpi_s_state: handle -> domid -> int = "stub_xc_domain_get_acpi_s_state"
 
 external hvm_check_pvdriver : handle -> domid -> bool
   = "stub_xc_hvm_check_pvdriver"
index e3d3adb62dbe91f02f1cf314001c1d7f3a433fa5..8c3350891a3c16052496cca084d99720480c8c8a 100644 (file)
@@ -1489,3 +1489,10 @@ int xc_domain_set_vpt_align(int handle, unsigned int domid, int vpt_align)
 {
        return xc_set_hvm_param(handle, domid, HVM_PARAM_HPET_ENABLED, (unsigned long) vpt_align);
 }
+
+int xc_domain_get_acpi_s_state(int handle, unsigned int domid)
+{
+       unsigned long v;
+       xc_get_hvm_param(handle, domid, HVM_PARAM_ACPI_S_STATE, &v);
+       return v;
+}
index a297b791206425d9e84e453c01e0c7f2932b5f27..f86ac7deda25e6f1bdc9323b0b93b08efa8ef4ff 100644 (file)
@@ -1139,6 +1139,14 @@ CAMLprim value stub_xc_domain_send_s3resume(value handle, value domid)
        CAMLreturn(Val_unit);
 }
 
+CAMLprim value stub_xc_domain_get_acpi_s_state(value handle, value domid)
+{
+       CAMLparam2(handle, domid);
+       int state;
+       state = xc_domain_get_acpi_s_state(_H(handle), _D(domid));
+       CAMLreturn(Val_int(state));
+}
+
 /*
  * Local variables:
  *  indent-tabs-mode: t