Re: Help: DGE-560T not recognized by Linux

From: Stephen Hemminger
Date: Sat Feb 18 2006 - 19:30:15 EST


On Sat, 18 Feb 2006 22:29:46 +0300
Sergey Vlasov <vsu@xxxxxxxxxxx> wrote:

> On Sat, 18 Feb 2006 10:01:26 -0700 Brian Hall wrote:
>
> > On Fri, 17 Feb 2006 23:48:41 -0800
> > Andrew Morton <akpm@xxxxxxxx> wrote:
> > > Brian Hall <brihall@xxxxxxxxxx> wrote:
> > > > I see that the sky2 driver in 2.6.16rc4 lists my card, but for some
> > > > reason it fails to access the card, maybe because I have an ULi
> > > > chipset?
> > > >
> > > > Feb 17 23:18:46 syrinx sky2 0000:02:00.0: can't access PCI config
> > > > space
> > >
> > > Looks like something died way down in the PCI bus config space
> > > read/write operations. I don't know what would cause that. You
> > > could perhaps play with `pci=conf1', `pci=conf2', etc as per
> > > Documentation/kernel-parameters.txt.
> >
> > OK, I tried all these pci= options, plus acpi=off, to no effect:
> > conf1, conf2, nommconf, biosirq, noacpi, routeirq, nosort, rom,
> > lastbus=2, assign-busses, usepirqmask acpi=off
> >
> > Also tried adjusting PCIe-related stuff in the BIOS (underclocking PCIe
> > from 100 to 70 and adjusting Northbridge options). No change.
>
> Most likely it fails here:
>
> err = pci_write_config_dword(hw->pdev, PEX_UNC_ERR_STAT,
> 0xffffffffUL);
> if (err)
> goto pci_err;
>
> PEX_UNC_ERR_STAT is 0x104; this register is outside of the standard
> 256-byte PCI configuration space, and is reachable only via the MMCONFIG
> access mechanism. Seems that kernel is not using MMCONFIG for some
> reason; you mentioned that you have CONFIG_PCI_MMCONFIG=y in kernel
> config, so it looks like your BIOS does not provide proper MCFG table.
> Full dmesg output might give some clues.

The problem can also be caused by buggy BIOS's that don't report
proper values for mmconfig space. There is some code in mmconfig.c that
tries to handle that. It might not handle what ever your system is reporting.
Andi Kleen seems to be the last person involved and might be able to help.

It would be useful to add some printk's to mmconfig to dump out the table
after it discovers the table.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/