Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RUNTIME_PM_BLACKLIST doesn't work on ThunderBolt3 dock #499

Closed
plumlis opened this issue Jun 9, 2020 · 13 comments
Closed

RUNTIME_PM_BLACKLIST doesn't work on ThunderBolt3 dock #499

plumlis opened this issue Jun 9, 2020 · 13 comments

Comments

@plumlis
Copy link

plumlis commented Jun 9, 2020

Describe the bug

My usb soundcard have some poping noise when using on thunderbolt3 dock.
And I found there is a device called 00:16.0 is set to battery saved.
I changed it to "bad" in Powertop so problem sloved

Expected behavior

I add this devices( 00:16.0 ) to RUNTIME_PM_BLACKLIST and it seems doesn't work on Thunderblot3 dock device.

To Reproduce

Steps to reproduce the unexpected behavior:

  1. add a thunderbolt3 dock connected device to RUNTIME_PM_BLACKLIST
  2. connect laptop to thunderbolt3 dock
  3. check powetop
  4. found this device still in battery save mode

here is my tlp-stat

--- TLP 1.3.1 --------------------------------------------

+++ Configured Settings:
/etc/tlp.conf L0026: TLP_ENABLE="1"
defaults.conf L0005: TLP_PERSISTENT_DEFAULT="0"
defaults.conf L0006: DISK_IDLE_SECS_ON_AC="0"
defaults.conf L0007: DISK_IDLE_SECS_ON_BAT="2"
defaults.conf L0008: MAX_LOST_WORK_SECS_ON_AC="15"
defaults.conf L0009: MAX_LOST_WORK_SECS_ON_BAT="60"
/etc/tlp.conf L0100: CPU_ENERGY_PERF_POLICY_ON_AC="balance_performance"
/etc/tlp.conf L0101: CPU_ENERGY_PERF_POLICY_ON_BAT="default"
/etc/tlp.conf L0128: SCHED_POWERSAVE_ON_AC="0"
/etc/tlp.conf L0129: SCHED_POWERSAVE_ON_BAT="1"
defaults.conf L0014: NMI_WATCHDOG="0"
defaults.conf L0015: DISK_DEVICES="nvme0n1 sda"
defaults.conf L0016: DISK_APM_LEVEL_ON_AC="254 254"
defaults.conf L0017: DISK_APM_LEVEL_ON_BAT="128 128"
/etc/tlp.conf L0188: DISK_IOSCHED="bfq bfq"
/etc/tlp.conf L0198: SATA_LINKPWR_ON_AC="med_power_with_dipm max_performance"
/etc/tlp.conf L0199: SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"
/etc/tlp.conf L0219: AHCI_RUNTIME_PM_TIMEOUT="15"
/etc/tlp.conf L0226: PCIE_ASPM_ON_AC="performance"
/etc/tlp.conf L0227: PCIE_ASPM_ON_BAT="powersave"
defaults.conf L0024: RADEON_POWER_PROFILE_ON_AC="default"
defaults.conf L0025: RADEON_POWER_PROFILE_ON_BAT="default"
defaults.conf L0026: RADEON_DPM_PERF_LEVEL_ON_AC="auto"
defaults.conf L0027: RADEON_DPM_PERF_LEVEL_ON_BAT="auto"
/etc/tlp.conf L0264: WIFI_PWR_ON_AC="off"
/etc/tlp.conf L0265: WIFI_PWR_ON_BAT="on"
/etc/tlp.conf L0270: WOL_DISABLE="Y"
/etc/tlp.conf L0276: SOUND_POWER_SAVE_ON_AC="1"
/etc/tlp.conf L0277: SOUND_POWER_SAVE_ON_BAT="1"
/etc/tlp.conf L0283: SOUND_POWER_SAVE_CONTROLLER="Y"
defaults.conf L0034: BAY_POWEROFF_ON_AC="0"
defaults.conf L0035: BAY_POWEROFF_ON_BAT="0"
defaults.conf L0036: BAY_DEVICE="sr0"
/etc/tlp.conf L0302: RUNTIME_PM_ON_AC="on"
/etc/tlp.conf L0303: RUNTIME_PM_ON_BAT="auto"
defaults.conf L0039: RUNTIME_PM_DRIVER_BLACKLIST="amdgpu mei_me nouveau nvidia pcieport radeon"
/etc/tlp.conf L0323: USB_AUTOSUSPEND="1"
defaults.conf L0041: USB_BLACKLIST_BTUSB="0"
defaults.conf L0042: USB_BLACKLIST_PHONE="0"
defaults.conf L0043: USB_BLACKLIST_PRINTER="1"
defaults.conf L0044: USB_BLACKLIST_WWAN="0"
defaults.conf L0045: USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN="0"
defaults.conf L0046: RESTORE_DEVICE_STATE_ON_STARTUP="0"
/etc/tlp.conf L0437: RESTORE_THRESHOLDS_ON_BAT="1"
/etc/tlp.conf L0442: NATACPI_ENABLE="1"
/etc/tlp.conf L0443: TPACPI_ENABLE="1"
/etc/tlp.conf L0444: TPSMAPI_ENABLE="1"
/etc/tlp.conf L0032: TLP_DEFAULT_MODE="BAT"
/etc/tlp.conf L0076: CPU_SCALING_GOVERNOR_ON_AC="performance"
/etc/tlp.conf L0077: CPU_SCALING_GOVERNOR_ON_BAT="powersave"
/etc/tlp.conf L0121: CPU_BOOST_ON_AC="1"
/etc/tlp.conf L0122: CPU_BOOST_ON_BAT="0"
/etc/tlp.conf L0212: AHCI_RUNTIME_PM_ON_AC="on"
/etc/tlp.conf L0213: AHCI_RUNTIME_PM_ON_BAT="auto"
/etc/tlp.conf L0309: RUNTIME_PM_BLACKLIST="00:16.0 00:1f.2 00:1f.3 00:1f.4"

