Re: Problems with USB from late 2.3.x kernels and BP6 in MPS 1.4 mode

From: Harold Oga (ogah@cadvision.com)
Date: Sat Feb 12 2000 - 15:12:25 EST

  • Next message: nsmith: "bootup Problems 2.3.43"

    On Sat, Feb 12, 2000 at 09:46:57AM -0800, Linus Torvalds wrote:
    >It may simply be due to buggy MP tables that Windows knows about (or where
    >the bugs are such that it just happens to work under Windows - not unheard
    >of, as Windows and WNT tend to be the only things that gets tested).
    >
    >However, it may also just be the Linux MP table parsing. The code tries to
    >find an exact match, and everybody thinks that that is what it should do,
    >but there has certainly been tables where a fuzzy match of the PCI irq pin
    >is called for. Maybe this is one of those cases.
    >
    >It would be good to compile a list of machines, with BIOS, manufacturer
    >and southbridge information, and see what the pattern is.
    >
    >Alternatively, there's pre-patch-2.3.44-9 on ftp.kernel.org which corrects
    >a silly oversight in the fuzzy matching in io_apic.c (the code was there
    >to do the fuzzy matching, but the fuzzy match was never actually used).
    >That may or may not help.

    Hi Linus,
       Ok, pre-patch-2.3.44-9 seems to fix my problem with USB not working with
    MPS 1.4. One thing I noticed was that with 2.3.42 in MPS 1.4 mode, uhci was
    being forced down to irq 5, whereas Win2k was assigning it irq 19. With
    pre-patch 2.3.44-9 in MPS 1.4 mode, uhci is assigned irq19 as well.

    I had a problem with pre-patch 2.3.44-9 not compiling. I had to patch
    /usr/src/linux/arch/i386/kernel/pci-pc.c to get it to compile, but I'm not
    sure if what I changed was correct or not. Here's a diff of my changes:

    --- linux/arch/i386/kernel/pci-pc.c.orig Sat Feb 12 12:01:40 2000
    +++ linux/arch/i386/kernel/pci-pc.c Sat Feb 12 12:01:57 2000
    @@ -966,7 +966,7 @@
     
     struct pci_fixup pcibios_fixups[] = {
             { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82451NX, pci_fixup_i450nx },
    - { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454GX, pci_fixup_i450gx },
    + { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82450GX, pci_fixup_i450gx },
             { PCI_FIXUP_HEADER, PCI_VENDOR_ID_RCC, PCI_DEVICE_ID_RCC_HE, pci_fixup_rcc },
             { PCI_FIXUP_HEADER, PCI_VENDOR_ID_RCC, PCI_DEVICE_ID_RCC_LE, pci_fixup_rcc },
             { PCI_FIXUP_HEADER, PCI_VENDOR_ID_COMPAQ, PCI_DEVICE_ID_COMPAQ_6010, pci_fixup_compaq },

    -Harold

    -- 
    I. Harold Oga                                   | Email: ogah@cadvision.com
    Systems Enterprises Ltd.                        | Voice: (403) 244 9738
    #211, 1624 16th Ave SW                          |
    Calgary, AB, T3C 1A1                            | "Life Sucks, Deal with it!!"
    

    - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



    This archive was generated by hypermail 2b29 : Sat Feb 12 2000 - 16:22:53 EST