From: Julien Grall <julien.grall@linaro.org>
To: xen-devel@lists.xen.org
Cc: sstabellini@kernel.org, volodymyr_babchuk@epam.com,
andre.przywara@linaro.org, Julien Grall <julien.grall@linaro.org>
Subject: [PATCH v2 1/3] xen/arm: vpsci: Removing dummy MIGRATE and MIGRATE_INFO_UP_CPU
Date: Fri, 2 Feb 2018 11:41:48 +0000 [thread overview]
Message-ID: <20180202114150.23817-2-julien.grall@linaro.org> (raw)
In-Reply-To: <20180202114150.23817-1-julien.grall@linaro.org>
The PSCI call MIGRATE and MIGRATE_INFO_UP_CPU are optional and
implemented as just returning PSCI_NOT_SUPPORTED (aka UNKNOWN_FUNCTION
for SMCCC).
The new SMCCC framework is able to deal with unimplemented function and
return the proper error code. So remove the implementations for both
function.
Signed-off-by: Julien Grall <julien.grall@linaro.org>
---
Changes in v2:
- Remove define in psci.h
- Update SSSC_SMCCC_FUNCTION_COUNT
---
xen/arch/arm/vpsci.c | 10 ----------
xen/arch/arm/vsmc.c | 16 +---------------
xen/include/asm-arm/perfc_defn.h | 2 --
xen/include/asm-arm/psci.h | 4 ----
4 files changed, 1 insertion(+), 31 deletions(-)
diff --git a/xen/arch/arm/vpsci.c b/xen/arch/arm/vpsci.c
index cd724904ef..979d32ed6d 100644
--- a/xen/arch/arm/vpsci.c
+++ b/xen/arch/arm/vpsci.c
@@ -172,21 +172,11 @@ int32_t do_psci_0_2_affinity_info(register_t target_affinity,
return PSCI_0_2_AFFINITY_LEVEL_OFF;
}
-int32_t do_psci_0_2_migrate(uint32_t target_cpu)
-{
- return PSCI_NOT_SUPPORTED;
-}
-
uint32_t do_psci_0_2_migrate_info_type(void)
{
return PSCI_0_2_TOS_MP_OR_NOT_PRESENT;
}
-register_t do_psci_0_2_migrate_info_up_cpu(void)
-{
- return PSCI_NOT_SUPPORTED;
-}
-
void do_psci_0_2_system_off( void )
{
struct domain *d = current->domain;
diff --git a/xen/arch/arm/vsmc.c b/xen/arch/arm/vsmc.c
index c9064de37a..997f2e0ebc 100644
--- a/xen/arch/arm/vsmc.c
+++ b/xen/arch/arm/vsmc.c
@@ -28,7 +28,7 @@
#define XEN_SMCCC_FUNCTION_COUNT 3
/* Number of functions currently supported by Standard Service Service Calls. */
-#define SSSC_SMCCC_FUNCTION_COUNT 13
+#define SSSC_SMCCC_FUNCTION_COUNT 11
static bool fill_uid(struct cpu_user_regs *regs, xen_uuid_t uuid)
{
@@ -157,11 +157,6 @@ static bool handle_sssc(struct cpu_user_regs *regs)
PSCI_SET_RESULT(regs, do_psci_0_2_migrate_info_type());
return true;
- case PSCI_0_2_FN_MIGRATE_INFO_UP_CPU:
- perfc_incr(vpsci_migrate_info_up_cpu);
- PSCI_SET_RESULT(regs, do_psci_0_2_migrate_info_up_cpu());
- return true;
-
case PSCI_0_2_FN_SYSTEM_OFF:
perfc_incr(vpsci_system_off);
do_psci_0_2_system_off();
@@ -206,15 +201,6 @@ static bool handle_sssc(struct cpu_user_regs *regs)
return true;
}
- case PSCI_0_2_FN_MIGRATE:
- {
- uint32_t tcpu = PSCI_ARG32(regs, 1);
-
- perfc_incr(vpsci_cpu_migrate);
- PSCI_SET_RESULT(regs, do_psci_0_2_migrate(tcpu));
- return true;
- }
-
case ARM_SMCCC_FUNC_CALL_COUNT:
return fill_function_call_count(regs, SSSC_SMCCC_FUNCTION_COUNT);
diff --git a/xen/include/asm-arm/perfc_defn.h b/xen/include/asm-arm/perfc_defn.h
index 5f957ee6ec..a7acb7d21c 100644
--- a/xen/include/asm-arm/perfc_defn.h
+++ b/xen/include/asm-arm/perfc_defn.h
@@ -27,12 +27,10 @@ PERFCOUNTER(vpsci_cpu_on, "vpsci: cpu_on")
PERFCOUNTER(vpsci_cpu_off, "vpsci: cpu_off")
PERFCOUNTER(vpsci_version, "vpsci: version")
PERFCOUNTER(vpsci_migrate_info_type, "vpsci: migrate_info_type")
-PERFCOUNTER(vpsci_migrate_info_up_cpu, "vpsci: migrate_info_up_cpu")
PERFCOUNTER(vpsci_system_off, "vpsci: system_off")
PERFCOUNTER(vpsci_system_reset, "vpsci: system_reset")
PERFCOUNTER(vpsci_cpu_suspend, "vpsci: cpu_suspend")
PERFCOUNTER(vpsci_cpu_affinity_info, "vpsci: cpu_affinity_info")
-PERFCOUNTER(vpsci_cpu_migrate, "vpsci: cpu_migrate")
PERFCOUNTER(vgicd_reads, "vgicd: read")
PERFCOUNTER(vgicd_writes, "vgicd: write")
diff --git a/xen/include/asm-arm/psci.h b/xen/include/asm-arm/psci.h
index 635ea5dae4..32c1f81f21 100644
--- a/xen/include/asm-arm/psci.h
+++ b/xen/include/asm-arm/psci.h
@@ -37,9 +37,7 @@ int32_t do_psci_0_2_cpu_on(register_t target_cpu, register_t entry_point,
register_t context_id);
int32_t do_psci_0_2_affinity_info(register_t target_affinity,
uint32_t lowest_affinity_level);
-int32_t do_psci_0_2_migrate(uint32_t target_cpu);
uint32_t do_psci_0_2_migrate_info_type(void);
-register_t do_psci_0_2_migrate_info_up_cpu(void);
void do_psci_0_2_system_off(void);
void do_psci_0_2_system_reset(void);
@@ -57,9 +55,7 @@ void do_psci_0_2_system_reset(void);
#define PSCI_0_2_FN_CPU_OFF 2
#define PSCI_0_2_FN_CPU_ON 3
#define PSCI_0_2_FN_AFFINITY_INFO 4
-#define PSCI_0_2_FN_MIGRATE 5
#define PSCI_0_2_FN_MIGRATE_INFO_TYPE 6
-#define PSCI_0_2_FN_MIGRATE_INFO_UP_CPU 7
#define PSCI_0_2_FN_SYSTEM_OFF 8
#define PSCI_0_2_FN_SYSTEM_RESET 9
--
2.11.0
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
next prev parent reply other threads:[~2018-02-02 11:41 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-02 11:41 [PATCH v2 0/3] xen/arm: SMCCC fixes and PSCI clean-up Julien Grall
2018-02-02 11:41 ` Julien Grall [this message]
2018-02-02 13:44 ` [PATCH v2 1/3] xen/arm: vpsci: Removing dummy MIGRATE and MIGRATE_INFO_UP_CPU Volodymyr Babchuk
2018-02-02 11:41 ` [PATCH v2 2/3] xen/arm: vsmc: Don't implement function ID that doesn't exist Julien Grall
2018-02-02 13:46 ` Volodymyr Babchuk
2018-02-06 14:53 ` Julien Grall
2018-02-06 15:15 ` Volodymyr Babchuk
2018-02-06 15:29 ` Julien Grall
2018-02-02 11:41 ` [PATCH v2 3/3] xen/arm: vpsci: Move PSCI function dispatching from vsmc.c to vpsci.c Julien Grall
2018-02-02 14:23 ` Volodymyr Babchuk
2018-02-02 14:31 ` Julien Grall
2018-02-02 15:40 ` Volodymyr Babchuk
2018-02-06 14:45 ` Julien Grall
2018-02-06 15:28 ` Volodymyr Babchuk
2018-02-06 15:39 ` Julien Grall
2018-02-06 15:50 ` Volodymyr Babchuk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180202114150.23817-2-julien.grall@linaro.org \
--to=julien.grall@linaro.org \
--cc=andre.przywara@linaro.org \
--cc=sstabellini@kernel.org \
--cc=volodymyr_babchuk@epam.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).