Eric,
After update raminit.c now MB can boot into linuxbios.
The s2880 has six memory slot: 4 for CPU0 ,and 2 for CPU 1. I can only init 4 for CPU0. I have tried: #cp raminit.c raminit1.c and rename all function in the raminit1.c to xxxxx_1 copy genric_sdram.c to generic_sdram1.c in the sdram dir. Also add the calling function in auto1.c. and can not pass the test.
Any advice on init RAM on second cpu northbridge?
I have try to enable SMP support in LinuxBIOS and can not compile it through. Miss severl function. (Spin for Only CPU and start second CPU.S). When do you plan to add it? Or can tell me your idea and I can add it right now.
Regards
Yinghai Lu
LinuxBIOS-1.1.02.0Fallback Tue Jun 24 02:16:37 EDT 2003 starting...
LinuxBIOS-1.1.02.0Fallback Tue Jun 24 02:16:37 EDT 2003 starting... Bootstrap cpu setting up coherent ht domain.... done. PCI: 00:01.00 PCI: 00:01.01 PCI: 00:02.00 PCI: 00:02.01 PCI: 00:03.00 PCI: 00:04.00 PCI: 00:04.01 PCI: 00:04.02 PCI: 00:04.03 PCI: 00:04.05 PCI: 00:04.06 PCI: 00:18.00 PCI: 00:18.01 PCI: 00:18.02 PCI: 00:18.03 PCI: 00:19.00 PCI: 00:19.01 PCI: 00:19.02 PCI: 00:19.03 SMBus controller enabled Ram1 setting up CPU0 northbridge registers done. Ram2 Ram3 dcl: 08018000 Initializing memory: done Ram4 Ram5 Ram6
dimm: 50 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff dimm: 51 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff dimm: 52 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff dimm: 53 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff dimm: 54 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff dimm: 55 00: 80 08 07 0d 0a 01 48 00 04 60 70 02 82 08 08 01 10: 0e 04 0c 01 02 26 c0 75 70 00 00 48 30 48 2a 40 20: 80 80 45 45 00 00 00 00 00 3c 48 30 2d 55 64 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 a2 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 03 11 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: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff DRAM fill: 00000000-00001000 00001000 DRAM filled DRAM verify: 00000000-00001000 00001000 DRAM verified Copying LinuxBIOS to ram. Jumping to LinuxBIOS. LinuxBIOS-1.1.02.0Fallback Tue Jun 24 02:16:37 EDT 2003 booting... Finding PCI configuration type. PCI: Using configuration type 1 Enumerating buses...PCI: pci_scan_bus for bus 0 PCI: 00:01.0 [1022/7450] PCI: 00:01.1 [1022/7451] PCI: 00:02.0 [1022/7450] PCI: 00:02.1 [1022/7451] PCI: 00:03.0 [1022/7460] PCI: 00:04.0 [1022/7468] ops PCI: 00:04.0 [1022/7468] PCI: 00:04.1 [1022/7469] ops PCI: 00:04.1 [1022/7469] PCI: 00:04.2 [1022/746a] PCI: 00:04.3 [1022/746b] ops PCI: 00:04.3 [1022/746b] PCI: 00:04.5 [1022/746d] PCI: 00:04.6 [1022/746e] PCI: 00:18.0 [1022/1100] PCI: 00:18.1 [1022/1101] PCI: 00:18.2 [1022/1102] PCI: 00:18.3 [1022/1103] PCI: 00:19.0 [1022/1100] PCI: 00:19.1 [1022/1101] PCI: 00:19.2 [1022/1102] PCI: 00:19.3 [1022/1103] PCI: pci_scan_bus for bus 1 PCI: 01:09.0 [14e4/1648] PCI: 01:09.1 [14e4/1648] PCI: 01:0a.0 [1000/0030] PCI: 01:0a.1 [1000/0030] PCI: pci_scan_bus returning with max=01 PCI: pci_scan_bus for bus 2 PCI: pci_scan_bus returning with max=02 PCI: pci_scan_bus for bus 3 PCI: 03:00.0 [1022/7464] ops PCI: 03:00.0 [1022/7464] PCI: 03:00.1 [1022/7464] ops PCI: 03:00.1 [1022/7464] PCI: 03:00.2 [1022/7463] PCI: 03:01.0 [1022/7462] PCI: 03:05.0 [105a/3373] PCI: 03:06.0 [1002/4752] PCI: pci_scan_bus returning with max=03 PCI: pci_scan_bus returning with max=03 done Allocating resources... ASSIGN RESOURCES, bus 0 PCI: 00:01.0 1c <- [0x00001000 - 0x00001fff] bus 1 io PCI: 00:01.0 24 <- [0xfe200000 - 0xfe1fffff] bus 1 prefmem PCI: 00:01.0 20 <- [0xfe100000 - 0xfe1fffff] bus 1 mem ASSIGN RESOURCES, bus 1 PCI: 01:09.0 10 <- [0xfe100000 - 0xfe10ffff] mem PCI: 01:09.0 18 <- [0xfe110000 - 0xfe11ffff] mem PCI: 01:09.1 10 <- [0xfe120000 - 0xfe12ffff] mem PCI: 01:09.1 18 <- [0xfe130000 - 0xfe13ffff] mem PCI: 01:0a.0 10 <- [0x00001000 - 0x000010ff] io PCI: 01:0a.0 14 <- [0xfe140000 - 0xfe14ffff] mem PCI: 01:0a.0 1c <- [0xfe150000 - 0xfe15ffff] mem PCI: 01:0a.1 10 <- [0x00001400 - 0x000014ff] io PCI: 01:0a.1 14 <- [0xfe160000 - 0xfe16ffff] mem PCI: 01:0a.1 1c <- [0xfe170000 - 0xfe17ffff] mem ASSIGNED RESOURCES, bus 1 PCI: 00:02.0 1c <- [0x00003000 - 0x00002fff] bus 2 io PCI: 00:02.0 24 <- [0xfe200000 - 0xfe1fffff] bus 2 prefmem PCI: 00:02.0 20 <- [0xfe200000 - 0xfe1fffff] bus 2 mem PCI: 00:03.0 1c <- [0x00002000 - 0x00002fff] bus 3 io PCI: 00:03.0 24 <- [0xfe200000 - 0xfe1fffff] bus 3 prefmem PCI: 00:03.0 20 <- [0xfd000000 - 0xfe0fffff] bus 3 mem ASSIGN RESOURCES, bus 3 PCI: 03:00.0 10 <- [0xfe020000 - 0xfe020fff] mem PCI: 03:00.1 10 <- [0xfe021000 - 0xfe021fff] mem PCI: 03:00.2 10 <- [0xfe025000 - 0xfe0250ff] mem PCI: 03:00.2 14 <- [0xfe026000 - 0xfe02601f] mem PCI: 03:01.0 10 <- [0xfe022000 - 0xfe022fff] mem PCI: 03:05.0 10 <- [0x00002480 - 0x000024bf] io PCI: 03:05.0 14 <- [0x000024c0 - 0x000024cf] io PCI: 03:05.0 18 <- [0x00002400 - 0x0000247f] io PCI: 03:05.0 1c <- [0xfe023000 - 0xfe023fff] mem PCI: 03:05.0 20 <- [0xfe000000 - 0xfe01ffff] mem PCI: 03:06.0 10 <- [0xfd000000 - 0xfdffffff] mem PCI: 03:06.0 14 <- [0x00002000 - 0x000020ff] io PCI: 03:06.0 18 <- [0xfe024000 - 0xfe024fff] mem ASSIGNED RESOURCES, bus 3 PCI: 00:04.1 20 <- [0x000038e0 - 0x000038ef] io PCI: 00:04.2 10 <- [0x000038c0 - 0x000038df] io PCI: 00:04.5 10 <- [0x00003000 - 0x000030ff] io PCI: 00:04.5 14 <- [0x00003880 - 0x000038bf] io PCI: 00:04.6 10 <- [0x00003400 - 0x000034ff] io PCI: 00:04.6 14 <- [0x00003800 - 0x0000387f] io ASSIGNED RESOURCES, bus 0 Allocating VGA resource done. Enabling resourcess...DEV: 00:01.0 cmd <- 07 DEV: 00:01.1 cmd <- 00 DEV: 00:02.0 cmd <- 07 DEV: 00:02.1 cmd <- 00 DEV: 00:03.0 cmd <- 07 DEV: 00:04.0 cmd <- 0f DEV: 00:04.1 cmd <- 01 DEV: 00:04.2 cmd <- 01 DEV: 00:04.3 cmd <- 00 DEV: 00:04.5 cmd <- 01 DEV: 00:04.6 cmd <- 01 DEV: 00:18.0 cmd <- 00 DEV: 00:18.1 cmd <- 00 DEV: 00:18.2 cmd <- 00 DEV: 00:18.3 cmd <- 00 DEV: 00:19.0 cmd <- 00 DEV: 00:19.1 cmd <- 00 DEV: 00:19.2 cmd <- 00 DEV: 00:19.3 cmd <- 00 DEV: 01:09.0 cmd <- 02 DEV: 01:09.1 cmd <- 02 DEV: 01:0a.0 cmd <- 03 DEV: 01:0a.1 cmd <- 03 DEV: 03:00.0 cmd <- 02 DEV: 03:00.1 cmd <- 02 DEV: 03:00.2 cmd <- 02 DEV: 03:01.0 cmd <- 02 DEV: 03:05.0 cmd <- 03 DEV: 03:06.0 cmd <- 83 done. Initializing devices... PCI: 00:04.0 init lpc_init PCI: 00:04.1 init ide_init IDE1 IDE0 PCI: 00:04.3 init PCI: 03:00.0 init USB: Setting up controller.. done. PCI: 03:00.1 init USB: Setting up controller.. done. Devices initialized totalram: 1024M Initializing CPU #0 Enabling cache... Setting fixed MTRRs(0-88) type: UC Setting fixed MTRRs(0-16) type: WB Setting fixed MTRRs(72-88) type: WB DONE fixed MTRRs Setting variable MTRR 0, base: 0MB, range: 1024MB, type WB DONE variable MTRRs Clear out the extra MTRR's call intel_enable_fixed_mtrr() call intel_enable_var_mtrr() Leave setup_mtrrs done.
Max cpuid index : 1 Vendor ID : AuthenticAMD Processor Type : 0x00 Processor Family : 0x0f Processor Model : 0x05 Processor Mask : 0x00 Processor Stepping : 0x08 Feature flags : 0x078bf9ff
MTRR check Fixed MTRRs : Enabled Variable MTRRs: Enabled
Setting up local apic... apic_id: 0 done. CPU #0 Initialized Checking IRQ routing tables... /root/xx/xx/freebios2/src/arch/i386/boot/pirq_routing.c: 29:check_pirq_routin g_table() - irq_routing_table located at: 0x00008a20 done. Copying IRQ routing tables to 0xf0000...done. Verifing priq routing tables copy at 0xf0000...succeed Wrote linuxbios table at: 00000500 - 00000b0c checksum 916
Welcome to elfboot, the open sourced starter. January 2002, Eric Biederman. Version 1.3
Found ELF candiate at offset 0 Loading Etherboot version: 5.1.8 Dropping non PT_LOAD segment New segment addr 0x20000 size 0x34718 offset 0xb0 filesize 0x56d6 (cleaned up) New segment addr 0x20000 size 0x34718 offset 0xb0 filesize 0x56d6 Loading Segment: addr: 0x0000000000020000 memsz: 0x0000000000034718 filesz: 0x00 000000000056d6 Clearing Segment: addr: 0x00000000000256d6 memsz: 0x000000000002f042 Jumping to boot code at 0x20000 ROM segment 0x0400 length 0x03ea reloc 0x00020000 CPU 1870 Mhz Etherboot 5.1.8 (GPL) Tagged ELF (Multiboot) for [TG3] Relocating _text from: [000256e0,00054d50) to [3ffd0990,40000000) Probing pci nic... [TG3]Cannot find PowerManagement capability, aborting. [TG3]Ethernet addr: 00:E0:81:F0:18:CD Tigon3 [partno(BCM95704A7) rev 2002 PHY(5704)] (PCIX:100MHz:64-bit) Link is up at 100 Mbps, half duplex. Searching for server (DHCP)... ..Me: 192.168.1.198, Server: 192.168.1.1, Gateway 192.168.1.1 Loading 192.168.1.1:ram0_2.5_2.4.21_k8_lsi_mydisk4.elf ...(ELF)... ............. ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ................................................................done Firmware type: LinuxBIOS Linux version 2.4.21 (root@tst2723_rh9) (gcc version 3.2.2 20030222 (Red Hat Lin ux 3.2.2-5)) #11 SMP Wed Jun 18 13:51:49 EDT 2003 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 0000000000000b6c (reserved) BIOS-e820: 0000000000000b6c - 00000000000a0000 (usable) BIOS-e820: 00000000000f0000 - 00000000000f0400 (reserved) BIOS-e820: 0000000000100000 - 0000000040000000 (usable) 128MB HIGHMEM available. 896MB LOWMEM available. hm, page 00000000 reserved twice. On node 0 totalpages: 262144 zone(0): 4096 pages. zone(1): 225280 pages. zone(2): 32768 pages. Kernel command line: root=/dev/ram0 rw ram0_2.5_2.4.21_k8_lsi_mydisk4.elf -retad dr 0X3FFD0B34 Found and enabled local APIC! Initializing CPU#0 Detected 1793.412 MHz processor. Calibrating delay loop... 3578.26 BogoMIPS Memory: 1029284k/1048576k available (1525k kernel code, 18904k reserved, 338k da ta, 292k init, 131072k highmem) Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes) Inode cache hash table entries: 65536 (order: 7, 524288 bytes) Mount cache hash table entries: 512 (order: 0, 4096 bytes) Buffer-cache hash table entries: 65536 (order: 6, 262144 bytes) Page-cache hash table entries: 262144 (order: 8, 1048576 bytes) CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. Enabling fast FPU save and restore... done. Enabling unmasked SIMD FPU exception support... done. Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: Intel CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) Intel machine check reporting enabled on CPU#0. CPU0: AMD 02/05 stepping 08 per-CPU timeslice cutoff: 2925.75 usecs. SMP motherboard not detected. enabled ExtINT on CPU#0 ESR value before enabling vector: 00000000 ESR value after enabling vector: 00000000 Using local APIC timer interrupts. calibrating APIC timer ... ..... CPU clock speed is 1793.4469 MHz. ..... host bus clock speed is 199.2718 MHz. cpu: 0, clocks: 1992718, slice: 996359 CPU0T0:1992704,T1:996336,D:9,S:996359,C:1992718 Waiting on wait_init_idle (map = 0x0) All processors have done init_idle CPU 0: Machine Check Exception: 0000000000000007 Bank 3: b40000000000083b at 000000fdfc000cfe Kernel panic: Unable to continue