1. 13 1月, 2015 1 次提交
  2. 13 11月, 2014 1 次提交
    • D
      cpuidle: Invert CPUIDLE_FLAG_TIME_VALID logic · b82b6cca
      Daniel Lezcano 提交于
      The only place where the time is invalid is when the ACPI_CSTATE_FFH entry
      method is not set. Otherwise for all the drivers, the time can be correctly
      measured.
      
      Instead of duplicating the CPUIDLE_FLAG_TIME_VALID flag in all the drivers
      for all the states, just invert the logic by replacing it by the flag
      CPUIDLE_FLAG_TIME_INVALID, hence we can set this flag only for the acpi idle
      driver, remove the former flag from all the drivers and invert the logic with
      this flag in the different governor.
      Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      b82b6cca
  3. 25 6月, 2014 1 次提交
  4. 17 6月, 2014 2 次提交
  5. 17 6月, 2013 1 次提交
  6. 23 4月, 2013 1 次提交
  7. 22 4月, 2013 1 次提交
  8. 09 4月, 2013 1 次提交
  9. 18 9月, 2012 1 次提交
    • A
      ARM: shmobile: use __iomem pointers for MMIO · 0a4b04dc
      Arnd Bergmann 提交于
      ARM is moving to stricter checks on readl/write functions,
      so we need to use the correct types everywhere.
      
      This patch is a bit ugly for shmobile, which is the only platform
      that just uses integer literals all over the place, but I can't
      see a better way to do this.
      Acked-by: NSimon Horman <horms@verge.net.au>
      Cc: Magnus Damm <magnus.damm@gmail.com>
      Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: linux-sh@vger.kernel.org
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      0a4b04dc
  10. 04 9月, 2012 6 次提交
  11. 12 7月, 2012 1 次提交
  12. 07 7月, 2012 2 次提交
  13. 06 7月, 2012 2 次提交
  14. 25 6月, 2012 1 次提交
  15. 29 3月, 2012 1 次提交
  16. 14 1月, 2012 1 次提交
  17. 26 12月, 2011 3 次提交
    • R
      PM / shmobile: Allow the A4R domain to be turned off at run time · a8cf27be
      Rafael J. Wysocki 提交于
      After adding PM QoS constraints for the I2C controller in the A4R
      domain, that domain can be allowed to be turned off and on by runtime
      PM, so remove the "always on" governor from it.
      
      However, the A4R domain has to be "on" when suspend_device_irqs() and
      resume_device_irqs() are executed during system suspend and resume,
      respectively, so that those functions don't crash while accessing the
      INTCS.  For this reason, add a PM notifier to the SH7372 PM code and
      make it restore power to A4R before system suspend and remove power
      from all unused PM domains after system resume.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      a8cf27be
    • R
      PM / shmobile: Remove the stay_on flag from SH7372's PM domains · 767c0f3a
      Rafael J. Wysocki 提交于
      SH7372 uses two independent mechanisms for ensuring that power
      domains will never be turned off: the stay_on flag and the "always
      on" domain governor.  Moreover, the "always on" governor is only taken
      into accout by runtime PM code paths, while the stay_on flag affects
      all attempts to turn the given domain off.  Thus setting the stay_on
      flag causes the "always on" governor to be unnecessary, which is
      quite confusing.
      
      However, the stay_on flag is currently only set for two domains: A3SP
      and A4S.  Moreover, it only is set for the A3SP domain if
      console_suspend_enabled is set, so stay_on won't be necessary for
      that domain any more if console_suspend_enabled is checked directly
      in its .suspend() routine.  [This requires domain .suspend() to
      return a result, but that is a minor modification.]  Analogously,
      stay_on won't be necessary for the A4S domain if it's .suspend()
      routine always returns an error code.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      767c0f3a
    • M
      PM / shmobile: Add support for the sh7372 A4S power domain / sleep mode · f7dadb37
      Magnus Damm 提交于
      The sh7372 contains a power domain named A4S which in turn
      contains power domains for both I/O Devices and CPU cores.
      
      At this point only System wide Suspend-to-RAM is supported,
      but the the hardware can also support CPUIdle. With more
      efforts in the future CPUIdle can work with bot A4S and A3SM.
      
      Tested on the sh7372 Mackerel board.
      
      [rjw: Rebased on top of the current linux-pm tree.]
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      f7dadb37
  18. 10 12月, 2011 1 次提交
  19. 07 12月, 2011 1 次提交
  20. 02 12月, 2011 2 次提交
    • R
      PM / Domains: Add device stop governor function (v4) · b02c999a
      Rafael J. Wysocki 提交于
      Add a function deciding whether or not devices should be stopped in
      pm_genpd_runtime_suspend() depending on their PM QoS constraints
      and stop/start timing values.  Make it possible to add information
      used by this function to device objects.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      b02c999a
    • R
      PM / Domains: Make it possible to use per-device domain callbacks · d5e4cbfe
      Rafael J. Wysocki 提交于
      The current generic PM domains code requires that the same .stop(),
      .start() and .active_wakeup() device callback routines be used for
      all devices in the given domain, which is inflexible and may not
      cover some specific use cases.  For this reason, make it possible to
      use device specific .start()/.stop() and .active_wakeup() callback
      routines by adding corresponding callback pointers to struct
      generic_pm_domain_data.  Add a new helper routine,
      pm_genpd_register_callbacks(), that can be used to populate
      the new per-device callback pointers.
      
      Modify the shmobile's power domains code to allow drivers to add
      their own code to be run during the device stop and start operations
      with the help of the new callback pointers.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      d5e4cbfe
  21. 18 11月, 2011 1 次提交
  22. 15 11月, 2011 1 次提交
  23. 11 11月, 2011 1 次提交
    • M
      ARM: mach-shmobile: cpuidle single/global and last_state fixes · b73b5c49
      Magnus Damm 提交于
      The following commits break cpuidle on SH-Mobile ARM:
      
      46bcfad7 cpuidle: Single/Global registration of idle states
      e978aa7d cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state
      
      This patch remedies these issues by up-porting the SH-Mobile
      code to fit with the above introduced framework changes.
      
      It is worth noting that the new code becomes significantly cleaner,
      so these framework changes are very welcome. At the same time this
      breakage could probably have been avoided by grepping for "last_state"
      and "cpuidle_register_driver".
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      b73b5c49
  24. 10 11月, 2011 2 次提交
  25. 22 10月, 2011 2 次提交
    • M
      ARM: mach-shmobile: sh7372 A4R support (v4) · 382414b9
      Magnus Damm 提交于
      This change adds support for the sh7372 A4R power domain.
      
      The sh7372 A4R hardware power domain contains the
      SH CPU Core and a set of I/O devices including
      multimedia accelerators and I2C controllers.
      
      One special case about A4R is the INTCS interrupt
      controller that needs to be saved and restored to
      keep working as expected. Also the LCDC hardware
      blocks are in a different hardware power domain
      but have their IRQs routed only through INTCS. So
      as long as LCDCs are active we cannot power down
      INTCS because that would risk losing interrupts.
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      382414b9
    • M
      ARM: mach-shmobile: sh7372 A3SP support (v4) · d93f5cde
      Magnus Damm 提交于
      This change adds support for the sh7372 A3SP power domain.
      
      The sh7372 A3SP hardware power domain contains a
      wide range of I/O devices. The list of I/O devices
      include SCIF serial ports, DMA Engine hardware,
      SD and MMC controller hardware, USB controllers
      and I2C master controllers.
      
      This patch adds the A3SP low level code which
      powers the hardware power domain on and off. It
      also ties in platform devices to the pm domain
      support code.
      
      It is worth noting that the serial console is
      hooked up to SCIFA0 on most sh7372 boards, and
      the SCIFA0 port is included in the A3SP hardware
      power domain. For this reason we cannot output
      debug messages from the low level power control
      code in the case of A3SP.
      
      QoS support is needed in drivers before we can
      enable the A3SP power control on the fly.
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      d93f5cde
  26. 26 9月, 2011 2 次提交