PCI_BUSES_TO_SCAN off by 1?
Hi all,
Is there any reason we don't scan the last PCI bus on IA64? arch/ia64/kernel/pci.c has PCI_BUSES_TO_SCAN set to 255 instead of 256, which prevents the kernel from scanning bus 255. This causes is some problems since some of our machines (ie, the Itanium2 "tiger") place chipset registers in PCI config space on the last PCI bus. I've run with it set to 256 on the Lion and some other machines with no apparent problems.
Thanks,
Kevin
Quoted 6 lines
Is there any reason we don't scan the last PCI bus on IA64?
arch/ia64/kernel/pci.chasPCI_BUSES_TO_SCANset to 255 instead of 256, which prevents the kernel from scanning bus 255. This causes is some problems since some of our machines (ie, the Itanium2 "tiger") place chipset registers in PCI config space on the last PCI bus.
I agree, it sounds like an off-by-one error.
Along this line, I had been hoping that if we find any PCI root bridges via ACPI, we could skip the blind scanning of buses 0-255. It sounds like skipping the blind scan might break tiger, though. I assume it has root bridges in ACPI like BigSur does, but evidently these chipset registers on bus 255 aren't found that way? Having to do both ACPI and blind scans feels wrong somehow, but I can't point to a spec to back that up.
Bjorn
Quoted 11 lines
Hi all,
Is there any reason we don't scan the last PCI bus on IA64?
arch/ia64/kernel/pci.chasPCI_BUSES_TO_SCANset to 255 instead of 256, which prevents the kernel from scanning bus 255. This causes is some problems since some of our machines (ie, the Itanium2 "tiger") place chipset registers in PCI config space on the last PCI bus. I've run with it set to 256 on the Lion and some other machines with no apparent problems.
Quoted 2 lines
Thanks,
Kevin
I opened PV 866403 for this....
Quoted 7 lines
_______________________________________________
Linux-IA64 mailing list
[email protected]
http://lists.linuxia64.org/lists/listinfo/linux-ia64
Signature · 3 lines
Thanks Jack Steiner (651-683-5302) (vnet 233-5302) [email protected]
Quoted 7 lines · On Fri, 30 Aug 2002 15:11:20 -0600 Bjorn Helgaas <[email protected]> wrote:
Quoted 6 lines
Is there any reason we don't scan the last PCI bus on IA64?
arch/ia64/kernel/pci.chasPCI_BUSES_TO_SCANset to 255 instead of 256, which prevents the kernel from scanning bus 255. This causes is some problems since some of our machines (ie, the Itanium2 "tiger") place chipset registers in PCI config space on the last PCI bus.
Quoted 5 lines
I agree, it sounds like an off-by-one error.
Along this line, I had been hoping that if we find any PCI root bridges via ACPI, we could skip the blind scanning of buses 0-255. It sounds like skipping the blind scan might break tiger, though.
AFAIK, tiger defines PCI bus 255 as a host-bus bridge in ACPI.
Thanks,
Signature · 1 line
KOCHI, Takayoshi <[email protected]/[email protected]>
Quoted 2 lines · Bjorn Helgaas
Along this line, I had been hoping that if we find any PCI root bridges via ACPI, we could skip the blind scanning of buses 0-255.
To complete this thread, it looks like we can't do this. My i2000 reports PCI root bridges for buses 0, 1, 2, and 3 via ACPI. The 460GX chipset, including the CSRs for the AGP bridge, appears in config space on PCI bus 4. ACPI doesn't tell us about bus 4, so we have to do the blind scan to find that stuff.
Bjorn
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · Bjorn Helgaas
Bjorn> To complete this thread, it looks like we can't do this. My Bjorn> i2000 reports PCI root bridges for buses 0, 1, 2, and 3 via Bjorn> ACPI. The 460GX chipset, including the CSRs for the AGP Bjorn> bridge, appears in config space on PCI bus 4. ACPI doesn't Bjorn> tell us about bus 4, so we have to do the blind scan to find Bjorn> that stuff.
We no longer do the blind scan in 2.5.39 and it seems to work fine on the big sur I tested it on:
$ uname -v #33 SMP Sat Sep 28 10:58:07 PDT 2002 $ dmesg|fgrep 'Probing PCI' PCI: Probing PCI hardware on bus (00) PCI: Probing PCI hardware on bus (01) PCI: Probing PCI hardware on bus (02) PCI: Probing PCI hardware on bus (03) PCI: Probing PCI hardware on bus (04)
Could it be that your i2000 has old firmware? My big sur reports the following firmware version (via Stephane's smbiosview utility):
version : W460GXBS2.86E.0117C.P09.200108091154
--david