1. 18 11月, 2011 2 次提交
  2. 23 8月, 2009 1 次提交
    • M
      sh: Runtime PM for SuperH Mobile platform bus devices · 6a93dde1
      Magnus Damm 提交于
      This patch is V3 of the SuperH Mobile Runtime PM platform bus
      implentation matching Rafael's Runtime PM v16.
      
      The code gets invoked from the SuperH specific Runtime PM
      platform bus functions that override the weak symbols for:
       - platform_pm_runtime_suspend()
       - platform_pm_runtime_resume()
       - platform_pm_runtime_idle()
      
      This Runtime PM implementation performs two levels of power
      management. At the time of platform bus runtime suspend the
      clock to the device is stopped instantly. Later on if all
      devices within the power domain has their clocks stopped
      then the device driver ->runtime_suspend() callbacks are
      used to save hardware register state for each device.
      
      Device driver ->runtime_suspend() calls are scheduled from
      cpuidle context using platform_pm_runtime_suspend_idle().
      When all devices have been fully suspended the processor
      is allowed to enter deep sleep from cpuidle.
      
      The runtime resume operation turns on clocks and also
      restores registers if needed. It is worth noting that the
      devices start in a suspended state and the device driver
      is responsible for calling runtime resume before accessing
      the actual hardware.
      
      In this particular platform bus implementation runtime
      resume is not allowed from interrupt context. Runtime
      suspend is however allowed from interrupt context as
      long as the synchronous functions are avoided.
      
      [ updated for v17 -- PFM. ]
      Signed-off-by: NMagnus Damm <damm@igel.co.jp>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      6a93dde1
  3. 04 8月, 2009 1 次提交
    • M
      sh: Runtime PM pdev hwblk · 9aaa7490
      Magnus Damm 提交于
      These patches extend struct platform device data for a bunch of
      SuperH Mobile processors and embedded boards. The patches simply
      add hardware block ids to on-chip platform devices. Platform
      devices off chip (such as external ethernet controllers or flash
      chips) are left out which gives them a special case hardware block
      id of zero.
      
      Upcoming Runtime PM code will make use of the hardware block id
      to group devices together. The hardware block id can also be used
      to extend the SuperH Mobile clock framework implementation.
      
      This series of patches depend on the following:
      "Driver Core: Add platform device arch data V3".
      
      This patch adds a hwblk_id member to struct pdev_archdata. This member
      should be used to point out on-chip hardware block id.
      Signed-off-by: NMagnus Damm <damm@igel.co.jp>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      9aaa7490
  4. 19 4月, 2009 1 次提交
  5. 29 7月, 2008 1 次提交
  6. 28 7月, 2008 1 次提交
  7. 02 12月, 2006 1 次提交