Re: [PATCH] usb: xhci: Restore MSI/MSI-X reinitialization on resume for RESET_ON_RESUME hosts

From: Jie Deng

Date: Fri Jul 31 2026 - 03:41:24 EST


Thank you for your reply.

在 2026/7/30 12:48, Michal Pecio 写道:
To avoid putting PCI-specific code in xhci.c, I wonder if it would
still work if the disable/enable cycle is done by xhci_pci_resume()
before calling xhci_resume()?
The architecture is indeed cleaner. I will reply to you after conducting the test.
I wonder if it's an issue with those chips or a general PCIe or IRQ
resume bug in some particular host system? It looks like nobody else
complained about this old patch for three years.

I don't have ASM3042, but I do have ASM1042, ASM1142, ASM3142 and
also uPD720200, uPD720201 (rarely available for testing), uPD720202.
To be honest, I have never seen lost IRQs after resume here.
I was testing the S3 reproducibility issue on the ARM64 platform
 (uPD720201 requires manually adding the XHCI_RESET_ON_RESUME quirk).
 Next, I will conduct a comparison verification on the x86 platform,
 which will take some time.
How often is this supposed to happen, how exactly is it reproduced?
Approximately 200 iterations of S3 were needed to consistently reproduce the issue.
The S3 test script is as follows:
#! /bin/bash
#
for i in $(seq 1 $1); do
    echo "the $i th s3" > /dev/ttyAMA0
    echo "the $i th s3"
    rtcwake -m mem -s 20
    sleep 15
done