+++ System Info
System = LENOVO ThinkPad X1 Carbon 5th 20HRCTO1WW
BIOS = N1MET61W (1.46 )
Release = Ubuntu 20.04 LTS
Kernel = 5.7.0-050700-generic #202005312130 SMP Mon Jun 1 01:33:12 UTC 2020 x86_64
/proc/cmdline = BOOT_IMAGE=/boot/vmlinuz-5.7.0-050700-generic root=UUID=94d436f0-31df-4564-96ba-c415b32216e6 ro quiet splash scsi_mod.use_blk_mq=1 vt.handoff=7
Init system = systemd v245 (245.4-4ubuntu3.1)
Boot mode = UEFI

+++ TLP Status
State = enabled
RDW state = enabled
Last run = 20时14分23秒, 3768 sec(s) ago
Mode = AC
Power source = AC

+++ Processor
CPU model = Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz

/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver = intel_pstate
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor = performance
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq = 400000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq = 3900000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/cpu1/cpufreq/scaling_driver = intel_pstate
/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor = performance
/sys/devices/system/cpu/cpu1/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq = 400000 [kHz]
/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq = 3900000 [kHz]
/sys/devices/system/cpu/cpu1/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu1/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/cpu2/cpufreq/scaling_driver = intel_pstate
/sys/devices/system/cpu/cpu2/cpufreq/scaling_governor = performance
/sys/devices/system/cpu/cpu2/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq = 400000 [kHz]
/sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq = 3900000 [kHz]
/sys/devices/system/cpu/cpu2/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu2/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/cpu3/cpufreq/scaling_driver = intel_pstate
/sys/devices/system/cpu/cpu3/cpufreq/scaling_governor = performance
/sys/devices/system/cpu/cpu3/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq = 400000 [kHz]
/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq = 3900000 [kHz]
/sys/devices/system/cpu/cpu3/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu3/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/intel_pstate/min_perf_pct = 10 [%]
/sys/devices/system/cpu/intel_pstate/max_perf_pct = 100 [%]
/sys/devices/system/cpu/intel_pstate/no_turbo = 0
/sys/devices/system/cpu/intel_pstate/turbo_pct = 31 [%]
/sys/devices/system/cpu/intel_pstate/num_pstates = 36

