Improve power consumption on Framework systems

Bug #2045621 reported by Artur Pak
30
This bug affects 4 people
Affects Status Importance Assigned to Milestone
OEM Priority Project
Fix Released
High
Artur Pak
systemd (Ubuntu)
Fix Released
Wishlist
Unassigned
Jammy
Won't Fix
Wishlist
Unassigned
Lunar
Won't Fix
Wishlist
Unassigned
Mantic
Won't Fix
Wishlist
Unassigned
Noble
Fix Released
Wishlist
Unassigned
systemd-hwe (Ubuntu)
Invalid
Wishlist
Unassigned
Jammy
Fix Released
Wishlist
Unassigned
Lunar
Won't Fix
Wishlist
Unassigned
Mantic
Fix Released
Wishlist
Unassigned
Noble
Invalid
Wishlist
Unassigned

Bug Description

[ Impact ]

 * Framework systems that have DP or HDMI cards connected will have increased power consumption even when nothing is connected to DP or HDMI ports since the cards don't default to autosuspend.

 * Backporting upstream patch that adds rules in hwdb.d/60-autosuspend.hwdb for Framework's HDMI and DP extensions.

[ Test Plan ]

 * DUT: Framework with DP and HDMI:

$ lsusb | grep Framework
Bus 007 Device 002: ID 32ac:0003 Framework DisplayPort Expansion Card
Bus 001 Device 002: ID 32ac:0002 Framework HDMI Expansion Card

 1. Autosuspend is not enabled before patch. Set to "on" in power/control

$ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-1/manufacturer
Framework
$ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-1/power/control
on

$ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-2/manufacturer
Framework
$ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-2/power/control
on

 2. Install patch
 3. Autosuspend is enabled for both extensions. Set to "auto" in power/control

$ cat power/control
auto

[ Where problems could occur ]

 * During testing verified that both DP+HDMI display show good output after hot-plug, system suspend, and reboot. There might be some differences when hibernate and hotplug.

[ Other Info ]

 * https://github.com/systemd/systemd/commit/9023630cb7025650aa4d01ee794b0bb68bfdf2c1

Changed in oem-priority:
assignee: nobody → Artur Pak (artur-at-work)
importance: Undecided → High
status: New → In Progress
affects: oem-priority → systemd (Ubuntu)
description: updated
description: updated
tags: added: oem-priority originate-from-2045516
Changed in oem-priority:
assignee: nobody → Artur Pak (artur-at-work)
Revision history for this message
Artur Pak (artur-at-work) wrote :

for Jammy

jeremyszu (os369510)
Changed in systemd (Ubuntu):
status: In Progress → Fix Committed
assignee: Artur Pak (artur-at-work) → nobody
Changed in oem-priority:
importance: Undecided → High
status: New → In Progress
Changed in systemd-hwe (Ubuntu Noble):
status: New → Invalid
Changed in systemd (Ubuntu Noble):
importance: High → Undecided
Changed in systemd-hwe (Ubuntu Jammy):
importance: Undecided → Wishlist
Changed in systemd-hwe (Ubuntu Lunar):
importance: Undecided → Wishlist
Changed in systemd-hwe (Ubuntu Mantic):
importance: Undecided → Wishlist
Changed in systemd-hwe (Ubuntu Noble):
importance: Undecided → Wishlist
Changed in systemd (Ubuntu Noble):
importance: Undecided → Wishlist
Changed in systemd (Ubuntu Mantic):
importance: Undecided → Wishlist
Changed in systemd (Ubuntu Lunar):
importance: Undecided → Wishlist
Changed in systemd (Ubuntu Jammy):
importance: Undecided → Wishlist
Revision history for this message
jeremyszu (os369510) wrote :

Hi Artur,

We may want to use systemd-hwe to support this.

tags: removed: originate-from-2045516
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in systemd (Ubuntu Jammy):
status: New → Confirmed
Changed in systemd (Ubuntu Lunar):
status: New → Confirmed
Changed in systemd (Ubuntu Mantic):
status: New → Confirmed
Changed in systemd-hwe (Ubuntu Jammy):
status: New → Confirmed
Changed in systemd-hwe (Ubuntu Lunar):
status: New → Confirmed
Changed in systemd-hwe (Ubuntu Mantic):
status: New → Confirmed
jeremyszu (os369510)
tags: added: amd originate-from-2044861
Revision history for this message
Nick Rosbrook (enr0n) wrote :

For Jammy, Lunar, and Mantic, the correct fix is to add these rules in a 90-ubuntu-autosuspend.hwdb file in systemd-hwe.

