[coreboot] DL145 G1 with dual dualcore CPU using coreboot ?
Oskar Enoksson
enok at lysator.liu.se
Thu Aug 12 16:15:57 CEST 2010
Myles Watson wrote:
>
>
>> Ok thank you for all your help. I can boot and run Linux 2.6.33 now and
>> I see all four CPU cores in /proc/cpuinfo. I compiled and added SeaBIOS
>> as payload for coreboot and it works. I also compiled and added GPXE to
>> the image and was able to PXE-boot. However, there are a few problems:
>>
>> - The server has 4x1GB memory, but I only see 1GB. Why? What can I do?
>>
> Send the complete boot log as an attachment and see if anyone can spot the
> reason.
>
See attachment for my coreboot output. The server has 4x512MB (not
4x1GB) memory, and only half the memory is visible. The
/var/log/messages in Linux says:
Scanning NUMA topology in Northbridge 24
Number of physical nodes 2
Node 0 MemBase 0000000000000000 Limit 000000003ffef000
Skipping disabled node 1
Using node hash shift of 63
I can see all four cores in /proc/cpuinfo and I can use them, but
"numactl --hardware" shows that there is only one numa node detected, so
something is wrong from BIOS.
>> - There is something wrong with the interrupts. When the kernel is
>> initializing the ethernet interfaces it says
>>
>> "Determining IP information for eth0...Disabling IRQ #19"
>>
> Did you modify mptable.c and irq_tables.c for your board? The IRQ routing
> is probably different than what the s2881 has. You can run getpir and look
> in /proc/interrupts and lspci when you boot with the factory BIOS.
>
I'm not sure how those numbers and bitmasks in mptables.c, lspci,
/proc/interrupts and irq_table.c correlate, but I'll keep trying to
figure it out ... I have run getpir and mptable utilitys, but taking the
output from these utilitys and putting it into the source tree will not
make the server boot. I guess I need to study more exactly how this kind
of hardware works, and how to interpret the tables and outputs from lspci.
My latest dl145 sourcecode directory is at the following URL in case
someone is interested or could give me a hint:
http://www.lysator.liu.se/~enok/dl145_g1/
The output of lspci and /proc/interrupts from a factory BIOS DL145G1
(with two single-core Opterons) looks like this:
[root at cl200 ~]# lspci -tv
-[0000:00]-+-01.0-[0000:03]--
+-01.1 Advanced Micro Devices [AMD] AMD-8131 PCI-X IOAPIC
+-02.0-[0000:02]--+-03.0 Broadcom Corporation NetXtreme
BCM5704 Gigabit Ethernet
| \-03.1 Broadcom Corporation NetXtreme
BCM5704 Gigabit Ethernet
+-02.1 Advanced Micro Devices [AMD] AMD-8131 PCI-X IOAPIC
+-06.0-[0000:01]--+-00.0 Advanced Micro Devices [AMD]
AMD-8111 USB
| +-00.1 Advanced Micro Devices [AMD]
AMD-8111 USB
| \-04.0 ATI Technologies Inc Rage XL
+-07.0 Advanced Micro Devices [AMD] AMD-8111 LPC
+-07.1 Advanced Micro Devices [AMD] AMD-8111 IDE
+-07.3 Advanced Micro Devices [AMD] AMD-8111 ACPI
+-18.0 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
+-18.1 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
+-18.2 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
+-18.3 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
+-19.0 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
+-19.1 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
+-19.2 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
\-19.3 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
[root at cl200 ~]# cat /proc/interrupts
CPU0 CPU1
0: 125 0 IO-APIC-edge timer
1: 13 27 IO-APIC-edge i8042
4: 0 1 IO-APIC-edge
8: 0 0 IO-APIC-edge rtc0
9: 0 0 IO-APIC-fasteoi acpi
14: 5819 6709 IO-APIC-edge ide0
15: 0 0 IO-APIC-edge ide1
19: 0 0 IO-APIC-fasteoi ohci_hcd:usb1, ohci_hcd:usb2
31: 1220580 993 IO-APIC-fasteoi eth0
NMI: 0 0 Non-maskable interrupts
LOC: 997597 807576 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 0 0 Performance monitoring interrupts
PND: 0 0 Performance pending work
RES: 49543 65171 Rescheduling interrupts
CAL: 55 85 Function call interrupts
TLB: 2639 7498 TLB shootdowns
TRM: 0 0 Thermal event interrupts
THR: 0 0 Threshold APIC interrupts
MCE: 0 0 Machine check exceptions
MCP: 82 82 Machine check polls
ERR: 0
MIS: 0
The same output from my dualcore DL145G1 with coreboot (booted with
irqpoll kernel argument) looks as follows:
[root at cl199 ~]# lspci -tv
-[0000:00]-+-01.0-[0000:01]----01.0 MYRICOM Inc. Myrinet 2000 Scalable
Cluster Interconnect
+-01.1 Advanced Micro Devices [AMD] AMD-8131 PCI-X IOAPIC
+-02.0-[0000:02]--+-03.0 Broadcom Corporation NetXtreme
BCM5704 Gigabit Ethernet
| \-03.1 Broadcom Corporation NetXtreme
BCM5704 Gigabit Ethernet
+-02.1 Advanced Micro Devices [AMD] AMD-8131 PCI-X IOAPIC
+-03.0-[0000:03]--+-00.0 Advanced Micro Devices [AMD]
AMD-8111 USB
| +-00.1 Advanced Micro Devices [AMD]
AMD-8111 USB
| \-04.0 ATI Technologies Inc Rage XL
+-04.0 Advanced Micro Devices [AMD] AMD-8111 LPC
+-04.1 Advanced Micro Devices [AMD] AMD-8111 IDE
+-04.2 Advanced Micro Devices [AMD] AMD-8111 SMBus 2.0
+-04.3 Advanced Micro Devices [AMD] AMD-8111 ACPI
+-18.0 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
+-18.1 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
+-18.2 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
+-18.3 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
+-19.0 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
+-19.1 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
+-19.2 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
\-19.3 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
[root at cl199 ~]# cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
0: 218 0 0 0 IO-APIC-edge timer
1: 0 0 0 42 IO-APIC-edge i8042
2: 0 0 0 0 XT-PIC-XT cascade
4: 0 0 0 1 IO-APIC-edge
6: 0 0 0 3 IO-APIC-edge floppy
8: 0 0 0 0 IO-APIC-edge rtc0
12: 0 0 0 4 IO-APIC-edge i8042
14: 704 0 3 11547 IO-APIC-edge ide0
15: 0 0 0 0 IO-APIC-edge ide1
19: 0 1132 518 941 IO-APIC-fasteoi
ohci_hcd:usb1, ohci_hcd:usb2
28: 0 0 0 0 IO-APIC-fasteoi eth0
NMI: 0 0 0 0 Non-maskable interrupts
LOC: 895964 895791 895716 895639 Local timer interrupts
SPU: 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 Performance
monitoring interrupts
PND: 0 0 0 0 Performance pending work
RES: 2850 3860 8762 3934 Rescheduling interrupts
CAL: 106 42 87 104 Function call interrupts
TLB: 275 878 275 831 TLB shootdowns
TRM: 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 Threshold APIC interrupts
MCE: 0 0 0 0 Machine check exceptions
MCP: 3 3 3 3 Machine check polls
ERR: 0
MIS: 0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: boot-2.log
Type: text/x-log
Size: 20405 bytes
Desc: not available
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20100812/1bf178c9/attachment.log>
More information about the coreboot
mailing list