/sys/module/workqueue/parameters/power_efficient = Y
/proc/sys/kernel/nmi_watchdog = 0

+++ Temperatures
/proc/acpi/ibm/thermal = 55 -128 0 0 0 0 0 0 0 0 66 0 0 0 0 0 [°C]
/proc/acpi/ibm/fan = 4946 [/min]

+++ File System
/proc/sys/vm/laptop_mode = 0
/proc/sys/vm/dirty_writeback_centisecs = 1500
/proc/sys/vm/dirty_expire_centisecs = 1500
/proc/sys/vm/dirty_ratio = 20
/proc/sys/vm/dirty_background_ratio = 10

+++ Storage Devices
Devices = nvme0n1 sda

/dev/nvme0n1:
Type = NVMe
Model = Samsung SSD 960 EVO 1TB
Firmware = 3B7QCXE7
Scheduler = mq-deadline [bfq] none (multi queue)

Runtime PM: control = auto, autosuspend_delay_ms = (not available)

SMART info:
Critical Warning: 0x00
Temperature: 43 Celsius
Available Spare: 100%
Available Spare Threshold: 10%
Percentage Used: 1%
Data Units Written: 42,892,515 [21.9 TB]
Power Cycles: 5,336
Power On Hours: 1,838
Unsafe Shutdowns: 556
Media and Data Integrity Errors: 0

/dev/sda: not present.

+++ AHCI Link Power Management (ALPM)
No AHCI-enabled host controller detected.

+++ Intel Graphics
/sys/module/i915/parameters/enable_dc = -1 (use per-chip default)
/sys/module/i915/parameters/enable_fbc = 1 (enabled)
/sys/module/i915/parameters/enable_psr = -1 (use per-chip default)
/sys/module/i915/parameters/modeset = -1 (use per-chip default)

/sys/class/drm/card0/gt_min_freq_mhz = 300 [MHz]
/sys/class/drm/card0/gt_max_freq_mhz = 1150 [MHz]
/sys/class/drm/card0/gt_boost_freq_mhz = 1150 [MHz]
/sys/kernel/debug/dri/0/i915_ring_freq_table: 300 350 400 450 500 550 600 650 700 750 800 850 900 950 1000 1050 1100 1150 [MHz]

+++ Wireless
bluetooth = on
wifi = on
wwan = off (software)

hci0(btusb) : bluetooth, not connected
wlp4s0(iwlwifi) : wifi, connected, power management = off
wwan0(cdc_mbim) : wwan, not connected

+++ Audio
/sys/module/snd_hda_intel/parameters/power_save = 1
/sys/module/snd_hda_intel/parameters/power_save_controller = Y

+++ PCIe Active State Power Management
/sys/module/pcie_aspm/parameters/policy = [default] performance powersave powersupersave (using BIOS preferences)

+++ Runtime Power Management
Device blacklist = 00:16.0 00:1f.2 00:1f.3 00:1f.4
Driver blacklist = amdgpu mei_me nouveau nvidia pcieport radeon