Changed in systemd (Ubuntu Jammy):
status: Confirmed → Won't Fix
Changed in systemd (Ubuntu Lunar):
status: Confirmed → Won't Fix
Changed in systemd (Ubuntu Mantic):
status: Confirmed → Won't Fix
Revision history for this message
Artur Pak (artur-at-work) wrote :

Got it, thanks. The merge proposals were created.

Revision history for this message
Nick Rosbrook (enr0n) wrote :

I have uploaded this change for jammy and mantic, and it is already in systemd in noble-proposed. Given lunar is EOL on January 25, I think we can skip lunar, so I marked that won't fix.

Changed in systemd-hwe (Ubuntu Lunar):
status: Confirmed → Won't Fix
Changed in systemd-hwe (Ubuntu Jammy):
status: Confirmed → In Progress
Changed in systemd-hwe (Ubuntu Mantic):
status: Confirmed → In Progress
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Artur, or anyone else affected,

Accepted systemd-hwe into mantic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/systemd-hwe/253.5.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-mantic to verification-done-mantic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-mantic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in systemd-hwe (Ubuntu Mantic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-mantic
Changed in systemd-hwe (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed-jammy
Revision history for this message
Steve Langasek (vorlon) wrote :

Hello Artur, or anyone else affected,

Accepted systemd-hwe into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/systemd-hwe/249.11.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Revision history for this message
Matt Hartley (mattworks) wrote :

Appreciate this everyone. I have multiple people beginning to test this today. I will be joining them next week. I have asked each to report back here.

Revision history for this message
Artur Pak (artur-at-work) wrote (last edit ):

Ran below steps to verify the packages 249.11.5 (Jammy) and 253.5.3 (Mantic) :

1. add proposed channel

2. $ apt install systemd-hwe-hwdb=<version>

3. verify the proposed version was installed:
   $ apt policy systemd-hwe-hwdb

4. verify that /usr/lib/udev/hwdb.d/90-ubuntu-autosuspend.hwdb was created with Framework expansion cards

5. verify the control files:
   $ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-1/power/control
auto

   $ cat /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb7/7-1/power/control
auto

tags: added: verification-done-jammy
removed: verification-needed-jammy
tags: added: verification-done verification-done-mantic
removed: verification-needed verification-needed-mantic
Revision history for this message
Ciaby (ciaby) wrote :

Testing on Jammy:
1. Enabled jammy-proposed
2. Installed systemd-hwe-hwdb (version 249.11.5)
3. File /usr/lib/udev/hwdb.d/90-ubuntu-autosuspend.hwdb is created
4. Check power status (HDMI card):
$ cat /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-1/manufacturer
Framework
$ cat /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-1/power/control
auto

Revision history for this message
dr_eja (drewnak) wrote :

Successfully tested here as reported by the previous user (see #16).

Tested on jammy:
0. Checked before patch:
  - cat /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-1/manufacturer
    Framework
  - cat /sys/devices/pci0000\:00/0000\:00\:08.3/0000\:c3\:00.3/usb5/5-1/power/control
    on
1. Enabled jammy-proposed
2. Installed systemd-hwe-hwdb (version 249.11.5)
3. File /usr/lib/udev/hwdb.d/90-ubuntu-autosuspend.hwdb is created
4. Check power status (HDMI card):
$ cat /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-1/manufacturer
Framework
$ cat /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-1/power/control
auto

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package systemd-hwe - 253.5.3

---------------
systemd-hwe (253.5.3) mantic; urgency=medium

  [ Artur Pak ]
  * Add autosuspend rules for Framework (LP: #2045621)
  * Add three Dell platforms to sensor accel location base (LP: #2046687)

 -- Nick Rosbrook <email address hidden> Fri, 05 Jan 2024 10:40:58 -0500

Changed in systemd-hwe (Ubuntu Mantic):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for systemd-hwe has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package systemd-hwe - 249.11.5

---------------
systemd-hwe (249.11.5) jammy; urgency=medium

  [ Artur Pak ]
  * Add autosuspend rules for Framework (LP: #2045621)
  * Add three Dell platforms to sensor accel location base (LP: #2046687)

 -- Nick Rosbrook <email address hidden> Fri, 05 Jan 2024 10:29:41 -0500

Changed in systemd-hwe (Ubuntu Jammy):
status: Fix Committed → Fix Released
Changed in oem-priority:
status: In Progress → Fix Released
Nick Rosbrook (enr0n)
Changed in systemd (Ubuntu Noble):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.