System PM policy definition and implementation

Registered by Leann Ogasawara on 2013-04-02

Define and implement the policy for the system power states. Examples: suspend/resume, psuedo-suspend (screen off but system still active), system shutdown, perhaps things like airplane mode.

Blueprint information

Status:
Not started
Approver:
Leann Ogasawara
Priority:
Undefined
Drafter:
Loïc Minier
Direction:
Needs approval
Assignee:
Loïc Minier
Definition:
New
Series goal:
Accepted for saucy
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

(?)

Work Items

Work items for ubuntu-13.05:
[sforshee] Integrate with platform neutral suspend library: DONE
[sforshee] Implement Power State request object: DONE
[mfisch] Implement power state request API: DONE
[sforshee] Internal powerd code uses power state requests API: DONE
[mfisch] Connect power manager to dbus -- have it listening on dbus, perhaps implement some debug methods, such as retrieving the current power state: DONE
[mfisch] Write a test binary to call the PowerState request API for testing: DONE

Work items for ubuntu-13.06:
[sforshee] Write Display State request object and API: DONE
[mfisch] Test binary for the API for display state requests: DONE
[sforshee] All public APIs that applications can use that modify display state defined, at least one API working: DONE
[sforshee] All public APIs that can modify display state implemented: DONE
[sforshee] Work out user inactivity timeout with unity: DONE
[sforshee] Improve backlight support: DONE

Work items for ubuntu-13.07:
[mfisch] Develop plan for dealing with processes which die while holding requests with powerd: DONE
[sforshee] Develop plan for integrating powerd with mir-based display stack: DONE
[mfrey] Review dbus API for conformance to best practices: TODO
[mfrey] Start Integration of other system components with power manager: TODO
[mfrey] Determine whether it makes sense to provide a powerd library to abstract dbus API: TODO
[sforshee] Integrate powerd with upower for getting power source information: DONE
[sforshee] Implement basic policy around power sources (low-battery shutdown): DONE
[sforshee] Enable -Wall and fix compiler warnings: DONE
[sforshee] Add dbus API for client registration and ack of power state changes: DONE
[sforshee] Auto brightness support: DONE

Work items for ubuntu-13.08:
Prohibit clearing requests made by another client: POSTPONED
Test Ubuntu Touch app that tests end-to-end display and power state requests: BLOCKED
Integrate with the application lifecycle: power manager code to tell Unity and suspend and resume apps: TODO
Get user activity information from unity rather than monitoring input devices directly: POSTPONED
Move screen blanking to shell/system compositor: POSTPONED
[sforshee] Add basic statistics collection to powerd to help debug power problems: DONE
Add integration with ofono for emergency calls: BLOCKED
Wake-up device on incoming MMS (once ofono supports this): BLOCKED
[sforshee] Add thermal shutdown support: DONE

Work items for ubuntu-13.10:
(this is really a post 13.10 work item but no milestone exists yet in LP)Listen for sessions/systems compositors created/destroyed from logind on dbus: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.