The build tools will create on static.c that includes static devices.
The hypertransport_scan_chain() will take some static devices from the device list and match them with probed device. So the probed device can get extra setting from the static device. The device num is adjusted according to ht unit base id too at that time.
YH
-----Original Message----- From: linuxbios-bounces@linuxbios.org [mailto:linuxbios-bounces@linuxbios.org] On Behalf Of Ed Swierk Sent: Thursday, October 05, 2006 12:01 PM To: LinuxBIOS Subject: [LinuxBIOS] Configuring PCI devices
I'm working on porting LinuxBIOS to an AM2+MCP55-based mainboard (DFI LANParty UT NF590) using the latest AMD Rev F and MCP55 southbridge code from svn.
I replaced most of the CK804 PCI device IDs with their MCP55 counterparts, and put the following in my mainboard Config.lb:
chip northbridge/amd/amdk8/root_complex device apic_cluster 0 on chip cpu/amd/socket_AM2 device apic 0 on end end end device pci_domain 0 on chip northbridge/amd/amdk8 #mc0 device pci 18.0 on # northbridge # devices on link 0, link 0 == LDT 0 chip southbridge/nvidia/ck804 device pci a.0 on end device pci a.1 on end device pci c.0 on end end end # device pci 18.0 device pci 18.0 on end # Link 1 device pci 18.0 on end # Link 2 device pci 18.1 on end device pci 18.2 on end device pci 18.3 on end end #mc0 end # pci_domain end # root_complex
Obviously this is not quite right, since I get the following output during boot:
Jumping to LinuxBIOS. LinuxBIOS-2.0.0-FILO Thu Oct 5 11:34:43 PDT 2006 booting... Enumerating buses... APIC_CLUSTER: 0 enabled PCI_DOMAIN: 0000 enabled PCI: 00:18.3 siblings=1 CPU: APIC: 00 enabled CPU: APIC: 01 enabled PCI: pci_scan_bus for bus 00 PCI: 00:18.0 [1022/1100] enabled PCI: 00:18.1 [1022/1101] enabled PCI: 00:18.2 [1022/1102] enabled PCI: 00:18.3 [1022/1103] enabled PCI: 00:1e.0 [10de/0369] enabled PCI: 00:1f.0 [10de/0360] enabled PCI: 00:1f.1 [10de/0368] enabled PCI: 00:1f.2 [10de/036a] enabled Disabling static device: PCI: 00:0a.0 PCI: pci_scan_bus for bus 00 PCI: 00:00.0 [10de/036c] enabled PCI: 00:00.1 [10de/036d] enabled PCI: 00:0a.0 PCI: 00:0a.1 PCI: 00:0c.0 PCI: Left over static devices. Check your Config.lb
I'm pretty fuzzy on what exactly belongs in the device/chip section of the Config.lb, and how this affects the PCI device enumeration during boot (e.g. how did device 10de:036c get mapped to 00:00.0?). Is there a document that explains this?
I've attached the output of lspci (using the factory BIOS), as well as my modified pci_ids.h and cache_as_ram_auto.c.
Any pointers would be appreciated.
--Ed