On 08/29/2013 04:31 PM, Martin MOKREJŠ wrote:
Actually, there is some new bug I haven't seen before (this is 3.10.9 kernel).
First of all, I see my TI XHCI controller does not use MSI-X anymore, will have
to check my .config why is it so.
Why are you saying that xhci does not use MSI-X?
Can you send me the entire lspci -vv output for your xhci host controllers?
The lines that interest me are the Capabilities: MSI: and Capabilities:
MSI-X: so you can send just those.
If there is a '+' near to Enabled then that means that your xhci uses
MSI or MSI-X accordingly.
If you have one xhci host controller (and not two), from your
/proc/interrupts output i think that it uses MSI-X because if it didn't
there could not had been assigned two irqs to it. I say that, because
the xhci (as i saw from the implementation of xhci_setup_msi()) it would
have requested one irq if xhci driver had falled back to MSI after a
failure to setup MSI-X.
Second, it should have IRQ 45 and 46 according to dmesg. But lspci reports
IRQ 16 is used by TI XHCI controller. Funny! I would say this is linux-pci issue
but provided XHCI_HCD is special and manages interrupts somewhat on its own you may
look into that first before we ask linux-pci developers.
Maybe here lspci code had to check if MSI is enabled and in that case
print the irq numbers of the msi descriptors and not the irq field of
the pci_dev structure.
0b:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) (prog-if 30 [XHCI])
Subsystem: Dell Device 04b3
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
# cat /proc/interrupts
CPU0
0: 22 IO-APIC-edge timer
1: 16 IO-APIC-edge i8042
8: 55 IO-APIC-edge rtc0
9: 0 IO-APIC-fasteoi acpi
12: 5090314 IO-APIC-edge i8042
16: 66 IO-APIC-fasteoi ehci_hcd:usb1
23: 28835 IO-APIC-fasteoi ehci_hcd:usb2
40: 0 PCI-MSI-edge pciehp
41: 15985 PCI-MSI-edge i915
42: 14 PCI-MSI-edge mei_me
43: 227029 PCI-MSI-edge ahci
44: 208160 PCI-MSI-edge enp5s0
45: 729889 PCI-MSI-edge xhci_hcd
46: 0 PCI-MSI-edge xhci_hcd
47: 940 PCI-MSI-edge snd_hda_intel
48: 1 PCI-MSI-edge iwlwifi
NMI: 21635 Non-maskable interrupts
LOC: 7545378 Local timer interrupts
SPU: 0 Spurious interrupts
PMI: 21635 Performance monitoring interrupts
IWI: 1583914 IRQ work interrupts
RTR: 0 APIC ICR read retries
RES: 0 Rescheduling interrupts
CAL: 0 Function call interrupts
TLB: 0 TLB shootdowns
TRM: 0 Thermal event interrupts
THR: 0 Threshold APIC interrupts
MCE: 0 Machine check exceptions
MCP: 254 Machine check polls
ERR: 0
MIS: 0
# dmesg | head -n 2
[ 0.000000] Linux version 3.10.9-default-pciehp (root@vostro) (gcc version 4.6.3 (Gentoo 4.6.3 p1.8, pie-0.5.2) ) #8 SMP Tue Aug 27 01:37:03 MEST 2013
[ 0.000000] Command line: root=/dev/sda5 slub_debug=AFPZ pciehp.pciehp_debug=1 pciehp_debug=1
Martin
regards,
ksenia
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html