/sys/bus/pci/devices/0000:00:00.0/power/control = on (0x060000, Host bridge, skl_uncore)
/sys/bus/pci/devices/0000:00:02.0/power/control = on (0x030000, VGA compatible controller, i915)
/sys/bus/pci/devices/0000:00:08.0/power/control = on (0x088000, System peripheral, no driver)
/sys/bus/pci/devices/0000:00:14.0/power/control = on (0x0c0330, USB controller, xhci_hcd)
/sys/bus/pci/devices/0000:00:14.2/power/control = on (0x118000, Signal processing controller, intel_pch_thermal)
/sys/bus/pci/devices/0000:00:16.0/power/control = on (0x078000, Communication controller, mei_me)
/sys/bus/pci/devices/0000:00:1c.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.2/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.4/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1d.0/power/control = on (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1f.0/power/control = on (0x060100, ISA bridge, no driver)
/sys/bus/pci/devices/0000:00:1f.2/power/control = auto (0x058000, Memory controller, no driver)
/sys/bus/pci/devices/0000:00:1f.3/power/control = auto (0x040300, Audio device, snd_hda_intel)
/sys/bus/pci/devices/0000:00:1f.4/power/control = auto (0x0c0500, SMBus, i801_smbus)
/sys/bus/pci/devices/0000:00:1f.6/power/control = on (0x020000, Ethernet controller, e1000e)
/sys/bus/pci/devices/0000:02:00.0/power/control = on (0xff0000, Unassigned class [ff00], rtsx_pci)
/sys/bus/pci/devices/0000:04:00.0/power/control = on (0x028000, Network controller, iwlwifi)
/sys/bus/pci/devices/0000:05:00.0/power/control = on (0x010802, Non-Volatile memory controller, nvme)
/sys/bus/pci/devices/0000:06:00.0/power/control = on (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:07:00.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:07:01.0/power/control = on (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:07:02.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:07:04.0/power/control = on (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:08:00.0/power/control = on (0x088000, System peripheral, thunderbolt)
/sys/bus/pci/devices/0000:09:00.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0a:00.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0a:01.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0a:02.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0a:03.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0a:04.0/power/control = on (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:0b:00.0/power/control = on (0x0c0330, USB controller, xhci_hcd)
/sys/bus/pci/devices/0000:0d:00.0/power/control = on (0x0c0330, USB controller, xhci_hcd)

+++ USB
Autosuspend = enabled
Device whitelist = (not configured)
Device blacklist = (not configured)
Bluetooth blacklist = disabled
Phone blacklist = disabled
WWAN blacklist = disabled

Bus 006 Device 002 ID 17ef:3069 control = auto, autosuspend_delay_ms = 2000 -- Lenovo ThinkPad TBT3 LAN (r8152)
Bus 006 Device 001 ID 1d6b:0003 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 3.0 root hub (hub)
Bus 005 Device 003 ID 0b05:183c control = on, autosuspend_delay_ms = 2000 -- ASUSTek Computer, Inc. Xonar U7 MKII (snd-usb-audio, usbhid)
Bus 005 Device 002 ID 04b4:0101 control = on, autosuspend_delay_ms = 2000 -- Cypress Semiconductor Corp. Keyboard/Hub (usbhid)
Bus 005 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 2.0 root hub (hub)
Bus 004 Device 001 ID 1d6b:0003 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 3.0 root hub (hub)
Bus 003 Device 004 ID 17ef:3066 control = on, autosuspend_delay_ms = 2000 -- Lenovo ThinkPad Thunderbolt 3 Dock MCU (usbhid)
Bus 003 Device 007 ID 046d:c52b control = on, autosuspend_delay_ms = 2000 -- Logitech, Inc. Unifying Receiver (usbhid)
Bus 003 Device 006 ID 056e:00fc control = on, autosuspend_delay_ms = 2000 -- Elecom Co., Ltd (usbhid)
Bus 003 Device 005 ID 1a40:0101 control = auto, autosuspend_delay_ms = 0 -- Terminus Technology Inc. Hub (hub)
Bus 003 Device 003 ID 0424:2514 control = auto, autosuspend_delay_ms = 0 -- Microchip Technology, Inc. (formerly SMSC) USB 2.0 Hub (hub)
Bus 003 Device 002 ID 17ef:306a control = on, autosuspend_delay_ms = 2000 -- Lenovo ThinkPad Thunderbolt 3 Dock USB Audio (snd-usb-audio, usbhid)
Bus 003 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 2.0 root hub (hub)
Bus 002 Device 001 ID 1d6b:0003 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 3.0 root hub (hub)
Bus 001 Device 006 ID 138a:0097 control = auto, autosuspend_delay_ms = 2000 -- Validity Sensors, Inc. (no driver)
Bus 001 Device 005 ID 04f2:b5ce control = auto, autosuspend_delay_ms = 2000 -- Chicony Electronics Co., Ltd Integrated Camera (uvcvideo)
Bus 001 Device 004 ID 8087:0a2b control = auto, autosuspend_delay_ms = 2000 -- Intel Corp. (btusb)
Bus 001 Device 018 ID 1199:9079 control = auto, autosuspend_delay_ms = 2000 -- Sierra Wireless, Inc. Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A (cdc_mbim)
Bus 001 Device 002 ID 04f2:b5cf control = auto, autosuspend_delay_ms = 2000 -- Chicony Electronics Co., Ltd Integrated IR Camera (uvcvideo)
Bus 001 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms = 0 -- Linux Foundation 2.0 root hub (hub)

+++ Battery Features: Charge Thresholds and Recalibrate
natacpi = active (data, thresholds)
tpacpi-bat = active (recalibrate)
tp-smapi = inactive (ThinkPad not supported)

+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer = SMP
/sys/class/power_supply/BAT0/model_name = 01AV430
/sys/class/power_supply/BAT0/cycle_count = 235
/sys/class/power_supply/BAT0/energy_full_design = 57020 [mWh]
/sys/class/power_supply/BAT0/energy_full = 54170 [mWh]
/sys/class/power_supply/BAT0/energy_now = 53080 [mWh]
/sys/class/power_supply/BAT0/power_now = 0 [mW]
/sys/class/power_supply/BAT0/status = Unknown (threshold may prevent charging)

/sys/class/power_supply/BAT0/charge_start_threshold = 96 [%]
/sys/class/power_supply/BAT0/charge_stop_threshold = 100 [%]
tpacpi-bat.BAT0.forceDischarge = 0

Charge = 98.0 [%]
Capacity = 95.0 [%]

@linrunner
Copy link
Owner

linrunner commented Jun 9, 2020

The actual expected result when blacklisting a device isn't that the device (magically) works, but rather that power saving gets disabled, which is obviously the case (control=on means disabled, control=auto means enabled):

/sys/bus/pci/devices/0000:00:16.0/power/control = on (0x078000, Communication controller, mei_me)

However, the whole blacklisting is redundant, because TLP will set control=on for all PCIe devices on AC power anyway, it's the default config:

/etc/tlp.conf L0302: RUNTIME_PM_ON_AC="on"

What i do not understand at all is what the intel management engine (driver mei_me) has to do with the problem.

EDIT: your USB sound card(s) are blacklisted already (implicitly because of the usbhid driver):

Bus 005 Device 003 ID 0b05:183c control = on, autosuspend_delay_ms = 2000 -- ASUSTek Computer, Inc. Xonar U7 MKII (snd-usb-audio, usbhid)
Bus 003 Device 002 ID 17ef:306a control = on, autosuspend_delay_ms = 2000 -- Lenovo ThinkPad Thunderbolt 3 Dock USB Audio (snd-usb-audio, usbhid)

Please be so kind and post long outputs via https://gist.github.com/ (as requested in the bug report template). Thanks for your understanding

@plumlis
Copy link
Author

plumlis commented Jun 10, 2020

Sorry for the long outputs.

I know that RUNTIME_PM_ON_AC="on" is default setting and it shoud be work for all PCIe devices.

But actually it doesn't work on thunderbolt dock devices.

Screenshot-20200609201832-1163x954

You can see the "good" parts PCI devices, they are all about thunderblot3 dock.

no matter I tried tlp ac / tlp bat they are still on "Good". It seems TLP doesn't work on this.

@linrunner
Copy link
Owner

Powertop can generate an html report, you may view it in a browser too:

sudo powertop -r report.html

I suggest your create two reports:

  1. The exact state TLP produces on boot
  2. With your manual change(s) to solve the audio problem

Attach the results as files.

@plumlis
Copy link
Author

plumlis commented Jun 10, 2020

Here are the reports.

powertop.zip

with tlp naming is The exact state TLP produces on boot

another one is with manual change to solve the audio problem.

@linrunner
Copy link
Owner

OK, the difference is as expected after setting the device to "bad" manually:

echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control';

The question is why the blacklisting fails for both driver and device.

Please provide a trace for boot an AC power – via https://gist.github.com/ please.

https://linrunner.de/tlp/support/index.html#trace-mode

@plumlis
Copy link
Author

plumlis commented Jun 13, 2020

Thanks for your reply
Here is my logfile

https://gist.github.com/plumlis/8c4fb5197e38607542b8f5eb7e4e549e

@linrunner linrunner changed the title RUNTIME_PM_BLACKLIST doesn't works on ThunderBolt3 dock RUNTIME_PM_BLACKLIST doesn't work on ThunderBolt3 dock Jun 14, 2020
@linrunner
Copy link
Owner

So for your test case blacklisting works as designed. The device address based rule acts and no change is applied:

AC > BAT

21:11:38 plum-laptop tlp[13593]: set_runtime_pm(1).bloack_address: /sys/bus/pci/devices/0000:00:16.0 [0x078000]

BAT > AC

13 21:11:57 plum-laptop tlp[14175]: set_runtime_pm(0).bloack_address: /sys/bus/pci/devices/0000:00:16.0 [0x078000]

Compare with the other log entries with 'rc=0', where TLP actually writes to control (successful).

@linrunner
Copy link
Owner

But i asked you for the trace of a different test case i.e. booting on AC power. Can you provide that trace too?

@plumlis
Copy link
Author

plumlis commented Jun 14, 2020

Thank you for your reply.

Here are more logfiles

Boot on AC Power with Thunderblot3 Dock connected ( Blacklist on)

https://gist.github.com/plumlis/8e25a20777cfa02c467d76d68f03158f

Boot on AC Power with Thunderblot3 Dock connected ( Remove Blacklist )
https://gist.github.com/plumlis/9a814c44f95ccbcd3ce9949b0dc90e9f

Both of them don't change the status of device 0000:00:16.0, Still "Good" in Powertop.

@linrunner
Copy link
Owner

Both of your boot test cases hit a blacklist:

  1. [Blacklist on] Device in RUNTIME_PM_DRIVER

14 21:26:35 plum-laptop tlp[1871]: set_runtime_pm(0).bloack_address: /sys/bus/pci/devices/0000:00:16.0 [0x078000]

  1. [Remove Blacklist] But device driver mei_me still in RUNTIME_PM_DRIVER_BLACKLIST

14 21:34:50 plum-laptop tlp[1366]: set_runtime_pm(0).black_driver: /sys/bus/pci/devices/0000:00:16.0 [0x078000]

Conclusion: auto is in fact the kernel driver default and blacklisting just preserves it (works as designed).

Next step: remove mei_me from RUNTIME_PM_DRIVER_BLACKLIST, reboot and provide trace.

@plumlis
Copy link
Author

plumlis commented Jun 15, 2020

Actually I haven't enable RUNTIME_PM_DRIVER_BLACKLIST before
So I made these logs

With default RUNTIME_PM_DRIVER_BLACKLIST enabled ,"mei_me" included.
https://gist.github.com/plumlis/570bc3a167cc5edcd3a4bf7f6d04a7ec

RUNTIME_PM_DRIVER_BLACKLIST enabled, without "mei_me"
https://gist.github.com/plumlis/bcc91b06910d7ecea7e6e68c2c1c34f2

Finally, With

RUNTIME_PM_DRIVER_BLACKLIST="amdgpu nouveau nvidia pcieport radeon"

and devices/0000:00:16.0 is set to "Bad" in Powertop.

@linrunner
Copy link
Owner

Very well. If you consider this solved now, feel free to close.

Actually I haven't enable RUNTIME_PM_DRIVER_BLACKLIST before

Of course, but it's enabled by default and mei_me was added as a workaround for shutdown hangs. The line must be uncommented and changed to deviate from the intrinsic default. I know it's a bit unintuitive ...

@plumlis
Copy link
Author

plumlis commented Jun 16, 2020

Thank you for your help.
Issue sloved.

@plumlis plumlis closed this as completed Jun 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants