Re: [PATCH 7/8] OMAP3: update cpuidle latency and threshold figures

2011-10-12 Thread Jean Pihet
Hi Ming,

On Wed, Oct 12, 2011 at 4:48 AM, Ming Lei tom.leim...@gmail.com wrote:
 Hi,

 On Thu, Sep 22, 2011 at 12:14 AM, Jean Pihet jean.pi...@newoldbits.com 
 wrote:
 Update the data from the measurements performed at HW and SW levels.

 Cf. 
 http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
 for a detailed explanation on where are the numbers magically coming from.

 ToDo:
 - Measure the wake-up latencies for all power domains for OMAP3
 - Correct some numbers when sys_clkreq and sys_offmode are supported

 Signed-off-by: Jean Pihet j-pi...@ti.com
 ---
  arch/arm/mach-omap2/cpuidle34xx.c |   28 ++--
  1 files changed, 14 insertions(+), 14 deletions(-)

 diff --git a/arch/arm/mach-omap2/cpuidle34xx.c 
 b/arch/arm/mach-omap2/cpuidle34xx.c
 index 1b8e0da..4b3e994 100644
 --- a/arch/arm/mach-omap2/cpuidle34xx.c
 +++ b/arch/arm/mach-omap2/cpuidle34xx.c
 @@ -44,20 +44,20 @@
  * pass these details from the board file.
  */
  static struct cpuidle_params cpuidle_params_table[] = {
 -       /* C1 */
 -       {2 + 2, 5, 1},
 -       /* C2 */
 -       {10 + 10, 30, 1},
 -       /* C3 */
 -       {50 + 50, 300, 1},
 -       /* C4 */
 -       {1500 + 1800, 4000, 1},
 -       /* C5 */
 -       {2500 + 7500, 12000, 1},
 -       /* C6 */
 -       {3000 + 8500, 15000, 1},
 -       /* C7 */
 -       {1 + 3, 30, 1},
 +       /* C1 . MPU WFI + Core active */
 +       {73 + 78, 152, 1},
 +       /* C2 . MPU WFI + Core inactive */
 +       {165 + 88, 345, 1},
 +       /* C3 . MPU CSWR + Core inactive */
 +       {163 + 182, 345, 1},
 +       /* C4 . MPU OFF + Core inactive */
 +       {2852 + 605, 15, 1},
 +       /* C5 . MPU RET + Core RET */
 +       {800 + 366, 2120, 1},

 C4 exit_latency is longer than C5's, not sure if it is correct?
Since MPU is OFF in C4 the impact is bigger in latency. In MPU OFF
mode the caches and MPU context are saved and later restored, which is
costly.

Thanks for the review!

Regards,
Jean


 +       /* C6 . MPU OFF + Core RET */
 +       {4080 + 801, 215000, 1},
 +       /* C7 . MPU OFF + Core OFF */
 +       {4300 + 13000, 215000, 1},
  };
  #define OMAP3_NUM_STATES ARRAY_SIZE(cpuidle_params_table)

 --
 1.7.4.1

 --
 To unsubscribe from this list: send the line unsubscribe linux-omap in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html



 thanks,
 --
 Ming Lei

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 7/8] OMAP3: update cpuidle latency and threshold figures

2011-10-12 Thread jean . pihet
From: Jean Pihet j-pi...@ti.com

Update the data from the measurements performed at HW and SW levels.

Cf. http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
for a detailed explanation on where are the numbers magically coming from.

ToDo:
- Measure the wake-up latencies for all power domains for OMAP3
- Correct some numbers when sys_clkreq and sys_offmode are supported

