Hello,
I managed to boot LinuxBIOS on my M57sli MB but without X. I'm using the Nvidia proprietary driver. Here's the error message:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be receiving (EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common Problems in the (EE) NVIDIA(0): README for additional information. (EE) NVIDIA(0): Failed to initialize the NVIDIA graphics device!
Should I be using the free driver? My card is BFS8600GTS. Anybody have suggestions?
John ==============
On Tue, Jul 24, 2007 at 09:52:25PM -0400, john wrote:
Should I be using the free driver?
Perhaps try it as a start, yes.
//Peter
Peter Stuge wrote:
On Tue, Jul 24, 2007 at 09:52:25PM -0400, john wrote:
Should I be using the free driver?
Perhaps try it as a start, yes.
//Peter
Ok, I tried the free NV driver and it's running, but I still have a problem - I have no login screen! I can ssh -X to my LB machine and run X programs remotely but my expensive LCD monitor on my LB machine is black (no signal). I suspect I have missed some silly config option somewhere.
John =======
On Wed, Jul 25, 2007 at 12:10:35PM -0400, john wrote:
Ok, I tried the free NV driver and it's running, but I still have a problem
- I have no login screen! I can ssh -X to my LB machine and run X programs
remotely but my expensive LCD monitor on my LB machine is black (no signal). I suspect I have missed some silly config option somewhere.
See http://linuxbios.org/VGA_support, that should fix it.
You probably need option CONFIG_CONSOLE_VGA=1 option CONFIG_PCI_ROM_RUN=1 but they seem to be enabled by default for this board(?)
(I assume this is not onboard-graphics but a PCI/AGP/PCI-E card?)
HTH, Uwe.
Uwe Hermann wrote:
On Wed, Jul 25, 2007 at 12:10:35PM -0400, john wrote:
Ok, I tried the free NV driver and it's running, but I still have a problem
- I have no login screen! I can ssh -X to my LB machine and run X programs
remotely but my expensive LCD monitor on my LB machine is black (no signal). I suspect I have missed some silly config option somewhere.
See http://linuxbios.org/VGA_support, that should fix it.
You probably need option CONFIG_CONSOLE_VGA=1 option CONFIG_PCI_ROM_RUN=1 but they seem to be enabled by default for this board(?)
(I assume this is not onboard-graphics but a PCI/AGP/PCI-E card?)
HTH, Uwe.
I already use the two options you mention with no difference. I assume that for an "add on" card that's all I need. My card is a BFG 8600GTS.
John =============
On Wed, Jul 25, 2007 at 02:25:26PM -0400, john wrote:
I already use the two options you mention with no difference. I assume that for an "add on" card that's all I need. My card is a BFG 8600GTS.
Can you please post a patch with all your changes to the code or config files (if any) and a full boot log (get it via serial console) with maximum debug level enabled?
And/or can you try with another PCI VGA card to see if it makes a difference?
Thanks, Uwe.
Can you please post a patch with all your changes to the code or config files (if any) and a full boot log (get it via serial console) with maximum debug level enabled?
And/or can you try with another PCI VGA card to see if it makes a difference?
Thanks, Uwe.
Well, I dug up an ancient ATI card and installed it with similar results as when using my GForce 8600 card. For some reason X refuses to start. I have attached my FILO Config file, my LinuxBIOS2 Config.lb file, the boot output from the serial port, and the Xorg log.
Also, two observations: 1. I tried to use a 20 year old dumb terminal (NABU 4503) to monitor serial output. The terminal could only handle a maximum of 19200 baud which was too slow for LinuxBIOS output stream - all characters were garbled. Once FILO took over the output was readable. Anyway I scrapped the terminal and now use a PC with minicom at 115200 baud. 2. Kernel loading is slow but initrd loading is very, very, slow.
John ===============
# Use grub instead of autoboot? USE_GRUB = 1 # Grub menu.lst path # hde is filo for sda (1st sata drive) MENULST_FILE = "hde3:/boot/grub/lbmenu.lst" # Driver for hard disk, CompactFlash, and CD-ROM on IDE bus IDE_DISK = 1 # Add a short delay when polling status registers # (required on some broken SATA controllers) IDE_DISK_POLL_DELAY = 1 # Driver for USB Storage USB_DISK = 1 # VGA text console VGA_CONSOLE = 1 PC_KEYBOARD = 1 # Enable the serial console SERIAL_CONSOLE = 1 # Serial console; real external serial port SERIAL_IOBASE = 0x3f8 # SERIAL_SPEED = 19200 # Filesystems FSYS_EXT2FS = 1 # FSYS_REISERFS = 1 # FSYS_ISO9660 = 1 # Support for boot disk image in bootable CD-ROM (El Torito) # ELTORITO = 1 # PCI support SUPPORT_PCI = 1 # Enable this to scan PCI busses above bus 0 # AMD64 based boards do need this. PCI_BRUTE_SCAN = 1 # Loader for standard Linux kernel image, a.k.a. /vmlinuz LINUX_LOADER = 1
## ## This file is part of the LinuxBIOS project. ## ## Copyright (C) 2007 AMD ## Written by Yinghai Lu yinghailu@gmail.com for AMD. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ##
target m57sli mainboard gigabyte/m57sli
romimage "normal" option CONFIG_CONSOLE_VGA=1 option CONFIG_PCI_ROM_RUN=1 option USE_FAILOVER_IMAGE=0 option USE_FALLBACK_IMAGE=0 option ROM_IMAGE_SIZE=0x20000 option XIP_ROM_SIZE=0x40000 option LINUXBIOS_EXTRA_VERSION="$(shell cat ../../VERSION)_Normal" # Enable the Serial Console option CONFIG_CONSOLE_SERIAL8250=1 # option TTYS0_BAUD=19200 # Select the serial console base port option TTYS0_BASE=0x3f8 # This defaults to 8 data bits, 1 stop bit, and no parity option TTYS0_LCS=0x3 payload ../../../payloads/filo.elf end
romimage "fallback" option CONFIG_CONSOLE_VGA=1 option CONFIG_PCI_ROM_RUN=1 option USE_FAILOVER_IMAGE=0 option USE_FALLBACK_IMAGE=1 option ROM_IMAGE_SIZE=0x20000 option XIP_ROM_SIZE=0x40000 option LINUXBIOS_EXTRA_VERSION="$(shell cat ../../VERSION)_Fallback" payload ../../../payloads/filo.elf end
romimage "failover" option USE_FAILOVER_IMAGE=1 option USE_FALLBACK_IMAGE=0 option ROM_IMAGE_SIZE=FAILOVER_SIZE option XIP_ROM_SIZE=FAILOVER_SIZE option LINUXBIOS_EXTRA_VERSION="$(shell cat ../../VERSION)_Failover" end
#buildrom ./linuxbios.rom ROM_SIZE "normal" "fallback" buildrom ./linuxbios.rom ROM_SIZE "normal" "fallback" "failover"
LinuxBIOS-2.0.0_m57sli_Fallback Tue Jul 24 12:07:33 EDT 2007 starting... *sysinfo range: [000cf000,000cf730) bsp_apicid=00 core0 started: started ap apicid: 01 SBLink=00 NC node|link=00 begin msr fid, vid 3104121204160202 end msr fid, vid 3104120404160216 mcp55_num:01 ht reset -
LinuxBIOS-2.0.0_m57sli_Fallback Tue Jul 24 12:07:33 EDT 2007 starting... *sysinfo range: [000cf000,000cf730) bsp_apicid=00 core0 started: started ap apicid: 01 SBLink=00 NC node|link=00 begin msr fid, vid 3104120404160216 end msr fid, vid 3104120404160216 mcp55_num:01 Ram1.00 Ram2.00 Unbuffered 400Mhz Interleaved RAM: 0x00400000 KB Ram3 dimm_mask = 00000033 x4_mask = 00000000 x16_mask = 00000000 single_rank_mask = 00000000 ODC = 00113322 Addr Timing= 00202520 Initializing memory: done RAM: 0x00500000 KB Setting variable MTRR 2, base: 0MB, range: 2048MB, type WB Setting variable MTRR 3, base: 2048MB, range: 1024MB, type WB set DQS timing:RcvrEn:Pass1: 00 CTLRMaxDelay=1d done set DQS timing:DQSPos: 00 done set DQS timing:RcvrEn:Pass2: 00 CTLRMaxDelay=34 done Total DQS Training : tsc [00]=00000000562bc080 Total DQS Training : tsc [01]=0000000058a567ea Total DQS Training : tsc [02]=000000012eb2bd1a Total DQS Training : tsc [03]=0000000130f9f9b2 Ram4 v_esp=000ceeb8 testx = 5a5a5a5a Copying data from cache to RAM -- switching to use RAM as stack... Done testx = 5a5a5a5a Disabling cache as ram now Clearing initial memory region: Done Copying LinuxBIOS to RAM. src=fffdf000 dst=00100000 linxbios_ram.nrv2b length = 0000d5d4 linxbios_ram.bin length = 000225b0 Jumping to LinuxBIOS. LinuxBIOS-2.0.0_m57sli_Fallback Tue Jul 24 12:07:33 EDT 2007 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:00.0 [10de/0369] enabled PCI: 00:00.0 [10de/0369] enabled next_unitid: 0010 PCI: pci_scan_bus for bus 00 PCI: 00:00.0 [10de/0369] enabled PCI: 00:01.0 [10de/0360] enabled PCI: 00:01.1 [10de/0368] enabled PCI: 00:01.2 [10de/036a] enabled PCI: 00:01.3 [10de/036b] enabled PCI: 00:02.0 [10de/036c] enabled PCI: 00:02.1 [10de/036d] enabled PCI: 00:04.0 [10de/036e] enabled PCI: 00:05.0 [10de/037f] enabled PCI: 00:05.1 [10de/037f] enabled PCI: 00:05.2 [10de/037f] enabled PCI: 00:06.0 [10de/0370] enabled PCI: 00:06.1 [10de/0371] enabled PCI: 00:08.0 [10de/0373] enabled PCI: 00:0a.0 [10de/0376] enabled PCI: 00:0b.0 [10de/0374] enabled PCI: 00:0c.0 [10de/0374] enabled PCI: 00:0d.0 [10de/0378] enabled PCI: 00:0e.0 [10de/0375] enabled PCI: 00:0f.0 [10de/0377] enabled PNP: 002e.0 disabled PNP: 002e.1 enabled PNP: 002e.2 disabled PNP: 002e.3 disabled PNP: 002e.4 enabled PNP: 002e.5 enabled PNP: 002e.6 enabled PNP: 002e.8 disabled PNP: 002e.9 disabled PNP: 002e.a disabled smbus: PCI: 00:01.1[0]->I2C: 01:50 enabled smbus: PCI: 00:01.1[0]->I2C: 01:51 enabled smbus: PCI: 00:01.1[0]->I2C: 01:52 enabled smbus: PCI: 00:01.1[0]->I2C: 01:53 enabled smbus: PCI: 00:01.1[0]->I2C: 01:54 enabled smbus: PCI: 00:01.1[0]->I2C: 01:55 enabled smbus: PCI: 00:01.1[0]->I2C: 01:56 enabled smbus: PCI: 00:01.1[0]->I2C: 01:57 enabled smbus: PCI: 00:01.1[1]->I2C: 02:51 enabled PCI: pci_scan_bus for bus 01 PCI: pci_scan_bus returning with max=001 PCI: pci_scan_bus for bus 02 PCI: pci_scan_bus returning with max=002 PCI: pci_scan_bus for bus 03 PCI: pci_scan_bus returning with max=003 PCI: pci_scan_bus for bus 04 PCI: pci_scan_bus returning with max=004 PCI: pci_scan_bus for bus 05 PCI: pci_scan_bus returning with max=005 PCI: pci_scan_bus for bus 06 PCI: pci_scan_bus returning with max=006 PCI: pci_scan_bus for bus 07 PCI: 07:00.0 [10de/0400] enabled PCI: pci_scan_bus returning with max=007 PCI: pci_scan_bus returning with max=007 PCI: pci_scan_bus returning with max=007 done Allocating resources... Reading resources... PCI: 00:06.0 1c <- [0x000000f000 - 0x000000efff] bus 01 io PCI: 00:06.0 24 <- [0x00fff00000 - 0x00ffefffff] bus 01 prefmem PCI: 00:06.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 01 mem PCI: 00:0a.0 1c <- [0x00fffff000 - 0x00ffffefff] bus 02 io PCI: 00:0a.0 24 <- [0xfffffffffff00000 - 0xffffffffffefffff] bus 02 prefmem PCI: 00:0a.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 02 mem PCI: 00:0b.0 1c <- [0x00fffff000 - 0x00ffffefff] bus 03 io PCI: 00:0b.0 24 <- [0xfffffffffff00000 - 0xffffffffffefffff] bus 03 prefmem PCI: 00:0b.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 03 mem PCI: 00:0c.0 1c <- [0x00fffff000 - 0x00ffffefff] bus 04 io PCI: 00:0c.0 24 <- [0xfffffffffff00000 - 0xffffffffffefffff] bus 04 prefmem PCI: 00:0c.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 04 mem PCI: 00:0d.0 1c <- [0x00fffff000 - 0x00ffffefff] bus 05 io PCI: 00:0d.0 24 <- [0xfffffffffff00000 - 0xffffffffffefffff] bus 05 prefmem PCI: 00:0d.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 05 mem PCI: 00:0e.0 1c <- [0x00fffff000 - 0x00ffffefff] bus 06 io PCI: 00:0e.0 24 <- [0xfffffffffff00000 - 0xffffffffffefffff] bus 06 prefmem PCI: 00:0e.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 06 mem Done reading resources. Allocating VGA resource PCI: 07:00.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:0f.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:18.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI_DOMAIN: 0000 Setting PCI_BRIDGE_CTL_VGA for bridge Root Device Setting resources... VGA: PCI: 00:18.0 (aka node 0) link 0 has VGA device PCI: 00:18.0 1c0 <- [0x0000001000 - 0x0000003fff] io <node 0 link 0> PCI: 00:18.0 1b8 <- [0x00e0000000 - 0x00efffffff] prefmem <node 0 link 0> PCI: 00:18.0 1b0 <- [0x00f4000000 - 0x00f71fffff] mem <node 0 link 0> PCI: 00:01.0 14 <- [0x00f7144000 - 0x00f7144fff] mem PNP: 002e.1 60 <- [0x00000003f8 - 0x00000003ff] io PNP: 002e.1 70 <- [0x0000000004 - 0x0000000004] irq PNP: 002e.4 60 <- [0x0000000290 - 0x0000000297] io PNP: 002e.4 62 <- [0x0000000230 - 0x0000000237] io PNP: 002e.4 70 <- [0x0000000009 - 0x0000000009] irq PNP: 002e.5 60 <- [0x0000000060 - 0x0000000060] io PNP: 002e.5 62 <- [0x0000000064 - 0x0000000064] io PNP: 002e.5 70 <- [0x0000000001 - 0x0000000001] irq PNP: 002e.6 70 <- [0x000000000c - 0x000000000c] irq PCI: 00:01.1 10 <- [0x0000002c00 - 0x0000002c3f] io PCI: 00:01.1 20 <- [0x0000002c40 - 0x0000002c7f] io PCI: 00:01.1 24 <- [0x0000002c80 - 0x0000002cbf] io PCI: 00:01.1 60 <- [0x0000002000 - 0x00000020ff] io PCI: 00:01.1 64 <- [0x0000002400 - 0x00000024ff] io PCI: 00:01.1 68 <- [0x0000002800 - 0x00000028ff] io PCI: 00:01.3 10 <- [0x00f7100000 - 0x00f713ffff] mem PCI: 00:02.0 10 <- [0x00f7145000 - 0x00f7145fff] mem PCI: 00:02.1 10 <- [0x00f714a000 - 0x00f714a0ff] mem PCI: 00:04.0 20 <- [0x0000002cc0 - 0x0000002ccf] io PCI: 00:05.0 10 <- [0x0000003000 - 0x0000003007] io PCI: 00:05.0 14 <- [0x0000003070 - 0x0000003073] io PCI: 00:05.0 18 <- [0x0000003010 - 0x0000003017] io PCI: 00:05.0 1c <- [0x0000003080 - 0x0000003083] io PCI: 00:05.0 20 <- [0x0000002cd0 - 0x0000002cdf] io PCI: 00:05.0 24 <- [0x00f7146000 - 0x00f7146fff] mem PCI: 00:05.1 10 <- [0x0000003020 - 0x0000003027] io PCI: 00:05.1 14 <- [0x0000003090 - 0x0000003093] io PCI: 00:05.1 18 <- [0x0000003030 - 0x0000003037] io PCI: 00:05.1 1c <- [0x00000030a0 - 0x00000030a3] io PCI: 00:05.1 20 <- [0x0000002ce0 - 0x0000002cef] io PCI: 00:05.1 24 <- [0x00f7147000 - 0x00f7147fff] mem PCI: 00:05.2 10 <- [0x0000003040 - 0x0000003047] io PCI: 00:05.2 14 <- [0x00000030b0 - 0x00000030b3] io PCI: 00:05.2 18 <- [0x0000003050 - 0x0000003057] io PCI: 00:05.2 1c <- [0x00000030c0 - 0x00000030c3] io PCI: 00:05.2 20 <- [0x0000002cf0 - 0x0000002cff] io PCI: 00:05.2 24 <- [0x00f7148000 - 0x00f7148fff] mem PCI: 00:06.1 10 <- [0x00f7140000 - 0x00f7143fff] mem PCI: 00:08.0 10 <- [0x00f7149000 - 0x00f7149fff] mem PCI: 00:08.0 14 <- [0x0000003060 - 0x0000003067] io PCI: 00:08.0 18 <- [0x00f714b000 - 0x00f714b0ff] mem PCI: 00:08.0 1c <- [0x00f714c000 - 0x00f714c00f] mem PCI: 00:0f.0 1c <- [0x0000001000 - 0x0000001fff] bus 07 io PCI: 00:0f.0 24 <- [0x00e0000000 - 0x00efffffff] bus 07 prefmem PCI: 00:0f.0 20 <- [0x00f4000000 - 0x00f70fffff] bus 07 mem PCI: 07:00.0 10 <- [0x00f6000000 - 0x00f6ffffff] mem PCI: 07:00.0 14 <- [0x00e0000000 - 0x00efffffff] prefmem64 PCI: 07:00.0 1c <- [0x00f4000000 - 0x00f5ffffff] mem64 PCI: 07:00.0 24 <- [0x0000001000 - 0x000000107f] io PCI: 07:00.0 30 <- [0x00f7000000 - 0x00f701ffff] romem PCI: 00:18.3 94 <- [0x00f0000000 - 0x00f3ffffff] mem <gart> Done setting resources. Done allocating resources. Enabling resources... PCI: 00:18.0 cmd <- 140 PCI: 00:00.0 subsystem <- 1022/2b80 PCI: 00:00.0 cmd <- 146 PCI: 00:01.0 subsystem <- 1022/2b80 PCI: 00:01.0 cmd <- 14f mcp55 lpc decode:PNP: 002e.1, base=0x000003f8, end=0x000003ff mcp55 lpc decode:PNP: 002e.4, base=0x00000290, end=0x00000297 mcp55 lpc decode:PNP: 002e.4, base=0x00000230, end=0x00000237 mcp55 lpc decode:PNP: 002e.5, base=0x00000060, end=0x00000060 mcp55 lpc decode:PNP: 002e.5, base=0x00000064, end=0x00000064 PCI: 00:01.1 subsystem <- 1022/2b80 PCI: 00:01.1 cmd <- 141 PCI: 00:01.2 cmd <- 540 PCI: 00:01.3 cmd <- 142 PCI: 00:02.0 subsystem <- 1022/2b80 PCI: 00:02.0 cmd <- 142 PCI: 00:02.1 subsystem <- 1022/2b80 PCI: 00:02.1 cmd <- 142 PCI: 00:04.0 subsystem <- 1022/2b80 PCI: 00:04.0 cmd <- 141 PCI: 00:05.0 subsystem <- 1022/2b80 PCI: 00:05.0 cmd <- 143 PCI: 00:05.1 subsystem <- 1022/2b80 PCI: 00:05.1 cmd <- 143 PCI: 00:05.2 subsystem <- 1022/2b80 PCI: 00:05.2 cmd <- 143 PCI: 00:06.0 bridge ctrl <- 0a03 PCI: 00:06.0 cmd <- 144 PCI: 00:06.1 subsystem <- 1022/2b80 PCI: 00:06.1 cmd <- 142 PCI: 00:08.0 subsystem <- 1022/2b80 PCI: 00:08.0 cmd <- 143 PCI: 00:0a.0 bridge ctrl <- 0003 PCI: 00:0a.0 cmd <- 140 PCI: 00:0b.0 bridge ctrl <- 0003 PCI: 00:0b.0 cmd <- 140 PCI: 00:0c.0 bridge ctrl <- 0003 PCI: 00:0c.0 cmd <- 140 PCI: 00:0d.0 bridge ctrl <- 0003 PCI: 00:0d.0 cmd <- 140 PCI: 00:0e.0 bridge ctrl <- 0003 PCI: 00:0e.0 cmd <- 140 PCI: 00:0f.0 bridge ctrl <- 000b PCI: 00:0f.0 cmd <- 147 PCI: 07:00.0 cmd <- 143 PCI: 00:18.1 subsystem <- 1022/2b80 PCI: 00:18.1 cmd <- 140 PCI: 00:18.2 subsystem <- 1022/2b80 PCI: 00:18.2 cmd <- 140 PCI: 00:18.3 cmd <- 140 done. Initializing devices... Root Device init APIC_CLUSTER: 0 init start_eip=0x00006000, offset=0x00110000, code_size=0x0000005b Initializing CPU #0 CPU: vendor AMD device 40f33 CPU: family 0f, model 43, stepping 03 Enabling cache
Setting fixed MTRRs(0-88) type: UC Setting fixed MTRRs(0-16) Type: WB, RdMEM, WrMEM Setting fixed MTRRs(24-88) Type: WB, RdMEM, WrMEM DONE fixed MTRRs Setting variable MTRR 0, base: 0MB, range: 4096MB, type WB Setting variable MTRR 1, base: 4096MB, range: 1024MB, type WB Setting variable MTRR 2, base: 3072MB, range: 1024MB, type UC DONE variable MTRRs Clear out the extra MTRR's
MTRR check Fixed MTRRs : Enabled Variable MTRRs: Enabled
CPU model AMD Processor model unknown Setting up local apic... apic_id: 0x00 done. ECC Disabled CPU #0 Initialized Initializing CPU #1 Waiting for 1 CPUS to stop CPU: vendor AMD device 40f33 CPU: family 0f, model 43, stepping 03 Enabling cache
Setting fixed MTRRs(0-88) type: UC Setting fixed MTRRs(0-16) Type: WB, RdMEM, WrMEM Setting fixed MTRRs(24-88) Type: WB, RdMEM, WrMEM DONE fixed MTRRs Setting variable MTRR 0, base: 0MB, range: 4096MB, type WB Setting variable MTRR 1, base: 4096MB, range: 1024MB, type WB Setting variable MTRR 2, base: 3072MB, range: 1024MB, type UC DONE variable MTRRs Clear out the extra MTRR's
MTRR check Fixed MTRRs : Enabled Variable MTRRs: Enabled
CPU model AMD Processor model unknown Setting up local apic... apic_id: 0x01 done. CPU #1 Initialized All AP CPUs stopped PCI: 00:18.0 init PCI: 00:01.0 init set power on after power fail RTC Init RTC: Checksum invalid zeroing cmos Invalid CMOS LB checksum PNP: 002e.1 init PNP: 002e.4 init FAN_CTL: reg = 0x02a9, read value = 0x50 FAN_CTL: reg = 0x02a9, writing value = 0xd7 PNP: 002e.5 init PNP: 002e.6 init PCI: 00:01.1 init PCI: 00:02.1 init PCI: 00:04.0 init IDE0 PCI: 00:05.0 init SATA S SATA P PCI: 00:05.1 init SATA S SATA P PCI: 00:05.2 init SATA S SATA P PCI: 00:06.0 init dev_root mem base = 0x00e0000000 [0x50] <-- 0xe0000000 PCI: 00:06.1 init base = f7140000 codec_mask = 01 codec viddid: 10ec0883 No verb! PCI: 00:08.0 init MCP55 MAC PHY ID 0x01410c00 PHY ADDR 1 PCI: 00:0a.0 init PCI: 00:0b.0 init PCI: 00:0c.0 init PCI: 00:0d.0 init PCI: 00:0e.0 init PCI: 00:0f.0 init PCI: 00:18.1 init PCI: 00:18.2 init PCI: 00:18.3 init NB: Function 3 Misc Control.. done. PCI: 00:01.2 init PCI: 00:01.3 init PCI: 07:00.0 init rom address for PCI: 07:00.0 = f7000000 copying VGA ROM Image from 0xf7000000 to 0xc0000, 0xda00 bytes entering emulator halt_sys: file /home/selmys/seneca/072/LinuxBIOSv2/src/devices/emulator/x86emu/ops.c, line 4387 Devices initialized Writing IRQ routing tables to 0xf0000...done. Wrote the mp table end at: 00000020 - 00000274 Moving GDT to 0x500...ok Adjust low_table_end from 0x00000530 to 0x00001000 Adjust rom_table_end from 0x000f0400 to 0x00100000 Wrote linuxbios table at: 00000530 - 00000de8 checksum 4410
Welcome to elfboot, the open sourced starter. January 2002, Eric Biederman. Version 1.3
rom_stream: 0xfffc0000 - 0xfffdefff Found ELF candidate at offset 0 header_offset is 0 Try to load at offset 0x0 New segment addr 0x100000 size 0x3afe0 offset 0xc0 filesize 0x10fc8 (cleaned up) New segment addr 0x100000 size 0x3afe0 offset 0xc0 filesize 0x10fc8 New segment addr 0x13afe0 size 0x48 offset 0x110a0 filesize 0x48 (cleaned up) New segment addr 0x13afe0 size 0x48 offset 0x110a0 filesize 0x48 Dropping non PT_LOAD segment Dropping non PT_LOAD segment Loading Segment: addr: 0x00000000bff80000 memsz: 0x000000000003afe0 filesz: 0x0000000000010fc8 Clearing Segment: addr: 0x00000000bff90fc8 memsz: 0x000000000002a018 Loading Segment: addr: 0x00000000bffbafe0 memsz: 0x0000000000000048 filesz: 0x0000000000000048 Jumping to boot code at 0x10c98c FILO version 0.5 (selmys@amdx2) Tue Jul 24 12:05:13 EDT 2007 menu: hde4:/boot/grub/lbmenu.lst hde: LBA48 120GB: WDC WD1200JD-00HBB0 Mounted ext2fs Mounted ext2fs Found Linux version 2.6.22 (root@amdx2) #1 SMP Tue Jul 10 17:07:13 EDT 2007 bzImage. Loading kernel... ok Loading initrd... ok Jumping to entry point... Linux version 2.6.22 (root@amdx2) (gcc version 4.1.2 20070502 (Red Hat 4.1.2-12)) #1 SMP Tue Jul 10 17:07:13 EDT 2007 Command line: root=/dev/sda3 ro acpi_use_timer_override console=tty0 console=ttyS0,115200 BIOS-provided physical RAM map: BIOS-e820: 0000000000001000 - 00000000000a0000 (usable) BIOS-e820: 00000000000c0000 - 00000000000f0000 (usable) BIOS-e820: 0000000000100000 - 00000000c0000000 (usable) BIOS-e820: 0000000100000000 - 0000000140000000 (usable) end_pfn_map = 1310720 DMI not present or invalid. Scanning NUMA topology in Northbridge 24 No NUMA configuration found Faking a node at 0000000000000000-0000000140000000 Bootmem setup node 0 0000000000000000-0000000140000000 Zone PFN ranges: DMA 1 -> 4096 DMA32 4096 -> 1048576 Normal 1048576 -> 1310720 early_node_map[4] active PFN ranges 0: 1 -> 160 0: 192 -> 240 0: 256 -> 786432 0: 1048576 -> 1310720 Intel MultiProcessor Specification v1.4 MPTABLE: OEM ID: GIGABYTE MPTABLE: Product ID: M57SLI MPTABLE: APIC at: 0xFEE00000 Processor #0 (Bootup-CPU) Processor #1 I/O APIC #2 at 0xF7144000. Setting APIC routing to flat Processors: 2 swsusp: Registered nosave memory region: 00000000000a0000 - 00000000000c0000 swsusp: Registered nosave memory region: 00000000000f0000 - 0000000000100000 swsusp: Registered nosave memory region: 00000000c0000000 - 0000000100000000 Allocating PCI resources starting at c4000000 (gap: c0000000:40000000) SMP: Allowing 2 CPUs, 0 hotplug CPUs PERCPU: Allocating 43208 bytes of per cpu data Built 1 zonelists. Total pages: 1029337 Kernel command line: root=/dev/sda3 ro acpi_use_timer_override console=tty0 console=ttyS0,115200 Initializing CPU#0 PID hash table entries: 4096 (order: 12, 32768 bytes) Marking TSC unstable due to TSCs unsynchronized time.c: Detected 3000.016 MHz processor. Console: colour VGA+ 80x25 Checking aperture... CPU 0: aperture @ f0000000 size 64 MB Memory: 4128244k/5242880k available (2318k kernel code, 65864k reserved, 1362k data, 320k init) Calibrating delay using timer specific routine.. 6002.61 BogoMIPS (lpj=3001305) Security Framework v1.0.0 initialized SELinux: Initializing. selinux_register_security: Registering secondary module capability Capability LSM initialized as secondary Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes) Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes) Mount-cache hash table entries: 256 CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) CPU 0/0 -> Node 0 CPU: Physical Processor ID: 0 CPU: Processor Core ID: 0 SMP alternatives: switching to UP code ACPI: Core revision 20070126 ACPI Exception (tbxface-0618): AE_NO_ACPI_TABLES, While loading namespace from ACPI tables [20070126] ACPI: Unable to load the System Description Tables Using local APIC timer interrupts. result 12500074 Detected 12.500 MHz APIC timer. SMP alternatives: switching to SMP code Booting processor 1/2 APIC 0x1 Initializing CPU#1 Calibrating delay using timer specific routine.. 5999.19 BogoMIPS (lpj=2999596) CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) CPU 1/1 -> Node 0 CPU: Physical Processor ID: 0 CPU: Processor Core ID: 1 AMD Processor model unknown stepping 03 Brought up 2 CPUs migration_cost=303 NET: Registered protocol family 16 PCI: Using configuration type 1 ACPI: Interpreter disabled. Linux Plug and Play Support v0.97 (c) Adam Belay pnp: PnP ACPI: disabled usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb PCI: Probing PCI hardware PCI: Using IRQ router default [10de/0370] at 0000:00:06.0 PCI->APIC IRQ transform: 0000:00:01.1[A] -> IRQ 10 PCI->APIC IRQ transform: 0000:00:01.3[B] -> IRQ 10 PCI->APIC IRQ transform: 0000:00:02.0[A] -> IRQ 22 PCI->APIC IRQ transform: 0000:00:02.1[B] -> IRQ 23 PCI->APIC IRQ transform: 0000:00:05.0[A] -> IRQ 20 PCI->APIC IRQ transform: 0000:00:05.1[B] -> IRQ 23 PCI->APIC IRQ transform: 0000:00:05.2[C] -> IRQ 21 PCI->APIC IRQ transform: 0000:00:06.1[B] -> IRQ 23 PCI->APIC IRQ transform: 0000:00:08.0[A] -> IRQ 22 PCI->APIC IRQ transform: 0000:07:00.0[A] -> IRQ 17 NetLabel: Initializing NetLabel: domain hash size = 128 NetLabel: protocols = UNLABELED CIPSOv4 NetLabel: unlabeled traffic allowed by default PCI-DMA: Disabling AGP. PCI-DMA: aperture base @ f0000000 size 65536 KB PCI-DMA: using GART IOMMU. PCI-DMA: Reserving 64MB of IOMMU area in the AGP aperture PCI: Bridge: 0000:00:06.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0a.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0b.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0c.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0d.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0e.0 IO window: disabled. MEM window: disabled. PREFETCH window: disabled. PCI: Bridge: 0000:00:0f.0 IO window: 1000-1fff MEM window: f4000000-f70fffff PREFETCH window: e0000000-efffffff NET: Registered protocol family 2 IP route cache hash table entries: 131072 (order: 8, 1048576 bytes) TCP established hash table entries: 524288 (order: 11, 12582912 bytes) TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) TCP: Hash tables configured (established 524288 bind 65536) TCP reno registered checking if image is initramfs... it is Freeing initrd memory: 3085k freed audit: initializing netlink socket (disabled) audit(1185311416.972:1): initialized Total HugeTLB memory allocated, 0 VFS: Disk quotas dquot_6.5.1 Dquot-cache hash table entries: 512 (order 0, 4096 bytes) io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered (default) assign_interrupt_mode Found MSI capability assign_interrupt_mode Found MSI capability assign_interrupt_mode Found MSI capability assign_interrupt_mode Found MSI capability assign_interrupt_mode Found MSI capability assign_interrupt_mode Found MSI capability pci_hotplug: PCI Hot Plug PCI Core version: 0.5 Real Time Clock Driver v1.12ac Non-volatile memory driver v1.2 Linux agpgart interface v0.102 (c) Dave Jones Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled serial8250.0: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A RAMDISK driver initialized: 16 RAM disks of 16384K size 4096 blocksize input: Macintosh mouse button emulation as /class/input/input0 usbcore: registered new interface driver libusual PNP: No PS/2 controller found. Probing ports directly. serio: i8042 KBD port at 0x60,0x64 irq 1 serio: i8042 AUX port at 0x60,0x64 irq 12 mice: PS/2 mouse device common for all mice input: AT Translated Set 2 keyboard as /class/input/input1 usbcore: registered new interface driver hiddev usbcore: registered new interface driver usbhid drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver TCP bic registered Initializing XFRM netlink socket NET: Registered protocol family 1 NET: Registered protocol family 17 powernow-k8: Found 2 AMD Processor model unknown processors (version 2.00.00) powernow-k8: MP systems not supported by PSB BIOS structure powernow-k8: MP systems not supported by PSB BIOS structure drivers/rtc/hctosys.c: unable to open rtc device (rtc0) Freeing unused kernel memory: 320k freed Write protecting the kernel read-only data: 1048k Red Hat nash version 6.0.9 starting Mounting proc filesystem Mounting sysfs filesystem Creating /dev Creating initial device nodes Setting up hotplug. Creating block device nodes. LoUSB Universal Host Controller Interface driver v3.0 ading uhci-hcd.ko module Loadinohci_hcd 0000:00:02.0: OHCI Host Controller g ohci-hcd.ko moohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 dule ohci_hcd 0000:00:02.0: irq 22, io mem 0xf7145000 usb usb1: configuration #1 chosen from 1 choice hub 1-0:1.0: USB hub found hub 1-0:1.0: 10 ports detected Loading ehci-hcdehci_hcd 0000:00:02.1: EHCI Host Controller .ko module ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 2 ehci_hcd 0000:00:02.1: debug port 1 ehci_hcd 0000:00:02.1: irq 23, io mem 0xf714a000 ehci_hcd 0000:00:02.1: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb2: configuration #1 chosen from 1 choice hub 2-0:1.0: USB hub found hub 2-0:1.0: 10 ports detected Loading mbcache.ko module Loading jbd.ko module Loading ext3.ko module Loading scsi_mod.ko module SCSI subsystem initialized Loading sd_mod.ko module Loading libata.ko module Loading sata_nv.ko module scsi0 : sata_nv scsi1 : sata_nv ata1: SATA max UDMA/133 cmd 0x0000000000013000 ctl 0x0000000000013072 bmdma 0x0000000000012cd0 irq 20 ata2: SATA max UDMA/133 cmd 0x0000000000013010 ctl 0x0000000000013082 bmdma 0x0000000000012cd8 irq 20 usb 1-9: new low speed USB device using ohci_hcd and address 2 ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300) ata1.00: Host Protected Area detected: current size: 234439535 sectors native size: 234441648 sectors ata1.00: ATA-6: WDC WD1200JD-00HBB0, 08.02D08, max UDMA/133 ata1.00: 234439535 sectors, multi 0: LBA48 ata1.00: Host Protected Area detected: current size: 234439535 sectors native size: 234441648 sectors ata1.00: configured for UDMA/133 usb 1-9: configuration #1 chosen from 1 choice input: Logitech USB-PS/2 Optical Mouse as /class/input/input2 input: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-0000:00:02.0-9 ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata2.00: Host Protected Area detected: current size: 625140335 sectors native size: 625142448 sectors ata2.00: ATA-7: ST3320620SV, 3.ACG, max UDMA/133 ata2.00: 625140335 sectors, multi 0: LBA48 NCQ (depth 0/32) ata2.00: Host Protected Area detected: current size: 625140335 sectors native size: 625142448 sectors ata2.00: configured for UDMA/133 scsi 0:0:0:0: Direct-Access ATA WDC WD1200JD-00H 08.0 PQ: 0 ANSI: 5 sd 0:0:0:0: [sda] 234439535 512-byte hardware sectors (120033 MB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 234439535 512-byte hardware sectors (120033 MB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sda: sda1 sda2 sda3 sda4 sd 0:0:0:0: [sda] Attached SCSI disk scsi 1:0:0:0: Direct-Access ATA ST3320620SV 3.AC PQ: 0 ANSI: 5 sd 1:0:0:0: [sdb] 625140335 512-byte hardware sectors (320072 MB) sd 1:0:0:0: [sdb] Write Protect is off sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sd 1:0:0:0: [sdb] 625140335 512-byte hardware sectors (320072 MB) sd 1:0:0:0: [sdb] Write Protect is off sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sdb: sdb1 sd 1:0:0:0: [sdb] Attached SCSI disk scsi2 : sata_nv scsi3 : sata_nv ata3: SATA max UDMA/133 cmd 0x0000000000013020 ctl 0x0000000000013092 bmdma 0x0000000000012ce0 irq 23 ata4: SATA max UDMA/133 cmd 0x0000000000013030 ctl 0x00000000000130a2 bmdma 0x0000000000012ce8 irq 23 ata3: SATA link down (SStatus 0 SControl 300) ata4: SATA link down (SStatus 0 SControl 300) scsi4 : sata_nv scsi5 : sata_nv ata5: SATA max UDMA/133 cmd 0x0000000000013040 ctl 0x00000000000130b2 bmdma 0x0000000000012cf0 irq 21 ata6: SATA max UDMA/133 cmd 0x0000000000013050 ctl 0x00000000000130c2 bmdma 0x0000000000012cf8 irq 21 ata5: SATA link down (SStatus 0 SControl 300) ata6: SATA link down (SStatus 0 SControl 300) Waiting for driver initialization. Loading ata_generic.ko module Loading pata_amdscsi6 : pata_amd .ko module scsi7 : pata_amd ata7: PATA max UDMA/133 cmd 0x00000000000101f0 ctl 0x00000000000103f6 bmdma 0x0000000000012cc0 irq 14 ata8: PATA max UDMA/133 cmd 0x0000000000010170 ctl 0x0000000000010376 bmdma 0x0000000000012cc8 irq 15 ata7.00: ATAPI: HL-DT-STDVD-RAM GSA-H54N, 1.00, max UDMA/66 ata7.00: limited to UDMA/33 due to 40-wire cable ata7.00: configured for UDMA/33 scsi 6:0:0:0: CD-ROM HL-DT-ST DVD-RAM GSA-H54N 1.00 PQ: 0 ANSI: 5 Waiting for driver initialization. Trying to resume from LABEL=SWAP-sda2 No suspend signature on swap, not resuming. Creating root device. Mounting root filesystem. kjournald starting. Commit interval 5 seconds Setting up otherEXT3-fs: mounted filesystem with ordered data mode. filesystems. Setting up new root fs no fstab.sys, mounting internal defaults Switching to new root and running init. unmounting old /dev unmounting old /proc unmounting old /sys SELinux: Disabled at runtime. audit(1185311426.887:2): selinux=0 auid=4294967295 INIT: version 2.86 booting Welcome to Fedora Press 'I' to enter interactive startup. Setting clock (localtime): Tue Jul 24 21:10:30 EDT 2007 [ OK ] Starting udev: [ OK ] Loading default keymap (us): [ OK ] Setting hostname amdx2: [ OK ] No devices found Setting up Logical Volume Management: No volume groups found [ OK ] Checking filesystems Checking all file systems. [/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/sda3 /1: clean, 333611/12210528 files, 3520645/12209400 blocks [/sbin/fsck.ext3 (1) -- /home] fsck.ext3 -a /dev/sdb1 /home: clean, 399442/39075840 files, 27757182/78142160 blocks [ OK ] Remounting root filesystem in read-write mode: [ OK ] Mounting local filesystems: [ OK ] Enabling local filesystem quotas: [ OK ] Enabling /etc/fstab swaps: [ OK ] INIT: Entering runlevel: 5 Entering non-interactive startup Starting background readahead (early, fast mode): [ OK ] Checking for hardware changes [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: Determining IP information for eth0... done. [ OK ] Starting auditd: [ OK ] Starting system logger: [ OK ] Starting kernel logger: [ OK ] Starting irqbalance: [ OK ] Starting rpcbind: [ OK ] Starting NFS statd: [ OK ] Starting RPC idmapd: [ OK ] Starting system message bus: [ OK ] [ OK ] Bluetooth services:[ OK ] Mounting other filesystems: [ OK ] Starting PC/SC smart card daemon (pcscd): [ OK ] Starting hidd: [ OK ] Starting autofs: Loading autofs4: [ OK ] Starting automount: [ OK ] [ OK ] Starting hpiod: [ OK ] Starting hpssd: [ OK ] Starting cups: [ OK ] Starting sshd: [ OK ] Starting xinetd: [ OK ] Starting ntpd: [ OK ] Starting sendmail: [ OK ] Starting sm-client: [ OK ] Network Audio System Release 1.9 [ OK ] Starting ConsoleKit: [ OK ] Starting crond: [ OK ] Starting xfs: [ OK ] Starting anacron: [ OK ] Starting atd: [ OK ] Starting background readahead (later, fast mode): [ OK ] Starting dhcdbd:[ OK ] Starting libvirtd daemon: [ OK ] Starting yum-updatesd: Bridge firewalling registered [ OK ] Starting Avahi daemon... ip_tables: (C) 2000-2006 Netfilter Core Team Netfilter messages via NETLINK v0.30. nf_conntrack version 0.5.0 (8192 buckets, 65536 max) [ OK ] Starting HAL daemon: [ OK ] Starting smartd: [ OK ] �������������������������������������������������������������
On Wed, Jul 25, 2007 at 07:09:42PM -0400, john wrote:
- Kernel loading is slow but initrd loading is very, very, slow.
Please try the FILO patch in this message:
http://www.linuxbios.org/pipermail/linuxbios/2007-May/021586.html
You don't have to enable the DEBUG_* values but if the patched FILO doesn't work properly I would appreciate if you could send the output of a version built with the DEBUG_ values enabled.
You should see a bit of improvement with it applied.
Now, VGA:
Allocating VGA resource PCI: 07:00.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:0f.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:18.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI_DOMAIN: 0000 Setting PCI_BRIDGE_CTL_VGA for bridge Root Device Setting resources... VGA: PCI: 00:18.0 (aka node 0) link 0 has VGA device PCI: 00:18.0 1c0 <- [0x0000001000 - 0x0000003fff] io <node 0 link 0> PCI: 00:18.0 1b8 <- [0x00e0000000 - 0x00efffffff] prefmem <node 0 link 0> PCI: 00:18.0 1b0 <- [0x00f4000000 - 0x00f71fffff] mem <node 0 link 0> PCI: 00:01.0 14 <- [0x00f7144000 - 0x00f7144fff] mem
[..]
PCI: 07:00.0 10 <- [0x00f6000000 - 0x00f6ffffff] mem PCI: 07:00.0 14 <- [0x00e0000000 - 0x00efffffff] prefmem64 PCI: 07:00.0 1c <- [0x00f4000000 - 0x00f5ffffff] mem64 PCI: 07:00.0 24 <- [0x0000001000 - 0x000000107f] io PCI: 07:00.0 30 <- [0x00f7000000 - 0x00f701ffff] romem PCI: 00:18.3 94 <- [0x00f0000000 - 0x00f3ffffff] mem <gart>
[..]
rom address for PCI: 07:00.0 = f7000000 copying VGA ROM Image from 0xf7000000 to 0xc0000, 0xda00 bytes entering emulator halt_sys: file /home/selmys/seneca/072/LinuxBIOSv2/src/devices/emulator/x86emu/ops.c, line 4387
This says that the VGA BIOS ran OK. Do you always get textmode on the monitor during boot - before you start X?
PCI->APIC IRQ transform: 0000:07:00.0[A] -> IRQ 17
[..]
(II) PCI-to-ISA bridge: (II) Bus -1: bridge is at (0:1:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)
-1 ?!
(II) PCI-to-PCI bridge: (II) Bus 1: bridge is at (0:6:0), (0,1,1), BCTRL: 0x0a03 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 2: bridge is at (0:10:0), (0,2,2), BCTRL: 0x0003 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 3: bridge is at (0:11:0), (0,3,3), BCTRL: 0x0003 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 4: bridge is at (0:12:0), (0,4,4), BCTRL: 0x0003 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 5: bridge is at (0:13:0), (0,5,5), BCTRL: 0x0003 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 6: bridge is at (0:14:0), (0,6,6), BCTRL: 0x0003 (VGA_EN is cleared) (II) PCI-to-PCI bridge: (II) Bus 7: bridge is at (0:15:0), (0,7,7), BCTRL: 0x000b (VGA_EN is set)
Oops. X thinks the bridge is at 0:15, while LB likes 0:18.
(II) Bus 7 I/O range: [0] -1 0 0x00001000 - 0x00001fff (0x1000) IX[B]
This isn't right, LB only sets 0x80 ports.
(II) Bus 7 non-prefetchable memory range: [0] -1 0 0xf4000000 - 0xf70fffff (0x3100000) MX[B]
This is mem64+mem+romem as set by LB plus another 0xe0000 bytes.
(II) Bus 7 prefetchable memory range: [0] -1 0 0xe0000000 - 0xefffffff (0x10000000) MX[B]
Same as LB prefmem64.
(II) Host-to-PCI bridge: (II) Bus 0: bridge is at (0:24:0), (0,0,7), BCTRL: 0x0008 (VGA_EN is set) (II) Bus 0 I/O range: [0] -1 0 0x00000000 - 0x0000ffff (0x10000) IX[B] (II) Bus 0 non-prefetchable memory range: [0] -1 0 0x00000000 - 0xffffffff (0x100000000) MX[B] (II) Bus 0 prefetchable memory range: [0] -1 0 0x00000000 - 0xffffffff (0x100000000) MX[B] (--) PCI: (0:1:3) nVidia Corporation MCP55 SMU rev 162, Mem @ 0xf7100000/18 (--) PCI:*(7:0:0) nVidia Corporation unknown chipset (0x0400) rev 161, Mem @ 0xf6000000/24, 0xe0000000/28, 0xf4000000/25, I/O @ 0x1000/7, BIOS @ 0xf7000000/17
This has the resources correct, but I wonder about the parent bus difference above..
[..]
(WW) NVIDIA: No matching Device section for instance (BusID PCI:0:1:3) found (--) Assigning device section with no busID to primary device (--) Chipset NVIDIA GPU found
Why does X mention 0:1:3 (the MCP55) as a candidate here?
//Peter
On Thu, Jul 26, 2007 at 02:45:23AM +0200, Peter Stuge wrote:
Allocating VGA resource PCI: 07:00.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:0f.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI: 00:18.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI_DOMAIN: 0000 Setting PCI_BRIDGE_CTL_VGA for bridge Root Device
[..]
(II) Bus 7: bridge is at (0:15:0), (0,7,7), BCTRL: 0x000b (VGA_EN is set)
Oops. X thinks the bridge is at 0:15, while LB likes 0:18.
Never mind, I overlooked the 0:0f.0 between 7:0.0 and 0:18.0.
(II) PCI-to-ISA bridge: (II) Bus -1: bridge is at (0:1:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)
-1 ?!
This still looks strange though.
//Peter
On 07/25/2007 08:45 PM, Peter Stuge wrote:
Please try the FILO patch in this message:
http://www.linuxbios.org/pipermail/linuxbios/2007-May/021586.html
You don't have to enable the DEBUG_* values but if the patched FILO doesn't work properly I would appreciate if you could send the output of a version built with the DEBUG_ values enabled.
You should see a bit of improvement with it applied.
//Peter
I applied the patch and now the initrd file is not found and boot process stops.
File not found Can't open initrd: /boot/initrd-2.6.22.img
I've attached a copy of my menu.lst file. I'll try to run again with DEBUG.... but it's late so maybe tomorrow.
John ==========
title Fedora root (hd4,2) kernel /boot/vmlinuz-2.6.22 root=/dev/sda3 ro initrd=/boot/initrd-2.6.22.img acpi_use_timer_override pci=routeirq console=tty0 console=ttyS0,115200
savedefault boot
On 07/25/2007 08:45 PM, Peter Stuge wrote:
On Wed, Jul 25, 2007 at 07:09:42PM -0400, john wrote:
- Kernel loading is slow but initrd loading is very, very, slow.
Please try the FILO patch in this message:
http://www.linuxbios.org/pipermail/linuxbios/2007-May/021586.html
You don't have to enable the DEBUG_* values but if the patched FILO doesn't work properly I would appreciate if you could send the output of a version built with the DEBUG_ values enabled.
You should see a bit of improvement with it applied.
//Peter
I've tried the patch, with debugging enabled - see attached file. Looks like device and filename are parsed out correctly but initrd file reading fails with "File not found". Also, FYI, I removed the "initrd=hde3:/boot/initrd-2.6.22.img" clause entirely from menu.lst and filo went into a loop, loading the kernel over and over again. Finally, the spin-up delay patch given on the Build Tutorial does not work. I believe a blank line is missing just before the /* Initialize */ comment.
John ============
malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) malloc_diag: alloc: 528 bytes (5 blocks), free: 15848 bytes (1 blocks) file_open: dev=hde3, path=/boot/vmlinuz-2.6.22 devopen: already open ide_readmany: sector 43938110 to 0x00123ee0 ide_readmany: sector 43938111 to 0x001240e0 ide_readmany: sector 43938112 to 0x0011c2e0 ide_readmany: sector 43938113 to 0x0011c4e0 ide_readmany: sector 43938114 to 0x0011c6e0 ide_readmany: sector 43938115 to 0x0011c8e0 ide_readmany: sector 43938116 to 0x0011cae0 ide_readmany: sector 43938117 to 0x0011cce0 ide_readmany: sector 70660414 to 0x00123ee0 ide_readmany: sector 70660415 to 0x001240e0 ide_readmany: sector 70660416 to 0x0011c2e0 ide_readmany: sector 70660417 to 0x0011c4e0 ide_readmany: sector 70660418 to 0x0011c6e0 ide_readmany: sector 70660419 to 0x0011c8e0 ide_readmany: sector 70660420 to 0x0011cae0 ide_readmany: sector 70660421 to 0x0011cce0 ide_readmany: sector 70660422 to 0x0011cee0 ide_readmany: sector 70660423 to 0x0011d0e0 ide_readmany: sector 70660424 to 0x0011d2e0 ide_readmany: sector 70660425 to 0x0011d4e0 ide_readmany: sector 70660426 to 0x0011d6e0 ide_readmany: sector 70660427 to 0x0011d8e0 ide_readmany: sector 70660428 to 0x0011dae0 ide_readmany: sector 70660429 to 0x0011dce0 malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) ext2fs_read_one: block 3352637 offset=0 len=52 ret=0 ide_readmany: sector 70742806 to 0x0011eee0 elf_load: Not a bootable ELF image malloc_diag: alloc: 528 bytes (5 blocks), free: 15848 bytes (1 blocks) file_open: dev=hde3, path=/boot/vmlinuz-2.6.22 devopen: already open ide_readmany: sector 43929926 to 0x0011cee0 ide_readmany: sector 43929927 to 0x0011d0e0 ide_readmany: sector 43929928 to 0x0011d2e0 ide_readmany: sector 43929929 to 0x0011d4e0 ide_readmany: sector 43929930 to 0x0011d6e0 ide_readmany: sector 43929931 to 0x0011d8e0 ide_readmany: sector 43929932 to 0x0011dae0 ide_readmany: sector 43929933 to 0x0011dce0 ide_readmany: sector 43938110 to 0x00123ee0 ide_readmany: sector 43938111 to 0x001240e0 ide_readmany: sector 43938112 to 0x0011c2e0 ide_readmany: sector 43938113 to 0x0011c4e0 ide_readmany: sector 43938114 to 0x0011c6e0 ide_readmany: sector 43938115 to 0x0011c8e0 ide_readmany: sector 43938116 to 0x0011cae0 ide_readmany: sector 43938117 to 0x0011cce0 ide_readmany: sector 70660414 to 0x00123ee0 ide_readmany: sector 70660415 to 0x001240e0 ide_readmany: sector 70660416 to 0x0011c2e0 ide_readmany: sector 70660417 to 0x0011c4e0 ide_readmany: sector 70660418 to 0x0011c6e0 ide_readmany: sector 70660419 to 0x0011c8e0 ide_readmany: sector 70660420 to 0x0011cae0 ide_readmany: sector 70660421 to 0x0011cce0 ide_readmany: sector 70660422 to 0x0011cee0 ide_readmany: sector 70660423 to 0x0011d0e0 ide_readmany: sector 70660424 to 0x0011d2e0 ide_readmany: sector 70660425 to 0x0011d4e0 ide_readmany: sector 70660426 to 0x0011d6e0 ide_readmany: sector 70660427 to 0x0011d8e0 ide_readmany: sector 70660428 to 0x0011dae0 ide_readmany: sector 70660429 to 0x0011dce0 malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) ext2fs_read_one: block 3352637 offset=0 len=560 ret=0 ide_readmany: sector 70742807 to 0x0011f0e0 Found Linuxblock 3352638 offset=1131 len=256 ret=0 ide_readmany: sector 70742816 to 0x001202e0 version 2.6.22 (root@amdx2) #1 SMP Tue Jul 10 17:07:13 EDT 2007 (protocol 0x206) (loadflags 0x1) bzImage. init_linux_params: Setting up paramters at 0x90000 set_memory_size: 0000000000001000 - 00000000000a0000 set_memory_size: 00000000000c0000 - 00000000000f0000 set_memory_size: 0000000000100000 - 00000000c0000000 set_memory_size: 0000000100000000 - 0000000140000000 set_memory_size: ramtop=0xc0000000 set_memory_size: ext_mem_k=64512, alt_mem_k=3144704 parse_command_line: original command line: "root=/dev/sda3 ro initrd=hde3:/boot/initrd-2.6.22.img acpi_use_timer_override " parse_command_line: kernel command line at 0x91000 malloc_diag: alloc: 552 bytes (5 blocks), free: 15824 bytes (1 blocks) parse_command_line: initrd=hde3:/boot/initrd-2.6.22.img parse_command_line: kernel command line (88 bytes): "root=/dev/sda3 ro acpi_use_timer_override pci=routeirq console=tty0 c" load_linux_kernel: offset=0x2000 addr=0x100000 size=0x1c6628 Loading kernel... 6 blocks 3352639 - 3352644 len=1861160 ret=0 devreadmany: sectors 26821112 - 26821159 ( 48) to 40241530 ide_readmany: sectors 70742822 - 70742869 ( 48) to 0x40241530 ide_readmany: sector 70742910 to 0x00123ee0 ide_readmany: sector 70742911 to 0x001240e0 ide_readmany: sector 70742912 to 0x0011c2e0 ide_readmany: sector 70742913 to 0x0011c4e0 ide_readmany: sector 70742914 to 0x0011c6e0 ide_readmany: sector 70742915 to 0x0011c8e0 ide_readmany: sector 70742916 to 0x0011cae0 ide_readmany: sector 70742917 to 0x0011cce0 ext2fs_read_many: 4 blocks 3352646 - 3352649 len=1836584 ret=24576 devreadmany: sectors 26821168 - 26821199 ( 32) to 40247530 ide_readmany: sectors 70742878 - 70742909 ( 32) to 0x40247530 ext2fs_read_many: 445 blocks 3352651 - 3353095 len=1820200 ret=40960 devreadmany: sectors 26821208 - 26824767 (3560) to 4024b530 ide_readmany: sectors 70742918 - 70743173 (256) to 0x4024b530 ide_readmany: sectors 70743174 - 70743429 (256) to 0x4026b530 ide_readmany: sectors 70743430 - 70743685 (256) to 0x4028b530 ide_readmany: sectors 70743686 - 70743941 (256) to 0x402ab530 ide_readmany: sectors 70743942 - 70744197 (256) to 0x402cb530 ide_readmany: sectors 70744198 - 70744453 (256) to 0x402eb530 ide_readmany: sectors 70744454 - 70744709 (256) to 0x4030b530 ide_readmany: sectors 70744710 - 70744965 (256) to 0x4032b530 ide_readmany: sectors 70744966 - 70745221 (256) to 0x4034b530 ide_readmany: sectors 70745222 - 70745477 (256) to 0x4036b530 ide_readmany: sectors 70745478 - 70745733 (256) to 0x4038b530 ide_readmany: sectors 70745734 - 70745989 (256) to 0x403ab530 ide_readmany: sectors 70745990 - 70746245 (256) to 0x403cb530 ide_readmany: sectors 70746246 - 70746477 (232) to 0x403eb530 ext2fs_read: discarding 2520 surplus bytes ext2fs_read: done reading many len=0 ret=1861160 ok malloc_diag: alloc: 568 bytes (6 blocks), free: 15808 bytes (1 blocks) file_open: dev=hde3, path=/boot/initrd-2.6.22.img devopen: already open ide_readmany: sector 43929926 to 0x0011cee0 ide_readmany: sector 43929927 to 0x0011d0e0 ide_readmany: sector 43929928 to 0x0011d2e0 ide_readmany: sector 43929929 to 0x0011d4e0 ide_readmany: sector 43929930 to 0x0011d6e0 ide_readmany: sector 43929931 to 0x0011d8e0 ide_readmany: sector 43929932 to 0x0011dae0 ide_readmany: sector 43929933 to 0x0011dce0 File not found malloc_diag: alloc: 552 bytes (5 blocks), free: 15824 bytes (1 blocks) Can't open initrd: hde3:/boot/initrd-2.6.22.img malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) malloc_diag: alloc: 352 bytes (3 blocks), free: 16024 bytes (1 blocks)
Hi John,
On Thu, Jul 26, 2007 at 09:48:39PM -0400, john wrote:
Please try the FILO patch in this message:
http://www.linuxbios.org/pipermail/linuxbios/2007-May/021586.html
I've tried the patch, with debugging enabled - see attached file.
Great - thanks a lot!
Looks like device and filename are parsed out correctly but initrd file reading fails with "File not found".
Aye. This has been reported before. Did you change anything else than patch and rebuild FILO before/after you got this error?
Also, FYI, I removed the "initrd=hde3:/boot/initrd-2.6.22.img" clause entirely from menu.lst and filo went into a loop, loading the kernel over and over again.
Yeah - it can't find initrd, so booting fails, then it retries, and can't find initrd, and iterate.
Finally, the spin-up delay patch given on the Build Tutorial does not work. I believe a blank line is missing just before the /* Initialize */ comment.
Can you send an updated patch?
file_open: dev=hde3, path=/boot/vmlinuz-2.6.22 devopen: already open ide_readmany: sector 43938110 to 0x00123ee0 ide_readmany: sector 43938111 to 0x001240e0 ide_readmany: sector 43938112 to 0x0011c2e0 ide_readmany: sector 43938113 to 0x0011c4e0 ide_readmany: sector 43938114 to 0x0011c6e0 ide_readmany: sector 43938115 to 0x0011c8e0 ide_readmany: sector 43938116 to 0x0011cae0 ide_readmany: sector 43938117 to 0x0011cce0 ide_readmany: sector 70660414 to 0x00123ee0 ide_readmany: sector 70660415 to 0x001240e0 ide_readmany: sector 70660416 to 0x0011c2e0 ide_readmany: sector 70660417 to 0x0011c4e0 ide_readmany: sector 70660418 to 0x0011c6e0 ide_readmany: sector 70660419 to 0x0011c8e0 ide_readmany: sector 70660420 to 0x0011cae0 ide_readmany: sector 70660421 to 0x0011cce0 ide_readmany: sector 70660422 to 0x0011cee0 ide_readmany: sector 70660423 to 0x0011d0e0 ide_readmany: sector 70660424 to 0x0011d2e0 ide_readmany: sector 70660425 to 0x0011d4e0 ide_readmany: sector 70660426 to 0x0011d6e0 ide_readmany: sector 70660427 to 0x0011d8e0 ide_readmany: sector 70660428 to 0x0011dae0 ide_readmany: sector 70660429 to 0x0011dce0
I should try to combine these reads too. Thanks for showing this.
malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) ext2fs_read_one: block 3352637 offset=0 len=52 ret=0 ide_readmany: sector 70742806 to 0x0011eee0 elf_load: Not a bootable ELF image
52 bytes (ELF header size) are read from the vmlinuz file, then it is determined to not be a plain ELF file. I guess elfboot attempts to boot a plain ELF file before treating the file as a kernel.
malloc_diag: alloc: 528 bytes (5 blocks), free: 15848 bytes (1 blocks) file_open: dev=hde3, path=/boot/vmlinuz-2.6.22 devopen: already open ide_readmany: sector 43929926 to 0x0011cee0 ide_readmany: sector 43929927 to 0x0011d0e0 ide_readmany: sector 43929928 to 0x0011d2e0 ide_readmany: sector 43929929 to 0x0011d4e0 ide_readmany: sector 43929930 to 0x0011d6e0 ide_readmany: sector 43929931 to 0x0011d8e0 ide_readmany: sector 43929932 to 0x0011dae0 ide_readmany: sector 43929933 to 0x0011dce0 ide_readmany: sector 43938110 to 0x00123ee0 ide_readmany: sector 43938111 to 0x001240e0 ide_readmany: sector 43938112 to 0x0011c2e0 ide_readmany: sector 43938113 to 0x0011c4e0 ide_readmany: sector 43938114 to 0x0011c6e0 ide_readmany: sector 43938115 to 0x0011c8e0 ide_readmany: sector 43938116 to 0x0011cae0 ide_readmany: sector 43938117 to 0x0011cce0 ide_readmany: sector 70660414 to 0x00123ee0 ide_readmany: sector 70660415 to 0x001240e0 ide_readmany: sector 70660416 to 0x0011c2e0 ide_readmany: sector 70660417 to 0x0011c4e0 ide_readmany: sector 70660418 to 0x0011c6e0 ide_readmany: sector 70660419 to 0x0011c8e0 ide_readmany: sector 70660420 to 0x0011cae0 ide_readmany: sector 70660421 to 0x0011cce0 ide_readmany: sector 70660422 to 0x0011cee0 ide_readmany: sector 70660423 to 0x0011d0e0 ide_readmany: sector 70660424 to 0x0011d2e0 ide_readmany: sector 70660425 to 0x0011d4e0 ide_readmany: sector 70660426 to 0x0011d6e0 ide_readmany: sector 70660427 to 0x0011d8e0 ide_readmany: sector 70660428 to 0x0011dae0 ide_readmany: sector 70660429 to 0x0011dce0 malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) ext2fs_read_one: block 3352637 offset=0 len=560 ret=0 ide_readmany: sector 70742807 to 0x0011f0e0 Found Linuxblock 3352638 offset=1131 len=256 ret=0 ide_readmany: sector 70742816 to 0x001202e0 version 2.6.22 (root@amdx2) #1 SMP Tue Jul 10 17:07:13 EDT 2007 (protocol 0x206) (loadflags 0x1) bzImage. init_linux_params: Setting up paramters at 0x90000 set_memory_size: 0000000000001000 - 00000000000a0000 set_memory_size: 00000000000c0000 - 00000000000f0000 set_memory_size: 0000000000100000 - 00000000c0000000 set_memory_size: 0000000100000000 - 0000000140000000 set_memory_size: ramtop=0xc0000000 set_memory_size: ext_mem_k=64512, alt_mem_k=3144704 parse_command_line: original command line: "root=/dev/sda3 ro initrd=hde3:/boot/initrd-2.6.22.img acpi_use_timer_override " parse_command_line: kernel command line at 0x91000 malloc_diag: alloc: 552 bytes (5 blocks), free: 15824 bytes (1 blocks) parse_command_line: initrd=hde3:/boot/initrd-2.6.22.img parse_command_line: kernel command line (88 bytes): "root=/dev/sda3 ro acpi_use_timer_override pci=routeirq console=tty0 c" load_linux_kernel: offset=0x2000 addr=0x100000 size=0x1c6628 Loading kernel... 6 blocks 3352639 - 3352644 len=1861160 ret=0 devreadmany: sectors 26821112 - 26821159 ( 48) to 40241530 ide_readmany: sectors 70742822 - 70742869 ( 48) to 0x40241530 ide_readmany: sector 70742910 to 0x00123ee0 ide_readmany: sector 70742911 to 0x001240e0 ide_readmany: sector 70742912 to 0x0011c2e0 ide_readmany: sector 70742913 to 0x0011c4e0 ide_readmany: sector 70742914 to 0x0011c6e0 ide_readmany: sector 70742915 to 0x0011c8e0 ide_readmany: sector 70742916 to 0x0011cae0 ide_readmany: sector 70742917 to 0x0011cce0 ext2fs_read_many: 4 blocks 3352646 - 3352649 len=1836584 ret=24576 devreadmany: sectors 26821168 - 26821199 ( 32) to 40247530 ide_readmany: sectors 70742878 - 70742909 ( 32) to 0x40247530 ext2fs_read_many: 445 blocks 3352651 - 3353095 len=1820200 ret=40960 devreadmany: sectors 26821208 - 26824767 (3560) to 4024b530 ide_readmany: sectors 70742918 - 70743173 (256) to 0x4024b530 ide_readmany: sectors 70743174 - 70743429 (256) to 0x4026b530 ide_readmany: sectors 70743430 - 70743685 (256) to 0x4028b530 ide_readmany: sectors 70743686 - 70743941 (256) to 0x402ab530 ide_readmany: sectors 70743942 - 70744197 (256) to 0x402cb530 ide_readmany: sectors 70744198 - 70744453 (256) to 0x402eb530 ide_readmany: sectors 70744454 - 70744709 (256) to 0x4030b530 ide_readmany: sectors 70744710 - 70744965 (256) to 0x4032b530 ide_readmany: sectors 70744966 - 70745221 (256) to 0x4034b530 ide_readmany: sectors 70745222 - 70745477 (256) to 0x4036b530 ide_readmany: sectors 70745478 - 70745733 (256) to 0x4038b530 ide_readmany: sectors 70745734 - 70745989 (256) to 0x403ab530 ide_readmany: sectors 70745990 - 70746245 (256) to 0x403cb530 ide_readmany: sectors 70746246 - 70746477 (232) to 0x403eb530 ext2fs_read: discarding 2520 surplus bytes ext2fs_read: done reading many len=0 ret=1861160 ok
..the kernel loads fine.
malloc_diag: alloc: 568 bytes (6 blocks), free: 15808 bytes (1 blocks) file_open: dev=hde3, path=/boot/initrd-2.6.22.img devopen: already open ide_readmany: sector 43929926 to 0x0011cee0 ide_readmany: sector 43929927 to 0x0011d0e0 ide_readmany: sector 43929928 to 0x0011d2e0 ide_readmany: sector 43929929 to 0x0011d4e0 ide_readmany: sector 43929930 to 0x0011d6e0 ide_readmany: sector 43929931 to 0x0011d8e0 ide_readmany: sector 43929932 to 0x0011dae0 ide_readmany: sector 43929933 to 0x0011dce0 File not found
But the initrd can't be found even though it's in the same directory as the kernel. My patch obviously breaks the ext2 driver.
I'm afraid I currently don't have enough hardware to debug this myself and remote development is no fun so for now I have to recommend you skip the patch and suffer through the long loading times.
But I really appreciate the feedback and debugging output!
If you want to help further, then please set also E2DEBUG=1 in Config and rebuild FILO. That should give a lot more ext2 debug output which I would appreciate if you could send.
Thanks!
//Peter
On 07/27/2007 10:52 AM, Peter Stuge wrote:
Hi John,
On Thu, Jul 26, 2007 at 09:48:39PM -0400, john wrote:
Finally, the spin-up delay patch given on the Build Tutorial does not work. I believe a blank line is missing just before the /* Initialize */ comment.
Can you send an updated patch?
Thanks!
//Peter
I've attached the patch I used.
John ==========
Index: main/filo.c =================================================================== --- main/filo.c (revision 34) +++ main/filo.c (working copy) @@ -60,6 +60,7 @@
/* Initialize */ init(); + delay(5); grub_main(); return 0; }
On Sat, Jul 28, 2007 at 12:33:55PM -0400, john wrote:
Index: main/filo.c
--- main/filo.c (revision 34) +++ main/filo.c (working copy) @@ -60,6 +60,7 @@
/* Initialize */ init();
- delay(5); grub_main(); return 0;
}
Thanks, I fixed that in the wiki now. I verified that copy+pasting from the wiki will produce the same (working) patch you attached.
Uwe.
On 07/27/2007 10:52 AM, Peter Stuge wrote:
If you want to help further, then please set also E2DEBUG=1 in Config and rebuild FILO. That should give a lot more ext2 debug output which I would appreciate if you could send.
Thanks!
//Peter
I have not made any changes to filo other than using the small spin-up delay patch as well as the large patch that is supposed to speed-up reading initrd. I ran again with E2DEBUG=1 but minicom's screen buffer overflowed so I'm attaching only the last part of the debugging messages. I hope that helps.
John =====
a4 81 00 00 28 86 1c 00 13 fa a7 46 67 f6 93 46 67 f6 93 46 00 00 00 00 00 00 01 00 50 0e 00 00 00 00 00 00 00 00 00 00 3d 28 33 00 3e 28 33 00 3f 28 33 00 40 28 33 00 41 28 33 00 42 28 33 00 43 28 33 00 44 28 33 00 46 28 33 00 47 28 33 00 48 28 33 00 49 28 33 00 4a 28 33 00 00 00 00 00 00 00 00 00 77 09 34 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 logical block 455 a4 81 00 00 28 86 1c 00 13 fa a7 46 67 f6 93 46 67 f6 93 46 00 00 00 00 00 00 01 00 50 0e 00 00 00 00 00 00 00 00 00 00 3d 28 33 00 3e 28 33 00 3f 28 33 00 40 28 33 00 41 28 33 00 42 28 33 00 43 28 33 00 44 28 33 00 46 28 33 00 47 28 33 00 48 28 33 00 49 28 33 00 4a 28 33 00 00 00 00 00 00 00 00 00 77 09 34 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 logical block 456 a4 81 00 00 28 86 1c 00 13 fa a7 46 67 f6 93 46 67 f6 93 46 00 00 00 00 00 00 01 00 50 0e 00 00 00 00 00 00 00 00 00 00 3d 28 33 00 3e 28 33 00 3f 28 33 00 40 28 33 00 41 28 33 00 42 28 33 00 43 28 33 00 44 28 33 00 46 28 33 00 47 28 33 00 48 28 33 00 49 28 33 00 4a 28 33 00 00 00 00 00 00 00 00 00 77 09 34 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 logical block 456 ext2fs_read_many: 445 blocks 3352651 - 3353095 len=1820200 ret=40960 devreadmany: sectors 26821208 - 26824767 (3560) to 4024b9b0 ide_readmany: sectors 70742918 - 70743173 (256) to 0x4024b9b0 ide_readmany: sectors 70743174 - 70743429 (256) to 0x4026b9b0 ide_readmany: sectors 70743430 - 70743685 (256) to 0x4028b9b0 ide_readmany: sectors 70743686 - 70743941 (256) to 0x402ab9b0 ide_readmany: sectors 70743942 - 70744197 (256) to 0x402cb9b0 ide_readmany: sectors 70744198 - 70744453 (256) to 0x402eb9b0 ide_readmany: sectors 70744454 - 70744709 (256) to 0x4030b9b0 ide_readmany: sectors 70744710 - 70744965 (256) to 0x4032b9b0 ide_readmany: sectors 70744966 - 70745221 (256) to 0x4034b9b0 ide_readmany: sectors 70745222 - 70745477 (256) to 0x4036b9b0 ide_readmany: sectors 70745478 - 70745733 (256) to 0x4038b9b0 ide_readmany: sectors 70745734 - 70745989 (256) to 0x403ab9b0 ide_readmany: sectors 70745990 - 70746245 (256) to 0x403cb9b0 ide_readmany: sectors 70746246 - 70746477 (232) to 0x403eb9b0 ext2fs_read: discarding 2520 surplus bytes ext2fs_read: done reading many len=0 ret=1861160 ok malloc_diag: alloc: 568 bytes (6 blocks), free: 15808 bytes (1 blocks) file_open: dev=hde3, path=/boot/initrd-2.6.22.img devopen: already open inode 2 dirname=/boot/initrd-2.6.22.img ipg=32736, dpb=128 group_id=0 group_desc=0 desc=0 fsblock 1 buffer 1199488 inode table fsblock=1027 fsblock 1027 buffer 1203584 ide_readmany: sector 43929926 to 0x0011d360 ide_readmany: sector 43929927 to 0x0011d560 ide_readmany: sector 43929928 to 0x0011d760 ide_readmany: sector 43929929 to 0x0011d960 ide_readmany: sector 43929930 to 0x0011db60 ide_readmany: sector 43929931 to 0x0011dd60 ide_readmany: sector 43929932 to 0x0011df60 ide_readmany: sector 43929933 to 0x0011e160 ipb=32, sizeof(inode)=128 inode=125d80, raw_inode=125e00 offset into inode table block=128 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 first word=0 first word=0 File not found malloc_diag: alloc: 552 bytes (5 blocks), free: 15824 bytes (1 blocks) Can't open initrd: hde3:/boot/initrd-2.6.22.img malloc_diag: alloc: 512 bytes (4 blocks), free: 15864 bytes (1 blocks) malloc_diag: alloc: 352 bytes (3 blocks), free: 16024 bytes (1 blocks)
On Sat, Jul 28, 2007 at 12:54:44PM -0400, john wrote:
On 07/27/2007 10:52 AM, Peter Stuge wrote:
If you want to help further, then please set also E2DEBUG=1 in Config and rebuild FILO. That should give a lot more ext2 debug output which I would appreciate if you could send.
I have not made any changes to filo other than using the small spin-up delay patch as well as the large patch that is supposed to speed-up reading initrd.
Ok.
I ran again with E2DEBUG=1 but minicom's screen buffer overflowed so I'm attaching only the last part of the debugging messages. I hope that helps.
Unfortunately the partial messages are missing interesting parts of reading from the filesystem.
There is a capture to file function in minicom - Alt+L or Esc+L should start it up and let you specify a filename.
//Peter
On 07/28/2007 01:24 PM, Peter Stuge wrote:
On Sat, Jul 28, 2007 at 12:54:44PM -0400, john wrote:
I ran again with E2DEBUG=1 but minicom's screen buffer overflowed so I'm attaching only the last part of the debugging messages. I hope that helps.
Unfortunately the partial messages are missing interesting parts of reading from the filesystem.
There is a capture to file function in minicom - Alt+L or Esc+L should start it up and let you specify a filename.
//Peter
I ran again and attached the full minicom.cap file.
John ==========
On Sun, Jul 29, 2007 at 09:15:50AM -0400, john wrote:
I ran again and attached the full minicom.cap file.
Thank you! I've spotted the problem.
[..first time reading vmlinuz..]
ide_readmany: sector 43929933 to 0x0011e160 ipb=32, sizeof(inode)=128 inode=125d80, raw_inode=125e00 offset into inode table block=128 00 00 00 00 00 00 00 00 3b 15 75 46 3b 15 75 46 3b 15 75 46 00 00 00 00 00 00 00 00 00 00 00 00
..
[..second time..]
ide_readmany: sector 43929933 to 0x0011e160 ipb=32, sizeof(inode)=128 inode=125d80, raw_inode=125e00 offset into inode table block=128 00 00 00 00 00 00 00 00 3b 15 75 46 3b 15 75 46 3b 15 75 46 00 00 00 00 00 00 00 00 00 00 00 00
..
[..reading initrd..]
ide_readmany: sector 43929933 to 0x0011e160 ipb=32, sizeof(inode)=128 inode=125d80, raw_inode=125e00 offset into inode table block=128 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Wrong data. This is likely because the sector cache is not being invalidated properly. I'll have a look at the code later.
//Peter
On 07/25/2007 12:10 PM, john wrote:
Ok, I tried the free NV driver and it's running, but I still have a problem - I have no login screen! I can ssh -X to my LB machine and run X programs remotely but my expensive LCD monitor on my LB machine is black (no signal). I suspect I have missed some silly config option somewhere.
John
Silly me. A friend pointed out that the monitor section in xorg.conf was set to use the VGA input of my monitor. I had my video card connected to the DVI-D input of the monitor. Once I connected the cable to the proper port, X came up perfectly. So now my LinuxBIOS is working. Still I have some observations: 1. Nvidia proprietary driver does not work, however NV works well enough for my purposes. 2. I've lost cpu frequency control (no powernow-k8) so now both my CPUs are running flat out at 3000 MHz. Core temperatures are hovering just below 70C (63C and 67C). 3. I now can load kvm_amd (without locking up my system) and use hardware acceleration to speed up my virtual machines.
John =========
On Sat, Jul 28, 2007 at 10:42:23PM -0400, john wrote:
Silly me. A friend pointed out that the monitor section in xorg.conf was set to use the VGA input of my monitor. I had my video card connected to the DVI-D input of the monitor. Once I connected the cable to the proper port, X came up perfectly. So now my LinuxBIOS is working.
Great news! :)
Still I have some observations:
- Nvidia proprietary driver does not work, however NV works well enough
for my purposes.
Do you notice any special problem with the nv driver? Or just that it doesn't offer the same functionality as the proprietary driver?
- I've lost cpu frequency control (no powernow-k8) so now both my
CPUs are running flat out at 3000 MHz. Core temperatures are hovering just below 70C (63C and 67C).
I just had a look at arch/i386/kernel/cpu/cpufreq/powernow-k8.c and it currently depends on ACPI and the BIOS keeping a table of parameters that it needs;
./powernow-k8.h:#define PSB_ID_STRING "AMDK7PNOW!" ./powernow-k8.h:#define PSB_ID_STRING_LEN 10
for (i = 0xc0000; i < 0xffff0; i += 0x10) { /* Scan BIOS looking for the signature. */ /* It can not be at ffff0 - it is too big. */
psb = phys_to_virt(i); if (memcmp(psb, PSB_ID_STRING, PSB_ID_STRING_LEN) != 0) continue;
dprintk("found PSB header at 0x%p\n", psb);
Once the table has been initialized in the driver ACPI is not used at all - the real work is done using rdmsr() and wrmsr().
I think it would be easy enough to change the initialization so that ACPI is not required.
AMD: Are these tables board dependent? Why not put the tables, arranged by cpuid, into the powernow driver and do without ACPI?
Another option is of course for someone to create the needed table, store it in the right place and reserve that memory so Linux doesn't use it - but I don't like that solution too much.
- I now can load kvm_amd (without locking up my system) and use
hardware acceleration to speed up my virtual machines.
Have you been able to make any performance measurements yet?
This is really fantastic news!
//Peter
Peter Stuge wrote:
- I've lost cpu frequency control (no powernow-k8) so now both my
CPUs are running flat out at 3000 MHz. Core temperatures are hovering just below 70C (63C and 67C).
I just had a look at arch/i386/kernel/cpu/cpufreq/powernow-k8.c and it currently depends on ACPI and the BIOS keeping a table of parameters that it needs;
...
Once the table has been initialized in the driver ACPI is not used at all - the real work is done using rdmsr() and wrmsr().
I think it would be easy enough to change the initialization so that ACPI is not required.
And it means the kernel driver has to maintain alll the tables for all CPU revisions and options.
AMD: Are these tables board dependent? Why not put the tables, arranged by cpuid, into the powernow driver and do without ACPI?
I am not AMD, but I guess it is preferred to do the efford once instead of once per OS.
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
Another option is of course for someone to create the needed table, store it in the right place and reserve that memory so Linux doesn't use it - but I don't like that solution too much.
Why not?
I sense a large antipathy against ACPI, and I agreed to that before I wrote the initial ACPI implementation in LinuxBIOS.
But now we have a framework since a couple of years and instead of improving that framework we constantly talk ACPI down. It really is a mixture between our device tree and our lbtable. Ok. The standard is broken in many parts, but it does not force people to use those broken parts.
One thing is pretty absolute sure though:
No ACPI -> No Laptops.
Except we have a team on the Linux side fixing things up for us. Like the OLPC did. While that works fine for a philosophic and academic project like the OLPC, it is by no means an option to support a wide range of systems.
Stefan
On Sun, Jul 29, 2007 at 11:33:15AM +0200, Stefan Reinauer wrote:
I think it would be easy enough to change the initialization so that ACPI is not required.
And it means the kernel driver has to maintain alll the tables for all CPU revisions and options.
Yep.
AMD: Are these tables board dependent? Why not put the tables, arranged by cpuid, into the powernow driver and do without ACPI?
I am not AMD, but I guess it is preferred to do the efford once instead of once per OS.
I agree that there should be only one such source table. It should be in a machine-readable format so that it can be converted to fit each codebase that wants to use it.
Fixing things that we do wrong in Linux is a bad thing.
But I think Linux is doing the wrong thing. (ACPI)
It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
Agreed. This won't be "fixed" over night.
Another option is of course for someone to create the needed table, store it in the right place and reserve that memory so Linux doesn't use it - but I don't like that solution too much.
Why not?
I sense a large antipathy against ACPI, and I agreed to that before I wrote the initial ACPI implementation in LinuxBIOS.
I don't know ACPI well enough to criticise it technically but I'll FUD a bit and say that others have done so already. :p
I see a big philosophical problem with ACPI though. I truly want the boot software to be fire-and-forget and I want the operating system to be able to actually drive the entire system. I want each OS to have a power management subsystem with native drivers for all neccessary hardware just like they do for all other hardware - only then will the OS be able to make good decisions about how to control the hardware.
It's just a variation on ditching BIOS interrupt services in favor of native drivers.
But now we have a framework since a couple of years and instead of improving that framework we constantly talk ACPI down. It really is a mixture between our device tree and our lbtable. Ok. The standard is broken in many parts, but it does not force people to use those broken parts.
True, but if not using the broken parts means reduced functionality, we all lose. Users will be confused and upset and developers will be annoyed and upset.
One thing is pretty absolute sure though:
No ACPI -> No Laptops.
Compromise in the short term.
Except we have a team on the Linux side fixing things up for us. Like the OLPC did. While that works fine for a philosophic and academic project like the OLPC, it is by no means an option to support a wide range of systems.
I hope and believe that open source in general and the OLPC project in particular will educate not just kids but in fact the entire world about how computers should work and what kind of quality any user should demand.
I'm just worried it's going to take one generation too long..
//Peter
On 7/29/07, Stefan Reinauer stepan@coresystems.de wrote:
Peter Stuge wrote:
- I've lost cpu frequency control (no powernow-k8) so now both my
CPUs are running flat out at 3000 MHz. Core temperatures are hovering just below 70C (63C and 67C).
I just had a look at arch/i386/kernel/cpu/cpufreq/powernow-k8.c and it currently depends on ACPI and the BIOS keeping a table of parameters that it needs;
...
Once the table has been initialized in the driver ACPI is not used at all - the real work is done using rdmsr() and wrmsr().
I think it would be easy enough to change the initialization so that ACPI is not required.
And it means the kernel driver has to maintain alll the tables for all CPU revisions and options.
AMD: Are these tables board dependent? Why not put the tables, arranged by cpuid, into the powernow driver and do without ACPI?
I am not AMD, but I guess it is preferred to do the efford once instead of once per OS.
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
that is not the point. you need to do implenmentation in DSDT for chipset in a clean room. current nvidia chipset dsdt is belonging to IBV...instead of nvidia. or AMD.
YH
* yhlu yinghailu@gmail.com [070729 21:23]:
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
that is not the point. you need to do implenmentation in DSDT for chipset in a clean room. current nvidia chipset dsdt is belonging to IBV...instead of nvidia. or AMD.
Yes, that was what I was thinking. Such a clean room implementation is not impossible though, is it?
Stefan
Hi all,
I suppose that by "clean room" you mean in fact the "Chinese wall technique" (cf Wikipedia..) If we have to do that (including reverse engineering), what are the legal issues? I know that here in Europe doing revers is permited if it is justified by interoperability and/or security auditing. What about the other countries/economic zones? Also what can be the "political" consequences (I mean by this the relationship between the LB team and the hardware manufacturers like nvidia, amd or the motherboard manufacturers..)? I know that having access to datasheets is a very hot issue for the LB project.. Can we go to these IP owners with a straight face after having dissected the legacy bios, and ask them ingenously : "can we have please access at your datasheets"? Oh, I know, Yinghai Lu has said that the copyright owner is the IBV not AMD or nvidia, but can we be sure that the hardware guys are really neutral on this topic? Again, my apologies for asking idiotic questions as a n00b..
Kind regards, Florentin
Quoting Stefan Reinauer stepan@coresystems.de:
- yhlu yinghailu@gmail.com [070729 21:23]:
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
that is not the point. you need to do implenmentation in DSDT for chipset in a clean room. current nvidia chipset dsdt is belonging to IBV...instead of nvidia. or
AMD.
Yes, that was what I was thinking. Such a clean room implementation is not impossible though, is it?
Stefan
-- coresystems GmbH ⢠Brahmsstr. 16 ⢠D-79104 Freiburg i. Br. Tel.: +49 761 7668825 ⢠Fax: +49 761 7664613 Email: info@coresystems.de ⢠http://www.coresystems.de/
-- linuxbios mailing list linuxbios@linuxbios.org http://www.linuxbios.org/mailman/listinfo/linuxbios
On 7/29/07, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [070729 21:23]:
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
that is not the point. you need to do implenmentation in DSDT for chipset in a clean room. current nvidia chipset dsdt is belonging to IBV...instead of nvidia. or AMD.
Yes, that was what I was thinking. Such a clean room implementation is not impossible though, is it?
you need to prove that code is done in a clean room...
YH
On 07/29/2007 12:45 AM, Peter Stuge wrote:
On Sat, Jul 28, 2007 at 10:42:23PM -0400, john wrote:
- I now can load kvm_amd (without locking up my system) and use
hardware acceleration to speed up my virtual machines.
Have you been able to make any performance measurements yet?
//Peter
I have attached a *totally unscientific* benchmark comparison I made. I used openBench http://www.openbench.com/ for my three (3) tests - Using original Award BIOS, using LinuxBIOS and finally a KVM.
John ==============
* john selmys@lotuspond.ca [070725 03:52]:
Hello,
I managed to boot LinuxBIOS on my M57sli MB but without X. I'm using
the Nvidia proprietary driver. Here's the error message:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be receiving (EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common Problems in the (EE) NVIDIA(0): README for additional information. (EE) NVIDIA(0): Failed to initialize the NVIDIA graphics device!
Should I be using the free driver? My card is BFS8600GTS. Anybody
have suggestions?
It looks interrupts are not set up correctly.
I think implementing ACPI for this board would be the best solution to fix this.
On Wed, Jul 25, 2007 at 03:11:37PM +0200, Stefan Reinauer wrote:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be receiving (EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common Problems in the
It looks interrupts are not set up correctly.
kdrive did work though..
//Peter
* Peter Stuge peter@stuge.se [070725 15:50]:
On Wed, Jul 25, 2007 at 03:11:37PM +0200, Stefan Reinauer wrote:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be receiving (EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common Problems in the
It looks interrupts are not set up correctly.
kdrive did work though..
What's kdrive?
2007/7/25, Stefan Reinauer stepan@coresystems.de:
What's kdrive?
Say it 100 times - "I will always try Google first before asking dumb questions" :)
http://en.wikipedia.org/wiki/Kdrive
* Peter Stuge peter@stuge.se [070725 16:13]:
On Wed, Jul 25, 2007 at 04:03:40PM +0200, Stefan Reinauer wrote:
It looks interrupts are not set up correctly.
kdrive did work though..
What's kdrive?
A minimal version of the Xorg server, it ran in the 6sec video.
Oh right. It is pretty obvious that this does not use any of the advanced features that would require interrupts from a graphics card?
Stefan
On Wed, Jul 25, 2007 at 08:45:10PM +0200, Stefan Reinauer wrote:
A minimal version of the Xorg server, it ran in the 6sec video.
Oh right. It is pretty obvious that this does not use any of the advanced features that would require interrupts from a graphics card?
I'm not sure - but anyway I just realized that John probably isn't using the same graphics card as Alan - and reading the original posts Alan used Xvesa so maybe the vesa driver(?) - so the kdrive point is pretty much moot.
//Peter
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- john selmys@lotuspond.ca [070725 03:52]:
Hello,
I managed to boot LinuxBIOS on my M57sli MB but without X. I'm using
the Nvidia proprietary driver. Here's the error message:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be receiving (EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common Problems in the (EE) NVIDIA(0): README for additional information. (EE) NVIDIA(0): Failed to initialize the NVIDIA graphics device!
Should I be using the free driver? My card is BFS8600GTS. Anybody
have suggestions?
It looks interrupts are not set up correctly.
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
try pci=routeirq then update mptable.c
YH
yhlu wrote:
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- john selmys@lotuspond.ca [070725 03:52]:
Hello,
I managed to boot LinuxBIOS on my M57sli MB but without X. I'm
using
the Nvidia proprietary driver. Here's the error message:
(EE) NVIDIA(0): The NVIDIA kernel module does not appear to be
receiving
(EE) NVIDIA(0): interrupts generated by the NVIDIA graphics device (EE) NVIDIA(0): PCI:7:0:0. Please see Chapter 8: Common
Problems in the
(EE) NVIDIA(0): README for additional information. (EE) NVIDIA(0): Failed to initialize the NVIDIA graphics device!
Should I be using the free driver? My card is BFS8600GTS. Anybody
have suggestions?
It looks interrupts are not set up correctly.
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
try pci=routeirq then update mptable.c
YH
I added pci=routeirq (and get same NVIDIA errors) but am completely ignorant about updating mptable.c.
John =========
* yhlu yinghailu@gmail.com [070725 17:37]:
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
why not?
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [070725 17:37]:
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
why not?
the mptable can do the same thing about irq routing.
YH
* yhlu yinghailu@gmail.com [070725 21:58]:
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [070725 17:37]:
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
why not?
the mptable can do the same thing about irq routing.
yes, but you have to maintain your information in two places: mptable and pirq. And you won't get any power management like that.
Stefan
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [070725 21:58]:
On 7/25/07, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [070725 17:37]:
I think implementing ACPI for this board would be the best solution to fix this.
i don't think so.
why not?
the mptable can do the same thing about irq routing.
yes, but you have to maintain your information in two places: mptable and pirq. And you won't get any power management like that.
with mptable, the pirq table only provide some hack for second peer pci root bus discovering.
all irq routing info is provided by mptable.
YH
Hi,
I discovered the LinuxBios project very recently and I found that is a great idea! So great idea, that I consider participating myself at this project. I do not consider myself an "elite hacker", not at all, but I do have some experience in low level and system programming, mostly in the embedded world (bootloaders and device drivers for various ARM devices)..
To begin with, I considered setting up a hardware test platform to start playing with LinuxBios. For the motherboard, the Gigabyte m57sli mobo seemed a premium choice, as it is listed as fully supported on the "supported motherboards" web page, and there is even a tutorial for installing LB on this kind of board. (even hw-modding it). So I bought this baby..
But then I had a very nasty surprise!.. The new revisions of this board have no more a bios flash device on the LPC bus, but come with a SPI flash instead.. Obviously this kind of flash device isn't (yet..) supported by flashrom. But this isn't the biggest problem (one can find the datasheet of the spi flash device very easily : 25L4005 from Macronix).
The biggest problem is the way this device interacts with MCP55 southbridge...
In fact there are 2 (sub)problems: -1) reflashing this device with LB (adding support in flashrom for example) -2) modifying LB itself to make it boot on this spi device!
My plan of attack is the following: -1) for this point, I will chose a "hardware" solution for the moment, by "socketising" the spi device (desoldering and installing it on a "custom socket" of my own ;) ) and programming it (or a remplacement) with an external programmer which I will build myself (with an fpga for example). For the real support in flashrom.. well we will see this later.. -2) this is the most crucial point! In fact, I have a very simple question : does the actual version of LB need to be modified at all for this new hw configuration or it could work "out of the box"? By browsing the LB code, I discovered a procedure which intriguished me : "mcp55_enable_rom()". Is it supposed to work only with a LPC flash device? More simply : what does exactly mcp55_enable_rom() do?
Thanks in advance for your help!
Best regards, Florentin Demetrescu (from Paris - France)
Hello Florentin,
On Thu, Jul 26, 2007 at 03:41:01AM +0200, echelon@free.fr wrote:
I discovered the LinuxBios project very recently and I found that is a great idea!
So great idea, that I consider participating myself at this project.
Welcome aboard! :)
But then I had a very nasty surprise!.. The new revisions of this board have no more a bios flash device on the LPC bus, but come with a SPI flash instead..
Aye.
My plan of attack is the following: -1) for this point, I will chose a "hardware" solution for the moment, by "socketising" the spi device (desoldering and installing it on a "custom socket" of my own ;) ) and programming it (or a remplacement) with an external programmer which I will build myself (with an fpga for example).
Excellent. This will work just fine.
If you're using a SOIC chip with a HOLD# pin you would not even have to socket it and could just use a SOIC clip (~10 EUR) to connect the homemade programmer to it: http://www.elfa.se/images/highres/h2443.jpg
Also see FLASH-PLAICE at http://flash-plaice.wikispaces.com/ for a $150 ROM emulator+logic analyzer.
-2) this is the most crucial point! In fact, I have a very simple question : does the actual version of LB need to be modified at all for this new hw configuration or it could work "out of the box"?
LB does not need to be modified in order to boot from the SPI chip.
The physical interface is abstracted by the southbridge - memory accesses are decoded to the flash chip transparently.
By browsing the LB code, I discovered a procedure which intriguished me : "mcp55_enable_rom()". Is it supposed to work only with a LPC flash device?
Yes.
More simply : what does exactly mcp55_enable_rom() do?
It is part of flashrom and the purpose is to flip the neccessary bits in the southbridge so that it will pull WE# to the LPC flash low, allowing writes to the flash chip to go through - which is neccessary not only to write or erase the flash chip but also in order to identify it, which flashrom will always try to do.
In short: flashrom requires quite a lot of work to do anything at all with an SPI chip, but assuming there is another way to reprogram the flash chip LB can boot just fine on the board.
//Peter