* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-25 22:54 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: galak, sboyd, linux-arm-msm, agross; +Cc: linux-arm-kernel, linux-pm, Lina Iyer
Hi,
These patches used to be part of my cpuidle patchset, think these can go in
independently.
The patches do the following -
1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
2. Add an API to set up the warmboot address. Consolidate the warm boot flags
into the implementation file
Thanks,
Lina
Lina Iyer (2):
ARM: qcom: Add SCM warmboot flags for quad core targets.
qcom: scm: Add scm_set_warm_boot_addr function
arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
arch/arm/mach-qcom/scm-boot.h | 5 +++--
2 files changed, 41 insertions(+), 2 deletions(-)
--
2.1.0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-25 22:54 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
These patches used to be part of my cpuidle patchset, think these can go in
independently.
The patches do the following -
1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
2. Add an API to set up the warmboot address. Consolidate the warm boot flags
into the implementation file
Thanks,
Lina
Lina Iyer (2):
ARM: qcom: Add SCM warmboot flags for quad core targets.
qcom: scm: Add scm_set_warm_boot_addr function
arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
arch/arm/mach-qcom/scm-boot.h | 5 +++--
2 files changed, 41 insertions(+), 2 deletions(-)
--
2.1.0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 1/2] ARM: qcom: Add SCM warmboot flags for quad core targets.
2015-02-25 22:54 ` Lina Iyer
@ 2015-02-25 22:54 ` Lina Iyer
-1 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: galak, sboyd, linux-arm-msm, agross; +Cc: linux-arm-kernel, linux-pm, Lina Iyer
Quad core targets like APQ8074, APQ8064, APQ8084 need SCM support set up
warm boot addresses in the Secure Monitor. Extend the SCM flags to
support warmboot addresses for secondary cores.
Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
---
arch/arm/mach-qcom/scm-boot.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
index 6aabb24..02b445c 100644
--- a/arch/arm/mach-qcom/scm-boot.h
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -18,6 +18,8 @@
#define SCM_FLAG_COLDBOOT_CPU3 0x20
#define SCM_FLAG_WARMBOOT_CPU0 0x04
#define SCM_FLAG_WARMBOOT_CPU1 0x02
+#define SCM_FLAG_WARMBOOT_CPU2 0x10
+#define SCM_FLAG_WARMBOOT_CPU3 0x40
int scm_set_boot_addr(phys_addr_t addr, int flags);
--
2.1.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 1/2] ARM: qcom: Add SCM warmboot flags for quad core targets.
@ 2015-02-25 22:54 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: linux-arm-kernel
Quad core targets like APQ8074, APQ8064, APQ8084 need SCM support set up
warm boot addresses in the Secure Monitor. Extend the SCM flags to
support warmboot addresses for secondary cores.
Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
---
arch/arm/mach-qcom/scm-boot.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
index 6aabb24..02b445c 100644
--- a/arch/arm/mach-qcom/scm-boot.h
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -18,6 +18,8 @@
#define SCM_FLAG_COLDBOOT_CPU3 0x20
#define SCM_FLAG_WARMBOOT_CPU0 0x04
#define SCM_FLAG_WARMBOOT_CPU1 0x02
+#define SCM_FLAG_WARMBOOT_CPU2 0x10
+#define SCM_FLAG_WARMBOOT_CPU3 0x40
int scm_set_boot_addr(phys_addr_t addr, int flags);
--
2.1.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
2015-02-25 22:54 ` Lina Iyer
@ 2015-02-25 22:54 ` Lina Iyer
-1 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: galak, sboyd, linux-arm-msm, agross; +Cc: linux-arm-kernel, linux-pm, Lina Iyer
A core can be powered down for cpuidle or when it is hotplugged of. In
either case, the warmboot return address would be different. Allow
setting the warmboot address for a specific cpu, optimize and write to
the firmware if the address is different than the previously set
address.
Also we do not need to export the warmboot flags. Move them into the
implementation file.
Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
---
arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
arch/arm/mach-qcom/scm-boot.h | 7 +++----
2 files changed, 41 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
index 45cee3e..cb73134 100644
--- a/arch/arm/mach-qcom/scm-boot.c
+++ b/arch/arm/mach-qcom/scm-boot.c
@@ -1,4 +1,5 @@
/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2014, Linaro Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -21,6 +22,23 @@
#include "scm.h"
#include "scm-boot.h"
+#define SCM_FLAG_WARMBOOT_CPU0 0x04
+#define SCM_FLAG_WARMBOOT_CPU1 0x02
+#define SCM_FLAG_WARMBOOT_CPU2 0x10
+#define SCM_FLAG_WARMBOOT_CPU3 0x40
+
+struct scm_warmboot {
+ int flag;
+ void *entry;
+};
+
+static struct scm_warmboot scm_flags[] = {
+ { .flag = SCM_FLAG_WARMBOOT_CPU0 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU1 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU2 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU3 },
+};
+
/*
* Set the cold/warm boot address for one of the CPU cores.
*/
@@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
phys_addr_t addr;
} cmd;
+ might_sleep();
+
cmd.addr = addr;
cmd.flags = flags;
return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
&cmd, sizeof(cmd), NULL, 0);
}
EXPORT_SYMBOL(scm_set_boot_addr);
+
+int scm_set_warm_boot_addr(void *entry, int cpu)
+{
+ int ret;
+
+ /*
+ * Reassign only if we are switching from hotplug entry point
+ * to cpuidle entry point or vice versa.
+ */
+ if (entry == scm_flags[cpu].entry)
+ return 0;
+
+ ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
+ if (!ret)
+ scm_flags[cpu].entry = entry;
+
+ return ret;
+}
diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
index 02b445c..97dbf58 100644
--- a/arch/arm/mach-qcom/scm-boot.h
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -1,4 +1,5 @@
/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2014, Linaro Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -9,6 +10,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
+
#ifndef __MACH_SCM_BOOT_H
#define __MACH_SCM_BOOT_H
@@ -16,11 +18,8 @@
#define SCM_FLAG_COLDBOOT_CPU1 0x01
#define SCM_FLAG_COLDBOOT_CPU2 0x08
#define SCM_FLAG_COLDBOOT_CPU3 0x20
-#define SCM_FLAG_WARMBOOT_CPU0 0x04
-#define SCM_FLAG_WARMBOOT_CPU1 0x02
-#define SCM_FLAG_WARMBOOT_CPU2 0x10
-#define SCM_FLAG_WARMBOOT_CPU3 0x40
int scm_set_boot_addr(phys_addr_t addr, int flags);
+int scm_set_warm_boot_addr(void *entry, int cpu);
#endif
--
2.1.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
@ 2015-02-25 22:54 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-25 22:54 UTC (permalink / raw)
To: linux-arm-kernel
A core can be powered down for cpuidle or when it is hotplugged of. In
either case, the warmboot return address would be different. Allow
setting the warmboot address for a specific cpu, optimize and write to
the firmware if the address is different than the previously set
address.
Also we do not need to export the warmboot flags. Move them into the
implementation file.
Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
---
arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
arch/arm/mach-qcom/scm-boot.h | 7 +++----
2 files changed, 41 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
index 45cee3e..cb73134 100644
--- a/arch/arm/mach-qcom/scm-boot.c
+++ b/arch/arm/mach-qcom/scm-boot.c
@@ -1,4 +1,5 @@
/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2014, Linaro Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -21,6 +22,23 @@
#include "scm.h"
#include "scm-boot.h"
+#define SCM_FLAG_WARMBOOT_CPU0 0x04
+#define SCM_FLAG_WARMBOOT_CPU1 0x02
+#define SCM_FLAG_WARMBOOT_CPU2 0x10
+#define SCM_FLAG_WARMBOOT_CPU3 0x40
+
+struct scm_warmboot {
+ int flag;
+ void *entry;
+};
+
+static struct scm_warmboot scm_flags[] = {
+ { .flag = SCM_FLAG_WARMBOOT_CPU0 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU1 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU2 },
+ { .flag = SCM_FLAG_WARMBOOT_CPU3 },
+};
+
/*
* Set the cold/warm boot address for one of the CPU cores.
*/
@@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
phys_addr_t addr;
} cmd;
+ might_sleep();
+
cmd.addr = addr;
cmd.flags = flags;
return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
&cmd, sizeof(cmd), NULL, 0);
}
EXPORT_SYMBOL(scm_set_boot_addr);
+
+int scm_set_warm_boot_addr(void *entry, int cpu)
+{
+ int ret;
+
+ /*
+ * Reassign only if we are switching from hotplug entry point
+ * to cpuidle entry point or vice versa.
+ */
+ if (entry == scm_flags[cpu].entry)
+ return 0;
+
+ ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
+ if (!ret)
+ scm_flags[cpu].entry = entry;
+
+ return ret;
+}
diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
index 02b445c..97dbf58 100644
--- a/arch/arm/mach-qcom/scm-boot.h
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -1,4 +1,5 @@
/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2014, Linaro Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -9,6 +10,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
+
#ifndef __MACH_SCM_BOOT_H
#define __MACH_SCM_BOOT_H
@@ -16,11 +18,8 @@
#define SCM_FLAG_COLDBOOT_CPU1 0x01
#define SCM_FLAG_COLDBOOT_CPU2 0x08
#define SCM_FLAG_COLDBOOT_CPU3 0x20
-#define SCM_FLAG_WARMBOOT_CPU0 0x04
-#define SCM_FLAG_WARMBOOT_CPU1 0x02
-#define SCM_FLAG_WARMBOOT_CPU2 0x10
-#define SCM_FLAG_WARMBOOT_CPU3 0x40
int scm_set_boot_addr(phys_addr_t addr, int flags);
+int scm_set_warm_boot_addr(void *entry, int cpu);
#endif
--
2.1.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
2015-02-25 22:54 ` Lina Iyer
@ 2015-02-26 18:47 ` Kevin Hilman
-1 siblings, 0 replies; 18+ messages in thread
From: Kevin Hilman @ 2015-02-26 18:47 UTC (permalink / raw)
To: Lina Iyer; +Cc: galak, sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
Lina Iyer <lina.iyer@linaro.org> writes:
> A core can be powered down for cpuidle or when it is hotplugged of.
s/of/off/ ?
> In
> either case, the warmboot return address would be different. Allow
> setting the warmboot address for a specific cpu, optimize and write to
> the firmware if the address is different than the previously set
> address.
>
> Also we do not need to export the warmboot flags. Move them into the
> implementation file.
>
> Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
> ---
> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
> arch/arm/mach-qcom/scm-boot.h | 7 +++----
> 2 files changed, 41 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
> index 45cee3e..cb73134 100644
> --- a/arch/arm/mach-qcom/scm-boot.c
> +++ b/arch/arm/mach-qcom/scm-boot.c
> @@ -1,4 +1,5 @@
> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
> + * Copyright (c) 2014, Linaro Ltd.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License version 2 and
> @@ -21,6 +22,23 @@
> #include "scm.h"
> #include "scm-boot.h"
>
> +#define SCM_FLAG_WARMBOOT_CPU0 0x04
> +#define SCM_FLAG_WARMBOOT_CPU1 0x02
> +#define SCM_FLAG_WARMBOOT_CPU2 0x10
> +#define SCM_FLAG_WARMBOOT_CPU3 0x40
> +
> +struct scm_warmboot {
> + int flag;
> + void *entry;
> +};
> +
> +static struct scm_warmboot scm_flags[] = {
> + { .flag = SCM_FLAG_WARMBOOT_CPU0 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU1 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU2 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU3 },
> +};
> +
> /*
> * Set the cold/warm boot address for one of the CPU cores.
> */
> @@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
> phys_addr_t addr;
> } cmd;
>
> + might_sleep();
> +
Unrelated change?
Looking closer at scm_call(), looks like the might_sleep() should go
inside scm_call() where it uses the mutex.
> cmd.addr = addr;
> cmd.flags = flags;
> return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
> &cmd, sizeof(cmd), NULL, 0);
> }
> EXPORT_SYMBOL(scm_set_boot_addr);
> +
> +int scm_set_warm_boot_addr(void *entry, int cpu)
> +{
> + int ret;
> +
> + /*
> + * Reassign only if we are switching from hotplug entry point
> + * to cpuidle entry point or vice versa.
> + */
> + if (entry == scm_flags[cpu].entry)
> + return 0;
> +
> + ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
> + if (!ret)
> + scm_flags[cpu].entry = entry;
> +
> + return ret;
> +}
> diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
> index 02b445c..97dbf58 100644
> --- a/arch/arm/mach-qcom/scm-boot.h
> +++ b/arch/arm/mach-qcom/scm-boot.h
> @@ -1,4 +1,5 @@
> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
> + * Copyright (c) 2014, Linaro Ltd.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License version 2 and
> @@ -9,6 +10,7 @@
> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> * GNU General Public License for more details.
> */
> +
> #ifndef __MACH_SCM_BOOT_H
> #define __MACH_SCM_BOOT_H
>
> @@ -16,11 +18,8 @@
> #define SCM_FLAG_COLDBOOT_CPU1 0x01
> #define SCM_FLAG_COLDBOOT_CPU2 0x08
> #define SCM_FLAG_COLDBOOT_CPU3 0x20
> -#define SCM_FLAG_WARMBOOT_CPU0 0x04
> -#define SCM_FLAG_WARMBOOT_CPU1 0x02
> -#define SCM_FLAG_WARMBOOT_CPU2 0x10
> -#define SCM_FLAG_WARMBOOT_CPU3 0x40
You just added these in patch 1, and now moved them. I would just
squash the 2 patches together.
Kevin
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
@ 2015-02-26 18:47 ` Kevin Hilman
0 siblings, 0 replies; 18+ messages in thread
From: Kevin Hilman @ 2015-02-26 18:47 UTC (permalink / raw)
To: linux-arm-kernel
Lina Iyer <lina.iyer@linaro.org> writes:
> A core can be powered down for cpuidle or when it is hotplugged of.
s/of/off/ ?
> In
> either case, the warmboot return address would be different. Allow
> setting the warmboot address for a specific cpu, optimize and write to
> the firmware if the address is different than the previously set
> address.
>
> Also we do not need to export the warmboot flags. Move them into the
> implementation file.
>
> Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
> ---
> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
> arch/arm/mach-qcom/scm-boot.h | 7 +++----
> 2 files changed, 41 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
> index 45cee3e..cb73134 100644
> --- a/arch/arm/mach-qcom/scm-boot.c
> +++ b/arch/arm/mach-qcom/scm-boot.c
> @@ -1,4 +1,5 @@
> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
> + * Copyright (c) 2014, Linaro Ltd.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License version 2 and
> @@ -21,6 +22,23 @@
> #include "scm.h"
> #include "scm-boot.h"
>
> +#define SCM_FLAG_WARMBOOT_CPU0 0x04
> +#define SCM_FLAG_WARMBOOT_CPU1 0x02
> +#define SCM_FLAG_WARMBOOT_CPU2 0x10
> +#define SCM_FLAG_WARMBOOT_CPU3 0x40
> +
> +struct scm_warmboot {
> + int flag;
> + void *entry;
> +};
> +
> +static struct scm_warmboot scm_flags[] = {
> + { .flag = SCM_FLAG_WARMBOOT_CPU0 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU1 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU2 },
> + { .flag = SCM_FLAG_WARMBOOT_CPU3 },
> +};
> +
> /*
> * Set the cold/warm boot address for one of the CPU cores.
> */
> @@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
> phys_addr_t addr;
> } cmd;
>
> + might_sleep();
> +
Unrelated change?
Looking closer at scm_call(), looks like the might_sleep() should go
inside scm_call() where it uses the mutex.
> cmd.addr = addr;
> cmd.flags = flags;
> return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
> &cmd, sizeof(cmd), NULL, 0);
> }
> EXPORT_SYMBOL(scm_set_boot_addr);
> +
> +int scm_set_warm_boot_addr(void *entry, int cpu)
> +{
> + int ret;
> +
> + /*
> + * Reassign only if we are switching from hotplug entry point
> + * to cpuidle entry point or vice versa.
> + */
> + if (entry == scm_flags[cpu].entry)
> + return 0;
> +
> + ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
> + if (!ret)
> + scm_flags[cpu].entry = entry;
> +
> + return ret;
> +}
> diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
> index 02b445c..97dbf58 100644
> --- a/arch/arm/mach-qcom/scm-boot.h
> +++ b/arch/arm/mach-qcom/scm-boot.h
> @@ -1,4 +1,5 @@
> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
> + * Copyright (c) 2014, Linaro Ltd.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License version 2 and
> @@ -9,6 +10,7 @@
> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> * GNU General Public License for more details.
> */
> +
> #ifndef __MACH_SCM_BOOT_H
> #define __MACH_SCM_BOOT_H
>
> @@ -16,11 +18,8 @@
> #define SCM_FLAG_COLDBOOT_CPU1 0x01
> #define SCM_FLAG_COLDBOOT_CPU2 0x08
> #define SCM_FLAG_COLDBOOT_CPU3 0x20
> -#define SCM_FLAG_WARMBOOT_CPU0 0x04
> -#define SCM_FLAG_WARMBOOT_CPU1 0x02
> -#define SCM_FLAG_WARMBOOT_CPU2 0x10
> -#define SCM_FLAG_WARMBOOT_CPU3 0x40
You just added these in patch 1, and now moved them. I would just
squash the 2 patches together.
Kevin
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
2015-02-25 22:54 ` Lina Iyer
@ 2015-02-26 22:10 ` Kumar Gala
-1 siblings, 0 replies; 18+ messages in thread
From: Kumar Gala @ 2015-02-26 22:10 UTC (permalink / raw)
To: Lina Iyer; +Cc: sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
> Hi,
>
> These patches used to be part of my cpuidle patchset, think these can go in
> independently.
>
> The patches do the following -
>
> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
> into the implementation file
>
> Thanks,
> Lina
>
> Lina Iyer (2):
> ARM: qcom: Add SCM warmboot flags for quad core targets.
> qcom: scm: Add scm_set_warm_boot_addr function
>
> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
> arch/arm/mach-qcom/scm-boot.h | 5 +++--
> 2 files changed, 41 insertions(+), 2 deletions(-)
Lina,
Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
thanks
- k
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-26 22:10 ` Kumar Gala
0 siblings, 0 replies; 18+ messages in thread
From: Kumar Gala @ 2015-02-26 22:10 UTC (permalink / raw)
To: linux-arm-kernel
On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
> Hi,
>
> These patches used to be part of my cpuidle patchset, think these can go in
> independently.
>
> The patches do the following -
>
> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
> into the implementation file
>
> Thanks,
> Lina
>
> Lina Iyer (2):
> ARM: qcom: Add SCM warmboot flags for quad core targets.
> qcom: scm: Add scm_set_warm_boot_addr function
>
> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
> arch/arm/mach-qcom/scm-boot.h | 5 +++--
> 2 files changed, 41 insertions(+), 2 deletions(-)
Lina,
Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
thanks
- k
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
2015-02-26 22:10 ` Kumar Gala
@ 2015-02-26 22:20 ` Lina Iyer
-1 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-26 22:20 UTC (permalink / raw)
To: Kumar Gala; +Cc: sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>
>On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>
>> Hi,
>>
>> These patches used to be part of my cpuidle patchset, think these can go in
>> independently.
>>
>> The patches do the following -
>>
>> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>> into the implementation file
>>
>> Thanks,
>> Lina
>>
>> Lina Iyer (2):
>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>> qcom: scm: Add scm_set_warm_boot_addr function
>>
>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>> arch/arm/mach-qcom/scm-boot.h | 5 +++--
>> 2 files changed, 41 insertions(+), 2 deletions(-)
>
>Lina,
>
>Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>
>git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>
Sure. As suggested by Kevin H, I will merge the two patches and rebase
on top yours and resubmit.
>thanks
>
>- k
>
>--
>Qualcomm Innovation Center, Inc.
>The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
>a Linux Foundation Collaborative Project
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-26 22:20 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-26 22:20 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>
>On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>
>> Hi,
>>
>> These patches used to be part of my cpuidle patchset, think these can go in
>> independently.
>>
>> The patches do the following -
>>
>> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>> into the implementation file
>>
>> Thanks,
>> Lina
>>
>> Lina Iyer (2):
>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>> qcom: scm: Add scm_set_warm_boot_addr function
>>
>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>> arch/arm/mach-qcom/scm-boot.h | 5 +++--
>> 2 files changed, 41 insertions(+), 2 deletions(-)
>
>Lina,
>
>Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>
>git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>
Sure. As suggested by Kevin H, I will merge the two patches and rebase
on top yours and resubmit.
>thanks
>
>- k
>
>--
>Qualcomm Innovation Center, Inc.
>The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
>a Linux Foundation Collaborative Project
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
2015-02-26 18:47 ` Kevin Hilman
@ 2015-02-27 20:00 ` Lina Iyer
-1 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-27 20:00 UTC (permalink / raw)
To: Kevin Hilman
Cc: galak, sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
On Thu, Feb 26 2015 at 11:47 -0700, Kevin Hilman wrote:
>Lina Iyer <lina.iyer@linaro.org> writes:
>
>> A core can be powered down for cpuidle or when it is hotplugged of.
>
>s/of/off/ ?
>
Thanks, took care of it.
>> In
>> either case, the warmboot return address would be different. Allow
>> setting the warmboot address for a specific cpu, optimize and write to
>> the firmware if the address is different than the previously set
>> address.
>>
>> Also we do not need to export the warmboot flags. Move them into the
>> implementation file.
>>
>> Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
>> ---
>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>> arch/arm/mach-qcom/scm-boot.h | 7 +++----
>> 2 files changed, 41 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
>> index 45cee3e..cb73134 100644
>> --- a/arch/arm/mach-qcom/scm-boot.c
>> +++ b/arch/arm/mach-qcom/scm-boot.c
>> @@ -1,4 +1,5 @@
>> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> + * Copyright (c) 2014, Linaro Ltd.
>> *
>> * This program is free software; you can redistribute it and/or modify
>> * it under the terms of the GNU General Public License version 2 and
>> @@ -21,6 +22,23 @@
>> #include "scm.h"
>> #include "scm-boot.h"
>>
>> +#define SCM_FLAG_WARMBOOT_CPU0 0x04
>> +#define SCM_FLAG_WARMBOOT_CPU1 0x02
>> +#define SCM_FLAG_WARMBOOT_CPU2 0x10
>> +#define SCM_FLAG_WARMBOOT_CPU3 0x40
>> +
>> +struct scm_warmboot {
>> + int flag;
>> + void *entry;
>> +};
>> +
>> +static struct scm_warmboot scm_flags[] = {
>> + { .flag = SCM_FLAG_WARMBOOT_CPU0 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU1 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU2 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU3 },
>> +};
>> +
>> /*
>> * Set the cold/warm boot address for one of the CPU cores.
>> */
>> @@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
>> phys_addr_t addr;
>> } cmd;
>>
>> + might_sleep();
>> +
>
>Unrelated change?
>
>Looking closer at scm_call(), looks like the might_sleep() should go
>inside scm_call() where it uses the mutex.
>
Removed it from this patch.
>> cmd.addr = addr;
>> cmd.flags = flags;
>> return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
>> &cmd, sizeof(cmd), NULL, 0);
>> }
>> EXPORT_SYMBOL(scm_set_boot_addr);
>> +
>> +int scm_set_warm_boot_addr(void *entry, int cpu)
>> +{
>> + int ret;
>> +
>> + /*
>> + * Reassign only if we are switching from hotplug entry point
>> + * to cpuidle entry point or vice versa.
>> + */
>> + if (entry == scm_flags[cpu].entry)
>> + return 0;
>> +
>> + ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
>> + if (!ret)
>> + scm_flags[cpu].entry = entry;
>> +
>> + return ret;
>> +}
>> diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
>> index 02b445c..97dbf58 100644
>> --- a/arch/arm/mach-qcom/scm-boot.h
>> +++ b/arch/arm/mach-qcom/scm-boot.h
>> @@ -1,4 +1,5 @@
>> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> + * Copyright (c) 2014, Linaro Ltd.
>> *
>> * This program is free software; you can redistribute it and/or modify
>> * it under the terms of the GNU General Public License version 2 and
>> @@ -9,6 +10,7 @@
>> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> * GNU General Public License for more details.
>> */
>> +
>> #ifndef __MACH_SCM_BOOT_H
>> #define __MACH_SCM_BOOT_H
>>
>> @@ -16,11 +18,8 @@
>> #define SCM_FLAG_COLDBOOT_CPU1 0x01
>> #define SCM_FLAG_COLDBOOT_CPU2 0x08
>> #define SCM_FLAG_COLDBOOT_CPU3 0x20
>> -#define SCM_FLAG_WARMBOOT_CPU0 0x04
>> -#define SCM_FLAG_WARMBOOT_CPU1 0x02
>> -#define SCM_FLAG_WARMBOOT_CPU2 0x10
>> -#define SCM_FLAG_WARMBOOT_CPU3 0x40
>
>You just added these in patch 1, and now moved them. I would just
>squash the 2 patches together.
>
Sure. Thanks!
>Kevin
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function
@ 2015-02-27 20:00 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-27 20:00 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Feb 26 2015 at 11:47 -0700, Kevin Hilman wrote:
>Lina Iyer <lina.iyer@linaro.org> writes:
>
>> A core can be powered down for cpuidle or when it is hotplugged of.
>
>s/of/off/ ?
>
Thanks, took care of it.
>> In
>> either case, the warmboot return address would be different. Allow
>> setting the warmboot address for a specific cpu, optimize and write to
>> the firmware if the address is different than the previously set
>> address.
>>
>> Also we do not need to export the warmboot flags. Move them into the
>> implementation file.
>>
>> Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
>> ---
>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>> arch/arm/mach-qcom/scm-boot.h | 7 +++----
>> 2 files changed, 41 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
>> index 45cee3e..cb73134 100644
>> --- a/arch/arm/mach-qcom/scm-boot.c
>> +++ b/arch/arm/mach-qcom/scm-boot.c
>> @@ -1,4 +1,5 @@
>> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> + * Copyright (c) 2014, Linaro Ltd.
>> *
>> * This program is free software; you can redistribute it and/or modify
>> * it under the terms of the GNU General Public License version 2 and
>> @@ -21,6 +22,23 @@
>> #include "scm.h"
>> #include "scm-boot.h"
>>
>> +#define SCM_FLAG_WARMBOOT_CPU0 0x04
>> +#define SCM_FLAG_WARMBOOT_CPU1 0x02
>> +#define SCM_FLAG_WARMBOOT_CPU2 0x10
>> +#define SCM_FLAG_WARMBOOT_CPU3 0x40
>> +
>> +struct scm_warmboot {
>> + int flag;
>> + void *entry;
>> +};
>> +
>> +static struct scm_warmboot scm_flags[] = {
>> + { .flag = SCM_FLAG_WARMBOOT_CPU0 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU1 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU2 },
>> + { .flag = SCM_FLAG_WARMBOOT_CPU3 },
>> +};
>> +
>> /*
>> * Set the cold/warm boot address for one of the CPU cores.
>> */
>> @@ -31,9 +49,29 @@ int scm_set_boot_addr(phys_addr_t addr, int flags)
>> phys_addr_t addr;
>> } cmd;
>>
>> + might_sleep();
>> +
>
>Unrelated change?
>
>Looking closer at scm_call(), looks like the might_sleep() should go
>inside scm_call() where it uses the mutex.
>
Removed it from this patch.
>> cmd.addr = addr;
>> cmd.flags = flags;
>> return scm_call(SCM_SVC_BOOT, SCM_BOOT_ADDR,
>> &cmd, sizeof(cmd), NULL, 0);
>> }
>> EXPORT_SYMBOL(scm_set_boot_addr);
>> +
>> +int scm_set_warm_boot_addr(void *entry, int cpu)
>> +{
>> + int ret;
>> +
>> + /*
>> + * Reassign only if we are switching from hotplug entry point
>> + * to cpuidle entry point or vice versa.
>> + */
>> + if (entry == scm_flags[cpu].entry)
>> + return 0;
>> +
>> + ret = scm_set_boot_addr(virt_to_phys(entry), scm_flags[cpu].flag);
>> + if (!ret)
>> + scm_flags[cpu].entry = entry;
>> +
>> + return ret;
>> +}
>> diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
>> index 02b445c..97dbf58 100644
>> --- a/arch/arm/mach-qcom/scm-boot.h
>> +++ b/arch/arm/mach-qcom/scm-boot.h
>> @@ -1,4 +1,5 @@
>> /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> + * Copyright (c) 2014, Linaro Ltd.
>> *
>> * This program is free software; you can redistribute it and/or modify
>> * it under the terms of the GNU General Public License version 2 and
>> @@ -9,6 +10,7 @@
>> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> * GNU General Public License for more details.
>> */
>> +
>> #ifndef __MACH_SCM_BOOT_H
>> #define __MACH_SCM_BOOT_H
>>
>> @@ -16,11 +18,8 @@
>> #define SCM_FLAG_COLDBOOT_CPU1 0x01
>> #define SCM_FLAG_COLDBOOT_CPU2 0x08
>> #define SCM_FLAG_COLDBOOT_CPU3 0x20
>> -#define SCM_FLAG_WARMBOOT_CPU0 0x04
>> -#define SCM_FLAG_WARMBOOT_CPU1 0x02
>> -#define SCM_FLAG_WARMBOOT_CPU2 0x10
>> -#define SCM_FLAG_WARMBOOT_CPU3 0x40
>
>You just added these in patch 1, and now moved them. I would just
>squash the 2 patches together.
>
Sure. Thanks!
>Kevin
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
2015-02-26 22:20 ` Lina Iyer
@ 2015-02-27 20:07 ` Lina Iyer
-1 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-27 20:07 UTC (permalink / raw)
To: Kumar Gala; +Cc: sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
On Thu, Feb 26 2015 at 15:20 -0700, Lina Iyer wrote:
>On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>>
>>On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>>
>>>Hi,
>>>
>>>These patches used to be part of my cpuidle patchset, think these can go in
>>>independently.
>>>
>>>The patches do the following -
>>>
>>>1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>>>2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>>>into the implementation file
>>>
>>>Thanks,
>>>Lina
>>>
>>>Lina Iyer (2):
>>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>>> qcom: scm: Add scm_set_warm_boot_addr function
>>>
>>>arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>>>arch/arm/mach-qcom/scm-boot.h | 5 +++--
>>>2 files changed, 41 insertions(+), 2 deletions(-)
>>
>>Lina,
>>
>>Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>>
>>git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>>
>
>Sure. As suggested by Kevin H, I will merge the two patches and rebase
>on top yours and resubmit.
>
I have rebased on top of yours. I will send it shortly. But please note
that source "driver/firmware/Kconfig" is missing in arch/arm/Kconfig for
the driver/firmware to build.
Also, I have a dependency on the scm_call_atomic() api introduced by
Stephen [1] for cpuidle. When can I expect to see that?
[1]. https://lkml.org/lkml/2014/8/4/765
Thanks,
Lina
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-27 20:07 ` Lina Iyer
0 siblings, 0 replies; 18+ messages in thread
From: Lina Iyer @ 2015-02-27 20:07 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Feb 26 2015 at 15:20 -0700, Lina Iyer wrote:
>On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>>
>>On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>>
>>>Hi,
>>>
>>>These patches used to be part of my cpuidle patchset, think these can go in
>>>independently.
>>>
>>>The patches do the following -
>>>
>>>1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>>>2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>>>into the implementation file
>>>
>>>Thanks,
>>>Lina
>>>
>>>Lina Iyer (2):
>>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>>> qcom: scm: Add scm_set_warm_boot_addr function
>>>
>>>arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>>>arch/arm/mach-qcom/scm-boot.h | 5 +++--
>>>2 files changed, 41 insertions(+), 2 deletions(-)
>>
>>Lina,
>>
>>Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>>
>>git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>>
>
>Sure. As suggested by Kevin H, I will merge the two patches and rebase
>on top yours and resubmit.
>
I have rebased on top of yours. I will send it shortly. But please note
that source "driver/firmware/Kconfig" is missing in arch/arm/Kconfig for
the driver/firmware to build.
Also, I have a dependency on the scm_call_atomic() api introduced by
Stephen [1] for cpuidle. When can I expect to see that?
[1]. https://lkml.org/lkml/2014/8/4/765
Thanks,
Lina
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
2015-02-27 20:07 ` Lina Iyer
@ 2015-02-27 21:23 ` Kumar Gala
-1 siblings, 0 replies; 18+ messages in thread
From: Kumar Gala @ 2015-02-27 21:23 UTC (permalink / raw)
To: Lina Iyer; +Cc: sboyd, linux-arm-msm, agross, linux-arm-kernel, linux-pm
On Feb 27, 2015, at 2:07 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
> On Thu, Feb 26 2015 at 15:20 -0700, Lina Iyer wrote:
>> On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>>>
>>> On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>>>
>>>> Hi,
>>>>
>>>> These patches used to be part of my cpuidle patchset, think these can go in
>>>> independently.
>>>>
>>>> The patches do the following -
>>>>
>>>> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>>>> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>>>> into the implementation file
>>>>
>>>> Thanks,
>>>> Lina
>>>>
>>>> Lina Iyer (2):
>>>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>>>> qcom: scm: Add scm_set_warm_boot_addr function
>>>>
>>>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>>>> arch/arm/mach-qcom/scm-boot.h | 5 +++--
>>>> 2 files changed, 41 insertions(+), 2 deletions(-)
>>>
>>> Lina,
>>>
>>> Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>>>
>>
>> Sure. As suggested by Kevin H, I will merge the two patches and rebase
>> on top yours and resubmit.
>>
> I have rebased on top of yours. I will send it shortly. But please note
> that source "driver/firmware/Kconfig" is missing in arch/arm/Kconfig for
> the driver/firmware to build.
I’ll fix this.
>
> Also, I have a dependency on the scm_call_atomic() api introduced by
> Stephen [1] for cpuidle. When can I expect to see that?
>
> [1]. https://lkml.org/lkml/2014/8/4/765
Please add the patch to your patchset.
- k
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 0/2] Add SCM warmboot support for QCOM SoCs
@ 2015-02-27 21:23 ` Kumar Gala
0 siblings, 0 replies; 18+ messages in thread
From: Kumar Gala @ 2015-02-27 21:23 UTC (permalink / raw)
To: linux-arm-kernel
On Feb 27, 2015, at 2:07 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
> On Thu, Feb 26 2015 at 15:20 -0700, Lina Iyer wrote:
>> On Thu, Feb 26 2015 at 15:10 -0700, Kumar Gala wrote:
>>>
>>> On Feb 25, 2015, at 4:54 PM, Lina Iyer <lina.iyer@linaro.org> wrote:
>>>
>>>> Hi,
>>>>
>>>> These patches used to be part of my cpuidle patchset, think these can go in
>>>> independently.
>>>>
>>>> The patches do the following -
>>>>
>>>> 1. Add QCOM Secure Monitor specific enumeration for warm boot on qcom targets
>>>> 2. Add an API to set up the warmboot address. Consolidate the warm boot flags
>>>> into the implementation file
>>>>
>>>> Thanks,
>>>> Lina
>>>>
>>>> Lina Iyer (2):
>>>> ARM: qcom: Add SCM warmboot flags for quad core targets.
>>>> qcom: scm: Add scm_set_warm_boot_addr function
>>>>
>>>> arch/arm/mach-qcom/scm-boot.c | 38 ++++++++++++++++++++++++++++++++++++++
>>>> arch/arm/mach-qcom/scm-boot.h | 5 +++--
>>>> 2 files changed, 41 insertions(+), 2 deletions(-)
>>>
>>> Lina,
>>>
>>> Do you mind rebasing these patches on my recent SCM cleanup set. You find it at:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git qcom/scm-cleanup
>>>
>>
>> Sure. As suggested by Kevin H, I will merge the two patches and rebase
>> on top yours and resubmit.
>>
> I have rebased on top of yours. I will send it shortly. But please note
> that source "driver/firmware/Kconfig" is missing in arch/arm/Kconfig for
> the driver/firmware to build.
I?ll fix this.
>
> Also, I have a dependency on the scm_call_atomic() api introduced by
> Stephen [1] for cpuidle. When can I expect to see that?
>
> [1]. https://lkml.org/lkml/2014/8/4/765
Please add the patch to your patchset.
- k
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2015-02-27 21:23 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-25 22:54 [PATCH 0/2] Add SCM warmboot support for QCOM SoCs Lina Iyer
2015-02-25 22:54 ` Lina Iyer
2015-02-25 22:54 ` [PATCH 1/2] ARM: qcom: Add SCM warmboot flags for quad core targets Lina Iyer
2015-02-25 22:54 ` Lina Iyer
2015-02-25 22:54 ` [PATCH 2/2] qcom: scm: Add scm_set_warm_boot_addr function Lina Iyer
2015-02-25 22:54 ` Lina Iyer
2015-02-26 18:47 ` Kevin Hilman
2015-02-26 18:47 ` Kevin Hilman
2015-02-27 20:00 ` Lina Iyer
2015-02-27 20:00 ` Lina Iyer
2015-02-26 22:10 ` [PATCH 0/2] Add SCM warmboot support for QCOM SoCs Kumar Gala
2015-02-26 22:10 ` Kumar Gala
2015-02-26 22:20 ` Lina Iyer
2015-02-26 22:20 ` Lina Iyer
2015-02-27 20:07 ` Lina Iyer
2015-02-27 20:07 ` Lina Iyer
2015-02-27 21:23 ` Kumar Gala
2015-02-27 21:23 ` Kumar Gala
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.