Signed-off-by: Jean Pihet j-pi...@ti.com
---
 arch/arm/mach-omap2/cpuidle34xx.c |   28 ++--
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/arch/arm/mach-omap2/cpuidle34xx.c 
b/arch/arm/mach-omap2/cpuidle34xx.c
index 1b8e0da..4b3e994 100644
--- a/arch/arm/mach-omap2/cpuidle34xx.c
+++ b/arch/arm/mach-omap2/cpuidle34xx.c
@@ -44,20 +44,20 @@
  * pass these details from the board file.
  */
 static struct cpuidle_params cpuidle_params_table[] = {
-   /* C1 */
-   {2 + 2, 5, 1},
-   /* C2 */
-   {10 + 10, 30, 1},
-   /* C3 */
-   {50 + 50, 300, 1},
-   /* C4 */
-   {1500 + 1800, 4000, 1},
-   /* C5 */
-   {2500 + 7500, 12000, 1},
-   /* C6 */
-   {3000 + 8500, 15000, 1},
-   /* C7 */
-   {1 + 3, 30, 1},
+   /* C1 . MPU WFI + Core active */
+   {73 + 78, 152, 1},
+   /* C2 . MPU WFI + Core inactive */
+   {165 + 88, 345, 1},
+   /* C3 . MPU CSWR + Core inactive */
+   {163 + 182, 345, 1},
+   /* C4 . MPU OFF + Core inactive */
+   {2852 + 605, 15, 1},
+   /* C5 . MPU RET + Core RET */
+   {800 + 366, 2120, 1},
+   /* C6 . MPU OFF + Core RET */
+   {4080 + 801, 215000, 1},
+   /* C7 . MPU OFF + Core OFF */
+   {4300 + 13000, 215000, 1},
 };
 #define OMAP3_NUM_STATES ARRAY_SIZE(cpuidle_params_table)
 
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 7/8] OMAP3: update cpuidle latency and threshold figures

2011-10-11 Thread Ming Lei
Hi,

On Thu, Sep 22, 2011 at 12:14 AM, Jean Pihet jean.pi...@newoldbits.com wrote:
 Update the data from the measurements performed at HW and SW levels.

 Cf. 
 http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
 for a detailed explanation on where are the numbers magically coming from.

 ToDo:
 - Measure the wake-up latencies for all power domains for OMAP3
 - Correct some numbers when sys_clkreq and sys_offmode are supported

 Signed-off-by: Jean Pihet j-pi...@ti.com
 ---
  arch/arm/mach-omap2/cpuidle34xx.c |   28 ++--
  1 files changed, 14 insertions(+), 14 deletions(-)

 diff --git a/arch/arm/mach-omap2/cpuidle34xx.c 
 b/arch/arm/mach-omap2/cpuidle34xx.c
 index 1b8e0da..4b3e994 100644
 --- a/arch/arm/mach-omap2/cpuidle34xx.c
 +++ b/arch/arm/mach-omap2/cpuidle34xx.c
 @@ -44,20 +44,20 @@
  * pass these details from the board file.
  */
  static struct cpuidle_params cpuidle_params_table[] = {
 -       /* C1 */
 -       {2 + 2, 5, 1},
 -       /* C2 */
 -       {10 + 10, 30, 1},
 -       /* C3 */
 -       {50 + 50, 300, 1},
 -       /* C4 */
 -       {1500 + 1800, 4000, 1},
 -       /* C5 */
 -       {2500 + 7500, 12000, 1},
 -       /* C6 */
 -       {3000 + 8500, 15000, 1},
 -       /* C7 */
 -       {1 + 3, 30, 1},
 +       /* C1 . MPU WFI + Core active */
 +       {73 + 78, 152, 1},
 +       /* C2 . MPU WFI + Core inactive */
 +       {165 + 88, 345, 1},
 +       /* C3 . MPU CSWR + Core inactive */
 +       {163 + 182, 345, 1},
 +       /* C4 . MPU OFF + Core inactive */
 +       {2852 + 605, 15, 1},
 +       /* C5 . MPU RET + Core RET */
 +       {800 + 366, 2120, 1},

C4 exit_latency is longer than C5's, not sure if it is correct?

 +       /* C6 . MPU OFF + Core RET */
 +       {4080 + 801, 215000, 1},
 +       /* C7 . MPU OFF + Core OFF */
 +       {4300 + 13000, 215000, 1},
  };
  #define OMAP3_NUM_STATES ARRAY_SIZE(cpuidle_params_table)

 --
 1.7.4.1

 --
 To unsubscribe from this list: send the line unsubscribe linux-omap in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html



thanks,
-- 
Ming Lei
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 7/8] OMAP3: update cpuidle latency and threshold figures

2011-09-21 Thread Jean Pihet
Update the data from the measurements performed at HW and SW levels.

Cf. http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
for a detailed explanation on where are the numbers magically coming from.

