Re: VIA KT400 + Kernel 2.6.12 + IO-APIC + uhci_hcd = IRQ trouble

From: Michel Bouissou (michel_at_bouissou.net)
Date: 07/25/05

  • Next message: Paul Mackerras: "Re: ping^2: [PATCH] move /proc/ppc_htab creating self-contained in arch/ppc/ code"
    To: Alan Stern <stern@rowland.harvard.edu>
    Date:	Mon, 25 Jul 2005 20:06:16 +0200
    
    

    Le Dimanche 17 Juillet 2005 22:36, Alan Stern a écrit :
    >
    > To start out, try to determine whether each of the UHCI controllers really
    > is mapped to IRQ 21.

    I performed the tests you described, and here are the results I got.

    First an exact description of my USB hardware.

    My Gigabyte GA7-VAXP motherboard has 6 USB connectors.

    - 2 integrated within the MB connectors plate (close to the PS/2 kbd/mouse
    connectors). Those have no cables and aren't prone to cable problems...

    - 2 on a supplementary plate on the back. The plate and cables were provided
    with the MB.

    - 2 on the front of my (good quality) Antec case, connectors and cables
    provided with the Antec case.

    - The connectors on the supplementary plate and those on the case are
    connected to corresponding connectors on the motherboard.

    All these connectors used to work perfectly in kernel 2.4, and I choose them
    only for ergonomic/position reasons, usually:

    1/ The mouse (low-speed) connected to one of the MB integrated connectors

    2/ The scanner (full-speed) connected to the supplementary plate on the back

    3/ Removable devices (Camera, Flashdisks, full-speed or high-speed) usually
    connected to the case front-panel connectors.

    Regarding USB, the output of "lspci -vv" says :

    00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1
    Controller (rev 80) (prog-if 00 [UHCI])
            Subsystem: Giga-byte Technology GA-7VAX Mainboard
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
    Stepping- SERR- FastB2B-
            Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
    <TAbort- <MAbort- >SERR- <PERR-
            Latency: 32, cache line size 08
            Interrupt: pin A routed to IRQ 10
            Region 4: I/O ports at cc00 [size=32]
            Capabilities: [80] Power Management version 2
                    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA
    PME(D0+,D1+,D2+,D3hot+,D3cold+)
                    Status: D0 PME-Enable- DSel=0 DScale=0 PME+

    00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1
    Controller (rev 80) (prog-if 00 [UHCI])
            Subsystem: Giga-byte Technology GA-7VAX Mainboard
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
    Stepping- SERR- FastB2B-
            Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
    <TAbort- <MAbort- >SERR- <PERR-
            Latency: 32, cache line size 08
            Interrupt: pin B routed to IRQ 10
            Region 4: I/O ports at d000 [size=32]
            Capabilities: [80] Power Management version 2
                    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA
    PME(D0+,D1+,D2+,D3hot+,D3cold+)
                    Status: D0 PME-Enable- DSel=0 DScale=0 PME+

    00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1
    Controller (rev 80) (prog-if 00 [UHCI])
            Subsystem: Giga-byte Technology GA-7VAX Mainboard
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
    Stepping- SERR- FastB2B-
            Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
    <TAbort- <MAbort- >SERR- <PERR-
            Latency: 32, cache line size 08
            Interrupt: pin C routed to IRQ 10
            Region 4: I/O ports at d400 [size=32]
            Capabilities: [80] Power Management version 2
                    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA
    PME(D0+,D1+,D2+,D3hot+,D3cold+)
                    Status: D0 PME-Enable- DSel=0 DScale=0 PME+

    00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82) (prog-if 20
    [EHCI])
            Subsystem: Giga-byte Technology GA-7VAX Mainboard
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
    Stepping- SERR- FastB2B-
            Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
    <TAbort- <MAbort- >SERR- <PERR-
            Latency: 32, cache line size 10
            Interrupt: pin D routed to IRQ 11
            Region 0: Memory at e3009000 (32-bit, non-prefetchable) [size=256]
            Capabilities: [80] Power Management version 2
                    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA
    PME(D0+,D1+,D2+,D3hot+,D3cold+)
                    Status: D0 PME-Enable- DSel=0 DScale=0 PME-

    > Do this by booting with no USB devices plugged in,
    > and then plugging a full- or low-speed device (like a USB mouse) into each
    > of the ports in turn. Check to make sure it works in each port and that
    > that counts for IRQ 21 in /proc/interrupts increase each time. To make
    > this even more reliable you should run the test twice -- you don't have to
    > reboot in between. The first time, rmmod ehci-hcd before plugging in
    > anything; the second time modprobe ehci-hcd before plugging.

    I've booted without any USB devices and did the following:

    1/ rmmod ehci-hcd

    2/ Plugged the mouse in each and every USB connector I have, in turn. The
    mouse was working good on each of them. IRQ 21 showed nicely incrementing
    each time I plugged / unplugged or moved the plugged mouse. System was happy
    and didn't log anything abnormal.

    3/ Unplugged the mouse

    4/ modprobe ehci-hcd

    5/ Plugged the mouse. Immediately got "IRQ21: Nobody cared" and "Disabling IRQ
    21" messages.
    => Noticed IRQ21 count has suddenly been set to exactly 200000
    After this, the mouse was now behaving slowly and erratically (USB polled
    without interrupts ?)

    6/ Unplugged the mouse, then:
    - rmmod ehci-hcd
    - rmmod uhci-hcd
    - modprobe ehci-hcd

    7/ Plugged the mouse back. It was working happily again.

    8/ Keeping the mouse plugged:
    - modprobe ehci-hcd
    => Immediately got the IRQ21 insults again.
    => Noticed IRQ21 count has suddenly been set to exactly 400000
    Mouse behaviour was slow and erratical again.

    Repeated steps 6-8 using another USB socket, with the exact same results.

    What do you think about this ?

    Thanks again for your help.

    Cheers.

    -- 
    Michel Bouissou <michel@bouissou.net> OpenPGP ID 0xDDE8AC6E
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at  http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at  http://www.tux.org/lkml/
    

  • Next message: Paul Mackerras: "Re: ping^2: [PATCH] move /proc/ppc_htab creating self-contained in arch/ppc/ code"

    Relevant Pages

    • Re: Multitracking with multiple interfaces
      ... A laptop's connectors are not very ... > relief, along with the external drives, where rack-mount drive cases are ... I've seen 160 GB USB drives in a case for $75 or less. ... full sized connector and a separate controller than the built-in one. ...
      (rec.audio.pro)
    • Re: Need some help understanding USB Controllers on computer
      ... A controller controls 2 ports. ... The ports are the physical USB connectors on ... The enhanced controller is the USB 2.0 driver. ...
      (microsoft.public.windowsxp.general)
    • Re: how to make usb 2.0 device work on usb 2.0 speed
      ... If you look to the specification of your Motherboard, ... Be sure that you connect your device to your usb 2.0 connectors. ... Controller and USB 2.0 Root Hub Device working properly from Device ...
      (microsoft.public.win2000.hardware)
    • Re: a USB for the Apple II smoke test
      ... > merely a rewiring of the connectors. ... > A quick search doesn't turn up the voltage levels for USB, ... One level of incompatibility. ... > USB is a serial interface, but is it the same protocol as used ...
      (comp.sys.apple2)
    • Re: A7N8X V2 Deluxe MB and Atec P160 Case Front Panel Connection
      ... Thanks Paul I will have a look at the card you mentioned. ... >> The Antec case comes with one connector for each USB ... >> to the two USB 2 connectors but nothing for the firewire. ...
      (alt.comp.periphs.mainboard.asus)