1. 29 6月, 2012 1 次提交
  2. 31 5月, 2012 1 次提交
  3. 30 5月, 2012 2 次提交
    • R
      ACPI / PM: Make acpi_pm_device_sleep_state() follow the specification · dbe9a2ed
      Rafael J. Wysocki 提交于
      The comparison between the system sleep state being entered
      and the lowest system sleep state the given device may wake up
      from in acpi_pm_device_sleep_state() is reversed, because the
      specification (ACPI 5.0) says that for wakeup to work:
      
      "The sleeping state being entered must be less than or equal to the
       power state declared in element 1 of the _PRW object."
      
      In other words, the state returned by _PRW is the deepest
      (lowest-power) system sleep state the device is capable of waking up
      the system from.
      
      Moreover, acpi_pm_device_sleep_state() also should check if the
      wakeup capability is supported through ACPI, because in principle it
      may be done via native PCIe PME, for example, in which case _SxW
      should not be evaluated.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      dbe9a2ed
    • D
      ACPI / PM: Generate wakeup events on fixed power button · c10d7a13
      Daniel Drake 提交于
      When the system is woken up by the ACPI fixed power button, currently there
      is no way of userspace becoming aware that the power button was pressed.
      
      OLPC would like to know this, so that we can respond appropriately.
      For example, if the system was woken up by a network packet, we know
      we can go back to sleep very quickly. But if the user explicitly woke the
      system with the power button, we're going to want to stay awake for a
      while.
      
      The wakeup count mechanism seems like a good fit for communicating this.
      Mark the fixed power button as wakeup-enabled, and increment its wakeup
      counter when the system is woken with the power button. (The wakeup counter
      is also incremented when the power button is pressed during system
      operation; this is already handled by an existing acpi-button codepath).
      Signed-off-by: NDaniel Drake <dsd@laptop.org>
      Acked-by: NZhang Rui <rui.zhang@intel.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      c10d7a13
  4. 09 5月, 2012 2 次提交
  5. 08 5月, 2012 1 次提交
  6. 24 4月, 2012 1 次提交
  7. 30 3月, 2012 1 次提交
  8. 27 3月, 2012 2 次提交
  9. 22 3月, 2012 1 次提交
  10. 21 1月, 2012 1 次提交
  11. 07 12月, 2011 1 次提交
  12. 05 11月, 2011 1 次提交
  13. 22 10月, 2011 1 次提交
  14. 17 10月, 2011 2 次提交
  15. 30 7月, 2011 1 次提交
  16. 15 3月, 2011 1 次提交
  17. 25 2月, 2011 6 次提交
  18. 18 2月, 2011 1 次提交
  19. 21 1月, 2011 1 次提交
  20. 07 1月, 2011 2 次提交
  21. 14 12月, 2010 1 次提交
  22. 11 12月, 2010 1 次提交
  23. 16 11月, 2010 2 次提交
  24. 26 10月, 2010 1 次提交
  25. 20 10月, 2010 1 次提交
  26. 16 10月, 2010 1 次提交
  27. 25 9月, 2010 1 次提交
  28. 25 7月, 2010 1 次提交
  29. 07 7月, 2010 1 次提交
    • R
      ACPICA: Introduce acpi_gpe_wakeup() · e8b6f970
      Rafael J. Wysocki 提交于
      ACPICA uses reference counters to avoid disabling GPEs too early in
      case they have been enabled for many times.  This is done separately
      for runtime and for wakeup, but the wakeup GPE reference counter is
      not really necessary, because GPEs are only enabled to wake up the
      system at the hardware level by acpi_enter_sleep_state().  Thus it
      only is necessary to set the corresponding bits in the wakeup enable
      masks of these GPEs' registers right before the system enters a sleep
      state.  Moreover, the GPE wakeup enable bits can only be set when the
      target sleep state of the system is known and they need to be cleared
      immediately after wakeup regardless of how many wakeup devices are
      associated with a given GPE.
      
      On the basis of the above observations, introduce function
      acpi_gpe_wakeup() to be used for setting or clearing the enable bit
      corresponding to a given GPE in its enable register's enable_for_wake
      mask.  Modify the ACPI suspend and wakeup code the use
      acpi_gpe_wakeup() instead of acpi_{enable|disable}_gpe() to set
      and clear GPE enable bits in their registers' enable_for_wake masks
      during system transitions to a sleep state and back to the working
      state, respectively.  [This will allow us to drop the third
      argument of acpi_{enable|disable}_gpe() and simplify the GPE
      handling code.]
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NLin Ming <ming.m.lin@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      e8b6f970