From: Bjorn Helgaas <helgaas@kernel.org>
To: Paul Menzel <pmenzel@molgen.mpg.de>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
linux-pci@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: Dell XPS 13 9360: Two PCI devices with disabled power management by default
Date: Fri, 1 Mar 2024 15:51:48 -0600 [thread overview]
Message-ID: <20240301215148.GA409221@bhelgaas> (raw)
In-Reply-To: <b1861a8e-27a4-4493-9f4c-2a6cf3575c4b@molgen.mpg.de>
On Fri, Mar 01, 2024 at 12:32:12PM +0100, Paul Menzel wrote:
> Dear Linux folks,
>
>
> I noticed on the Dell XPS 13 9360 some devices do not have power management
> enabled by default. From PowerTOP:
>
> Bad Runtime PM for PCI Device Intel Corporation Sunrise
> Point-LP PCI Express Root Port #1
> Bad Runtime PM for PCI Device Intel Corporation Sunrise
> Point-LP LPC Controller
I don't know what this "Bad" is based on, so I don't know where to
look for something Linux might be doing. I don't see any code that
mentions 9d10 or 9d58 Device IDs in relation to power.
> These are the two devices below:
>
> 1. 00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI
> Express Root Port #1 [8086:9d10] (rev f1)
> 2. 00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-LP LPC
> Controller [8086:9d58] (rev 21)
>
> $ sudo dmesg | grep -e 9d10 -e 9d58
> [ 0.200876] pci 0000:00:1c.0: [8086:9d10] type 01 class 0x060400 PCIe
> Root Port
> [ 0.202637] pci 0000:00:1f.0: [8086:9d58] type 00 class 0x060100
> conventional PCI endpoi
>
> Is that a decision made by the system manufacturer or should the Linux
> kernel enable power management by default?
The complete dmesg log might have a clue. I try to encourage quirks
to log a breadcrumb when they disable features to workaround a bug or
something. But code like pci_bridge_d3_possible() is not structured
that way and doesn't leave clues like that.
But possibly the dmesg log and "sudo lspci -vv" output would enable us
to figure something out.
Bjorn
> $ lspci -tvnn
> -[0000:00]-+-00.0 Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor
> Host Bridge/DRAM Registers [8086:5904]
> +-02.0 Intel Corporation HD Graphics 620 [8086:5916]
> +-04.0 Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core
> Processor Thermal Subsystem [8086:1903]
> +-14.0 Intel Corporation Sunrise Point-LP USB 3.0 xHCI
> Controller [8086:9d2f]
> +-14.2 Intel Corporation Sunrise Point-LP Thermal subsystem
> [8086:9d31]
> +-15.0 Intel Corporation Sunrise Point-LP Serial IO I2C
> Controller #0 [8086:9d60]
> +-15.1 Intel Corporation Sunrise Point-LP Serial IO I2C
> Controller #1 [8086:9d61]
> +-16.0 Intel Corporation Sunrise Point-LP CSME HECI #1
> [8086:9d3a]
> +-1c.0-[01-39]----00.0-[02-39]--+-00.0-[03]--
> | +-01.0-[04-38]--
> | \-02.0-[39]----00.0 Intel
> Corporation DSL6340 USB 3.1 Controller [Alpine Ridge] [8086:15b5]
> +-1c.4-[3a]----00.0 Qualcomm Atheros QCA6174 802.11ac Wireless
> Network Adapter [168c:003e]
> +-1d.0-[3b]----00.0 SK hynix PC300 NVMe Solid State Drive 512GB
> [1c5c:1284]
> +-1f.0 Intel Corporation Sunrise Point-LP LPC Controller
> [8086:9d58]
> +-1f.2 Intel Corporation Sunrise Point-LP PMC [8086:9d21]
> +-1f.3 Intel Corporation Sunrise Point-LP HD Audio [8086:9d71]
> \-1f.4 Intel Corporation Sunrise Point-LP SMBus [8086:9d23]
> $ lspci -nn
> 00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core
> Processor Host Bridge/DRAM Registers [8086:5904] (rev 02)
> 00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 620
> [8086:5916] (rev 02)
> 00:04.0 Signal processing controller [1180]: Intel Corporation Xeon E3-1200
> v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [8086:1903] (rev 02)
> 00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-LP USB 3.0
> xHCI Controller [8086:9d2f] (rev 21)
> 00:14.2 Signal processing controller [1180]: Intel Corporation Sunrise
> Point-LP Thermal subsystem [8086:9d31] (rev 21)
> 00:15.0 Signal processing controller [1180]: Intel Corporation Sunrise
> Point-LP Serial IO I2C Controller #0 [8086:9d60] (rev 21)
> 00:15.1 Signal processing controller [1180]: Intel Corporation Sunrise
> Point-LP Serial IO I2C Controller #1 [8086:9d61] (rev 21)
> 00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-LP
> CSME HECI #1 [8086:9d3a] (rev 21)
> 00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express
> Root Port #1 [8086:9d10] (rev f1)
> 00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express
> Root Port #5 [8086:9d14] (rev f1)
> 00:1d.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express
> Root Port #9 [8086:9d18] (rev f1)
> 00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-LP LPC Controller
> [8086:9d58] (rev 21)
> 00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-LP PMC
> [8086:9d21] (rev 21)
> 00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD Audio
> [8086:9d71] (rev 21)
> 00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus [8086:9d23]
> (rev 21)
> 01:00.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3 Bridge
> [Alpine Ridge 2C 2015] [8086:1576]
> 02:00.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3 Bridge
> [Alpine Ridge 2C 2015] [8086:1576]
> 02:01.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3 Bridge
> [Alpine Ridge 2C 2015] [8086:1576]
> 02:02.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3 Bridge
> [Alpine Ridge 2C 2015] [8086:1576]
> 39:00.0 USB controller [0c03]: Intel Corporation DSL6340 USB 3.1 Controller
> [Alpine Ridge] [8086:15b5]
> 3a:00.0 Network controller [0280]: Qualcomm Atheros QCA6174 802.11ac
> Wireless Network Adapter [168c:003e] (rev 32)
> 3b:00.0 Non-Volatile memory controller [0108]: SK hynix PC300 NVMe Solid
> State Drive 512GB [1c5c:1284]
next prev parent reply other threads:[~2024-03-01 21:51 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-01 11:32 Dell XPS 13 9360: Two PCI devices with disabled power management by default Paul Menzel
2024-03-01 21:51 ` Bjorn Helgaas [this message]
2024-03-02 16:19 ` Paul Menzel
2024-03-02 16:22 ` Arjan van de Ven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240301215148.GA409221@bhelgaas \
--to=helgaas@kernel.org \
--cc=bhelgaas@google.com \
--cc=linux-pci@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=pmenzel@molgen.mpg.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox