pop-os / pop

A project for managing all Pop!_OS sources
https://system76.com/pop
2.43k stars 84 forks source link

Unusallly high battery drain from touchpad (tried this on 3 systems) #1564

Open bllooi opened 3 years ago

bllooi commented 3 years ago

Distribution (run cat /etc/os-release): NAME="Pop!_OS" VERSION="20.10" ID=pop ID_LIKE="ubuntu debian" PRETTY_NAME="Pop!_OS 20.10" VERSION_ID="20.10" HOME_URL="https://pop.system76.com" SUPPORT_URL="https://support.system76.com" BUG_REPORT_URL="https://github.com/pop-os/pop/issues" PRIVACY_POLICY_URL="https://system76.com/privacy" VERSION_CODENAME=groovy UBUNTU_CODENAME=groovy LOGO=distributor-logo-pop-os

Related Application and/or Package Version (run apt policy $PACKAGE NAME): powertop: Installed: 2.11-1build1 Candidate: 2.11-1build1 Version table: *** 2.11-1build1 500 500 http://us.archive.ubuntu.com/ubuntu groovy/main amd64 Packages 100 /var/lib/dpkg/status Hardware (Specifically the XPS13 9300 in this case but tested with other laptops with same OS version): Device 'DLL096D:01 06CB:CDE6 Touchpad': Device Enabled (168): 1 Coordinate Transformation Matrix (170): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 libinput Tapping Enabled (321): 1 libinput Tapping Enabled Default (322): 0 libinput Tapping Drag Enabled (323): 1 libinput Tapping Drag Enabled Default (324): 1 libinput Tapping Drag Lock Enabled (325): 0 libinput Tapping Drag Lock Enabled Default (326): 0 libinput Tapping Button Mapping Enabled (327): 1, 0 libinput Tapping Button Mapping Default (328): 1, 0 libinput Natural Scrolling Enabled (303): 1 libinput Natural Scrolling Enabled Default (304): 0 libinput Disable While Typing Enabled (329): 1 libinput Disable While Typing Enabled Default (330): 1 libinput Scroll Methods Available (305): 1, 1, 0 libinput Scroll Method Enabled (306): 1, 0, 0 libinput Scroll Method Enabled Default (307): 1, 0, 0 libinput Click Methods Available (331): 1, 1 libinput Click Method Enabled (332): 0, 1 libinput Click Method Enabled Default (333): 1, 0 libinput Middle Emulation Enabled (334): 0 libinput Middle Emulation Enabled Default (335): 0 libinput Accel Speed (312): 0.000000 libinput Accel Speed Default (313): 0.000000 libinput Accel Profiles Available (314): 1, 1 libinput Accel Profile Enabled (315): 1, 0 libinput Accel Profile Enabled Default (316): 1, 0 libinput Left Handed Enabled (317): 0 libinput Left Handed Enabled Default (318): 0 libinput Send Events Modes Available (288): 1, 1 libinput Send Events Mode Enabled (289): 0, 0 libinput Send Events Mode Enabled Default (290): 0, 0 Device Node (291): "/dev/input/event9" Device Product ID (292): 1739, 52710 libinput Drag Lock Buttons (319): libinput Horizontal Scroll Enabled (320): 1

Issue/Bug Description: Example below: 808 mW 4.5 ms/s 202.8 Interrupt [17] idma64.1

When using the mousepad there is this huge spike in interrupts coming from IRQ 16. This can cause the power usage of the system to go up by up to 3.0 W sometimes causing a significant drain in battery life. This is problematic for laptops that have small batteries.

I tried adding blacklist intel_lpss_pci to blacklist.conf in /etc/modprobe.d/ hoping to fix the interrupts but to no avail. (https://www.reddit.com/r/linuxquestions/comments/8wssyu/idma64_interrupts_causing_high_cpu_clock_and_poor/).

Steps to reproduce (if you know): Just open up powertop and dont touch your touchpad for the first round of readings, after the reading update start moving your cursor around and watch the wattage consumed go up. I had a delta of 3 watts, others may differ.

Expected behavior: I just dont expect the trackpad to use that many watts to power it.

Other Notes:

bflanagin commented 3 years ago

Interesting, you said you tested a few machines. Mind posting the power usage and models here as well? Here is mine on our 17" Gazelle

497 mW    605.0 µs/s     125.5        Interrupt      [16] idma64.0
bflanagin commented 3 years ago

Further info: power top is only an estimate of the amount of power being used and isn't tied directly to the device but to the entire io loop between the device and the processor. Its possible that there are tweaks for some devices to decrease power useage, but it would be hardware dependent, and thus something better served upstream.