[coreboot] Quick CK804 PCI device numbering question

Jonathan A. Kollasch jakllsch at kollasch.net
Tue Jan 20 22:36:32 CET 2015


On Tue, Jan 20, 2015 at 03:28:45PM -0600, Timothy Pearson wrote:
> On 01/20/2015 01:55 PM, Timothy Pearson wrote:
> >All,
> >
> >I have been working on porting Coreboot to a new CK804-based K10
> >mainboard; it warm boots but will not cold boot due to IRQ/MSI
> >configuration issues.
> >
> >While tracing the IRQ problem I noticed that the CK804 PCI function
> >numbers change from the proprietary BIOS to Coreboot:
> >
> >Proprietary:
> >-[0000:00]-+-00.0 NVIDIA Corporation CK804 Memory Controller [10de:005e]
> >+-01.0 NVIDIA Corporation CK804 ISA Bridge [10de:0051]
> >+-01.1 NVIDIA Corporation CK804 SMBus [10de:0052]
> >...etc...
> >
> >Coreboot:
> >-[0000:00]-+-01.0 NVIDIA Corporation CK804 Memory Controller [10de:005e]
> >+-02.0 NVIDIA Corporation CK804 ISA Bridge [10de:0051]
> >+-02.1 NVIDIA Corporation CK804 SMBus [10de:0052]
> >
> >This, in turn, causes Linux to not detect the CK804 root bridge.
> >
> >Has anyone else seen this with the CK804 chipset? Is there a magic
> >register somewhere that configures the CK804 to use the "correct" PCI
> >function numbers?
> >
> >The only pertinent quirk of this mainboard is that Asus put the CK804 on
> >HT link 1, not 0 or 2 as is more common.
> >
> >Thanks!
> >
> 
> Looks like I was writing too quickly..."function number" above
> should be "device number".  Nothing responds to a PCI vendor ID
> probe at PCI_DEV(0,0,0) which seems to indicate the CK804 itself has
> renumbered its internal devices, but I don't currently know why or
> how.

Coreboot supports dual-ck804 boards, perhaps the ck804 got enumerated at the
secondary offset? (starting at something like bus 0x40 or 0x80)

	Jonathan Kollasch



More information about the coreboot mailing list