clear-pkgs-linux-iot-lts2018/1192-acrn-vhm-Remove-the-un...

110 lines
4.0 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Zhao Yakui <yakui.zhao@intel.com>
Date: Fri, 12 Apr 2019 14:54:48 +0800
Subject: [PATCH] acrn/vhm: Remove the unnecessary ioctl of
IC_PM_SET_SSTATE_DATA
Now the acrn-dm won't use the IC_PM_SET_SSTATE_DAT ioctl to pass the
acpi_power_state_data any more.
Tracked-On: projectacrn/acrn-hypervisor#1318
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Reviewed-by: Yin Fengwei <fengwei.yin@intel.com>
---
drivers/char/vhm/vhm_dev.c | 13 -------------
drivers/vhm/vhm_hypercall.c | 5 -----
include/linux/vhm/acrn_common.h | 11 -----------
include/linux/vhm/vhm_hypercall.h | 1 -
include/linux/vhm/vhm_ioctl_defs.h | 1 -
5 files changed, 31 deletions(-)
diff --git a/drivers/char/vhm/vhm_dev.c b/drivers/char/vhm/vhm_dev.c
index 3c79358a2ece..2c6437439d1c 100644
--- a/drivers/char/vhm/vhm_dev.c
+++ b/drivers/char/vhm/vhm_dev.c
@@ -174,19 +174,6 @@ static long vhm_dev_ioctl(struct file *filep,
sizeof(struct api_version)))
return -EFAULT;
- return 0;
- } else if (ioctl_num == IC_PM_SET_SSTATE_DATA) {
- struct acpi_sstate_data host_sstate_data;
-
- if (copy_from_user(&host_sstate_data,
- (void *)ioctl_param, sizeof(host_sstate_data)))
- return -EFAULT;
-
- ret = hcall_set_sstate_data(virt_to_phys(&host_sstate_data));
- if (ret < 0) {
- pr_err("vhm: failed to set host Sstate data!");
- return -EFAULT;
- }
return 0;
} else if (ioctl_num == IC_GET_PLATFORM_INFO) {
struct hc_platform_info platform_info;
diff --git a/drivers/vhm/vhm_hypercall.c b/drivers/vhm/vhm_hypercall.c
index 8cfe5917fb28..cd96eace28bf 100644
--- a/drivers/vhm/vhm_hypercall.c
+++ b/drivers/vhm/vhm_hypercall.c
@@ -109,11 +109,6 @@ inline long hcall_get_hw_info(unsigned long hw_info)
}
EXPORT_SYMBOL(hcall_get_hw_info);
-inline long hcall_set_sstate_data(unsigned long sx_data_addr)
-{
- return acrn_hypercall1(HC_PM_SET_SSTATE_DATA, sx_data_addr);
-}
-
inline long hcall_get_cpu_state(unsigned long cmd, unsigned long state_pa)
{
return acrn_hypercall2(HC_PM_GET_CPU_STATE, cmd, state_pa);
diff --git a/include/linux/vhm/acrn_common.h b/include/linux/vhm/acrn_common.h
index d8c601cffb72..9511f77c5b15 100644
--- a/include/linux/vhm/acrn_common.h
+++ b/include/linux/vhm/acrn_common.h
@@ -511,17 +511,6 @@ struct acpi_sstate_pkg {
uint16_t reserved;
} __attribute__((aligned(8)));
-struct acpi_sstate_data {
- struct acrn_generic_address pm1a_evt;
- struct acrn_generic_address pm1b_evt;
- struct acrn_generic_address pm1a_cnt;
- struct acrn_generic_address pm1b_cnt;
- struct acpi_sstate_pkg s3_pkg;
- struct acpi_sstate_pkg s5_pkg;
- uint32_t *wake_vector_32;
- uint64_t *wake_vector_64;
-}__attribute__((aligned(8)));
-
/**
* @brief Info PM command from DM/VHM.
*
diff --git a/include/linux/vhm/vhm_hypercall.h b/include/linux/vhm/vhm_hypercall.h
index 67177f7f8659..fe449c37a855 100644
--- a/include/linux/vhm/vhm_hypercall.h
+++ b/include/linux/vhm/vhm_hypercall.h
@@ -150,7 +150,6 @@ inline long hcall_query_vm_state(unsigned long vmid);
inline long hcall_setup_sbuf(unsigned long sbuf_head);
inline long hcall_setup_hv_npk_log(unsigned long hv_npk_log);
inline long hcall_get_hw_info(unsigned long hw_info);
-inline long hcall_set_sstate_data(unsigned long sx_data_addr);
inline long hcall_get_cpu_state(unsigned long cmd, unsigned long state_pa);
inline long hcall_set_memory_regions(unsigned long pa_regions);
inline long hcall_write_protect_page(unsigned long vmid,
diff --git a/include/linux/vhm/vhm_ioctl_defs.h b/include/linux/vhm/vhm_ioctl_defs.h
index 942f959cd9f6..edd363c59cfb 100644
--- a/include/linux/vhm/vhm_ioctl_defs.h
+++ b/include/linux/vhm/vhm_ioctl_defs.h
@@ -111,7 +111,6 @@
/* Power management */
#define IC_ID_PM_BASE 0x60UL
#define IC_PM_GET_CPU_STATE _IC_ID(IC_ID, IC_ID_PM_BASE + 0x00)
-#define IC_PM_SET_SSTATE_DATA _IC_ID(IC_ID, IC_ID_PM_BASE + 0x01)
/* VHM eventfd */
#define IC_ID_EVENT_BASE 0x70UL
--
https://clearlinux.org