Re: sky2/pci issues on Gigabyte

Stephen Hemminger
2007-05-24T23:08:55Z

On Thu, 24 May 2007 15:48:23 -0700 (PDT)
Linus Torvalds <torvalds@linux-foundation.org> wrote:

>
>
> On Thu, 24 May 2007, Stephen Hemminger wrote:
> >
> > Looking at the 88e8056 PCI config values:
>
> I think you're looking at the wrong device.

I didn't expect it to work, just heading for the easy to hit difference first.

>
> The ones that matter are likely the PCI-X bridge, not the device. The
> device cannot reasonably screw up DMA (unless it's really scrogged, but
> then it wouldn't work under Vista either).

PCI-E

>
> So it's much more likely to be about device 00:1c.4, which is the bridge
> to PCI bus #4:
>
> 00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5
> Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
>
>
>
> Which I _think_ is (I tried to be careful, but..):
> So I'd look at its config space instead ("-" is Vista, "+" is Linux):

> -00: 86 80 47 28 07 00 10 00 02 00 04 06 08 00 81 00
> +00: 86 80 47 28 07 04 10 00 02 00 04 06 08 00 81 00
^--- INTX disable bit
Vista isn't enabling MSI, Linux is.
Try "nomsi"?
>
> 10: 00 00 00 00 00 00 00 00 00 04 04 00 b0 b0 00 00
>
> -20: 00 f7 f0 f8 f1 ff 01 00 00 00 00 00 00 00 00 00
> +20: 00 f7 f0 f8 01 80 01 80 00 00 00 00 00 00 00 00
24: BAR5 differnence ?
>
> -30: 00 00 00 00 40 00 00 00 00 00 00 00 10 01 04 00
> +30: 00 00 00 00 40 00 00 00 00 00 00 00 0b 01 04 00
3c: Assigned IRQ value

> -40: 10 80 41 01 c0 8f 00 00 00 00 10 00 11 24 11 05
> +40: 10 80 41 01 c0 8f 00 00 0f 00 11 00 11 24 11 05
48: PCI Express device control
Vista: 0000
Linux: 000f = advanced error reports enabled
4c: PCI Express device status
Vista: 0010
Linux: 0011 = correctable error detected
Driver doesn't clear error during boot, you can do it with
setpci but it doesn't fix problem. (I do have fix bug it is
not important for this discussion).

> 50: 40 00 11 30 60 05 a0 00 00 00 48 01 00 00 00 00
> 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>
> -80: 05 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> +80: 05 90 01 00 0c 10 e0 fe d1 41 00 00 00 00 00 00
These are the MSI setup registers which Vista isn't using.

> 90: 0d a0 00 00 58 14 01 50 00 00 00 00 00 00 00 00
> a0: 01 00 02 c8 00 00 00 00 00 00 00 00 00 00 00 00
> b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

So only difference I see is MSI, and advanced error reporting
bits.

--
Stephen Hemminger <shemminger@linux-foundation.org>