RE: [PATCH/RFC 2/4] OMAP2: PM debug: remove register dumping

2011-06-01 Thread Titiano, Patrick
Hi Kevin,

[...]
  Sorry but omapconf is run from userspace, it cannot be used to dump
  PRCM registers right before and after MPU WFI.
 

 Right, taking register snapshots is currently beyond the scope of
 omapconf.

 However, as I suggested earlier in this thread, if we had a new driver
 with read/write interface where register snapshots are saved, I imagine
 adopting omapconf to read from such an interface for dumping register
 snapshots would be relatively easy, right?


Correct, this feature could be pretty easily added to omapconf.

Patrick.


Texas Instruments France SA, 821 Avenue Jack Kilby, 06270 Villeneuve Loubet. 
036 420 040 R.C.S Antibes. Capital de EUR 753.920



--
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/RFC 2/4] OMAP2: PM debug: remove register dumping

2011-05-31 Thread Titiano, Patrick


Texas Instruments France SA, 821 Avenue Jack Kilby, 06270 Villeneuve Loubet. 
036 420 040 R.C.S Antibes. Capital de EUR 753.920

-Original Message-

 From: Jean Pihet [mailto:jean.pi...@newoldbits.com]
 Sent: Monday, May 30, 2011 10:05 AM
 To: Hilman, Kevin
 Cc: linux-omap@vger.kernel.org; Titiano, Patrick
 Subject: Re: [PATCH/RFC 2/4] OMAP2: PM debug: remove register dumping

 On Fri, May 27, 2011 at 1:02 AM, Kevin Hilman khil...@ti.com wrote:
  Signed-off-by: Kevin Hilman khil...@ti.com
  ---
   arch/arm/mach-omap2/pm-debug.c |  119 -
 ---
   arch/arm/mach-omap2/pm.h   |4 -
   arch/arm/mach-omap2/pm24xx.c   |6 +-
   3 files changed, 2 insertions(+), 127 deletions(-)
 
 ...

 OK for this change. Is it the intention to use the omapconf tool as
 the replacement for the regs dump code?

Sorry but omapconf is run from userspace, it cannot be used to dump PRCM 
registers right before and after MPU WFI.

Regards,
Patrick.



 Acked-by: Jean Pihet j-pi...@ti.com

 Regards,
 Jean

--
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] omap-pm: Fixes behaviour of some shared resource framework functions

2009-10-30 Thread Titiano, Patrick

Texas Instruments France SA, 821 Avenue Jack Kilby, 06270 Villeneuve Loubet. 
036 420 040 R.C.S Antibes. Capital de EUR 753.920

-Original Message-

 From: Kevin Hilman [mailto:khil...@deeprootsystems.com]
 Sent: Friday, October 30, 2009 12:33 AM
 To: Chikkature Rajashekar, Madhusudhan
 Cc: Turquette, Mike; Dasgupta, Romit; Cousson, Benoit; 'Paul Walmsley';
 linux-omap@vger.kernel.org; Titiano, Patrick
 Subject: Re: [PATCH] omap-pm: Fixes behaviour of some shared resource
 framework functions

 Madhusudhan madhu...@ti.com writes:

  -Original Message-
  From: Mike Turquette [mailto:mturque...@ti.com]
  Sent: Thursday, October 29, 2009 4:38 PM
  To: Kevin Hilman
  Cc: Dasgupta, Romit; Cousson, Benoit; Chikkature Rajashekar,
 Madhusudhan;
  'Paul Walmsley'; linux-omap@vger.kernel.org; Titiano, Patrick
  Subject: Re: [PATCH] omap-pm: Fixes behaviour of some shared resource
  framework functions
 
  Kevin Hilman wrote:
   Dasgupta, Romit ro...@ti.com writes:
  
   Hello Benoit,
   One comment below:
   In fact, this is Mike who started that analysis. We discussed that
  internally and
   our point is that if the CPUFreq ondemand or conservative heuristic
 is
  not able
   to increase quickly enough the CPU need to handle correctly the UI,
 we
  have
   to somehow improve or modify the governor in order to provide it a
  extra
   information in term of constraint maybe in order to increase
  immediately the
   frequency.
   The information as you mention needs to be supplied by the
   driver. The governor would then act on behalf of the driver!  This
   begs for a new governor API or a signature change to an existing
   governor API.
  
   This should not be done in the low level omap_pm code; this is not
   the right level to do that. The issue is in the ondemand and must
   be fixed there.
   At the end of the day it would still be the driver making the
   decision!
  
   No.  The drivers can give hints about their requirements, but the
   drivers don't make decisions that are system wide.  The govenor acts
   on behalf of the entire system based on multiple inputs, not any one
   driver.
  
   Benoit's point (and I agree with) is that this is a *system wide*
   problem that needs a *system wide* solution.  I agree that tweaked or
   new governor is the right approach to solving this for the long term,
 
  An assumption in this thread is that ondemand/conservative can't scale
  fast enough, but that is not true.  The Android UI sluggishness
  mentioned by Benoit was solved by lowering the cpufreq
  transition_latency time from 10 million ns to 300,000ns.  I have not
  gotten the exact worst case time that it takes for voltage to scale up
  and down from the hardware guys, but through some email exchanges it
 was
  agreed that this value is safe.
 
  I've pushed the patch that fixed transition_latency to the list.
 Please
  see thread decrease cpufreq transition latency.  This should
 hopefully
  cure a lot of performance/user experience pain and help us remove
 policy
  from drivers.
 
  Hi Kevin, Mike,
 
  Let us consider the MMC scenario. Below are the throughput numbers with
  different governors.
 
  Performance:
  Write: 5.47MB/Sec
  Read: 15.3MB/Sec
 
  Ondemand:
  Write: 4.2 MB/Sec
  Read: 9.8 MB/Sec
 
  Conservative:
  Write: 4.9MB/Sec
  Read: 12.16MB/Sec
 
  These numbers show that conservative is better than ondemand but the
  throughput numbers are still less than performance.

 No surprises there.

  Instead, if the driver holds the vdd1 opp to opp3 the throughput numbers
  were relatively close to performance governor. The logic I am talking
  about is that the drivers should be intelligent enough to hold the opp
 at
  Opp3 only when there is an active transfer. Once the transfer is done
  release it back to opp1. Does this make sense?

 I think you're missing my point.

 What you're trying to do is to allow a driver to make a power
 vs. performance policy decision.  You're assuming that the user (or
 system integrator) will always choose performance over power.  What if
 the user is willing to accept a slightly slower system if it extends
 battery life?

 The point I'm trying to make is that these kinds of policy decisions
 simply do not belong in drivers.

 Kevin

Kevin, this is absolutely correct. I think this is our number one issue in 
terms of PM policy.
Today we enterely rely on a single default governor (ondemand) and expect it 
to always take the best decision in any circumstances, solely based on the 
monitored CPU load. This is quite unrealistic.
I see 4 missing points in our PM SW Framework today:

1/ Hints from low-level drivers to PM policy so that it knows runtime platform 
activities and how to react accordingly.
E.g:
 - I am DMA-driven, my CPU load is low but I need low latencies (e.g. USB/MMC 
transfers, etc ...)
 - I am generating huge data transfers, I need high bus speed (e.g. CAMERA)
 - I do not support DVFS
 - I do not support OFF