ToDo:
- Measure the wake-up latencies for all power domains for OMAP3
- Correct some numbers when sys_clkreq and sys_offmode are supported

Signed-off-by: Jean Pihet j-pi...@ti.com
---
 arch/arm/mach-omap2/cpuidle34xx.c |   28 ++--
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/arch/arm/mach-omap2/cpuidle34xx.c 
b/arch/arm/mach-omap2/cpuidle34xx.c
index 1b8e0da..4b3e994 100644
--- a/arch/arm/mach-omap2/cpuidle34xx.c
+++ b/arch/arm/mach-omap2/cpuidle34xx.c
@@ -44,20 +44,20 @@
  * pass these details from the board file.
  */
 static struct cpuidle_params cpuidle_params_table[] = {
-   /* C1 */
-   {2 + 2, 5, 1},
-   /* C2 */
-   {10 + 10, 30, 1},
-   /* C3 */
-   {50 + 50, 300, 1},
-   /* C4 */
-   {1500 + 1800, 4000, 1},
-   /* C5 */
-   {2500 + 7500, 12000, 1},
-   /* C6 */
-   {3000 + 8500, 15000, 1},
-   /* C7 */
-   {1 + 3, 30, 1},
+   /* C1 . MPU WFI + Core active */
+   {73 + 78, 152, 1},
+   /* C2 . MPU WFI + Core inactive */
+   {165 + 88, 345, 1},
+   /* C3 . MPU CSWR + Core inactive */
+   {163 + 182, 345, 1},
+   /* C4 . MPU OFF + Core inactive */
+   {2852 + 605, 15, 1},
+   /* C5 . MPU RET + Core RET */
+   {800 + 366, 2120, 1},
+   /* C6 . MPU OFF + Core RET */
+   {4080 + 801, 215000, 1},
+   /* C7 . MPU OFF + Core OFF */
+   {4300 + 13000, 215000, 1},
 };
 #define OMAP3_NUM_STATES ARRAY_SIZE(cpuidle_params_table)
 
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 7/8] OMAP3: update cpuidle latency and threshold figures

2011-09-21 Thread jean . pihet
From: Jean Pihet j-pi...@ti.com

Update the data from the measurements performed at HW and SW levels.

Cf. http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
for a detailed explanation on where are the numbers magically coming from.

ToDo:
- Measure the wake-up latencies for all power domains for OMAP3
- Correct some numbers when sys_clkreq and sys_offmode are supported

Signed-off-by: Jean Pihet j-pi...@ti.com
---
 arch/arm/mach-omap2/cpuidle34xx.c |   28 ++--
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/arch/arm/mach-omap2/cpuidle34xx.c 
b/arch/arm/mach-omap2/cpuidle34xx.c
index 1b8e0da..4b3e994 100644
--- a/arch/arm/mach-omap2/cpuidle34xx.c
+++ b/arch/arm/mach-omap2/cpuidle34xx.c
@@ -44,20 +44,20 @@
  * pass these details from the board file.
  */
 static struct cpuidle_params cpuidle_params_table[] = {
-   /* C1 */
-   {2 + 2, 5, 1},
-   /* C2 */
-   {10 + 10, 30, 1},
-   /* C3 */
-   {50 + 50, 300, 1},
-   /* C4 */
-   {1500 + 1800, 4000, 1},
-   /* C5 */
-   {2500 + 7500, 12000, 1},
-   /* C6 */
-   {3000 + 8500, 15000, 1},
-   /* C7 */
-   {1 + 3, 30, 1},
+   /* C1 . MPU WFI + Core active */
+   {73 + 78, 152, 1},
+   /* C2 . MPU WFI + Core inactive */
+   {165 + 88, 345, 1},
+   /* C3 . MPU CSWR + Core inactive */
+   {163 + 182, 345, 1},
+   /* C4 . MPU OFF + Core inactive */
+   {2852 + 605, 15, 1},
+   /* C5 . MPU RET + Core RET */
+   {800 + 366, 2120, 1},
+   /* C6 . MPU OFF + Core RET */
+   {4080 + 801, 215000, 1},
+   /* C7 . MPU OFF + Core OFF */
+   {4300 + 13000, 215000, 1},
 };
 #define OMAP3_NUM_STATES ARRAY_SIZE(cpuidle_params_table)
 
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html