Bug 213873

Summary: Hotplug ethernet cable to runtime suspended Realtek NIC doesn't raise PCIe PME IRQ on Intel ADL
Product: Drivers Reporter: Kai-Heng Feng (kai.heng.feng)
Component: PCIAssignee: drivers_pci (drivers_pci)
Status: REOPENED ---    
Severity: normal    
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: mainline Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg with PCI and PCIe dynamic debug enabled
lspci on the bridge device before cable hotplug
lspci on the bridge device after cable hotplug
/proc/interrupts
lspci-vvnn

Description Kai-Heng Feng 2021-07-27 06:10:13 UTC
Both PCIe bridge and Realtek NIC are runtime suspended. When ethernet cable is plugged, PMEStatus and PMEPending are marked:
RootSta: PME ReqID 0200, PMEStatus+ PMEPending+

But the IRQ isn't raised:
$ cat /proc/interrupts  | grep PME
 145:          0          0          0          0          0          0          0          0          0          0          0          0   VMD-MSI  126  PCIe PME, aerdrv, pcie-dpc

So the hotplug event isn't detected.
Comment 1 Kai-Heng Feng 2021-07-27 06:13:45 UTC
Created attachment 298057 [details]
dmesg with PCI and PCIe dynamic debug enabled
Comment 2 Kai-Heng Feng 2021-07-27 06:14:32 UTC
Created attachment 298059 [details]
lspci on the bridge device before cable hotplug
Comment 3 Kai-Heng Feng 2021-07-27 06:14:51 UTC
Created attachment 298061 [details]
lspci on the bridge device after cable hotplug
Comment 4 Kai-Heng Feng 2021-07-27 06:15:09 UTC
Created attachment 298063 [details]
/proc/interrupts
Comment 5 Kai-Heng Feng 2021-07-27 06:15:27 UTC
Created attachment 298065 [details]
lspci-vvnn
Comment 6 Kai-Heng Feng 2021-07-29 14:49:51 UTC
BIOS will fix this.
Comment 7 Kai-Heng Feng 2021-08-09 10:41:35 UTC
The vendor told us that the PME is disabled intentionally.