[LinuxBIOS] VMWare almost there, IDE problems

Joe Pub joepubber at googlemail.com
Tue Apr 24 18:45:40 CEST 2007


Hi All,

I am getting ever so closer to booting VMWare with LinuxBIOS.  I can
boot FILO with VGA within VMWare now but I have a final hurdle.  I am
getting IDE problems within FILO when it's trying to read sector 0 of
the boot drive.  I get a 'read sector failed' error so because of this
it just jumps straight to the GRUB menu.

Anyone have any ideas what the problem might be?  Below is a copy of
the output from LinuxBIOS from start to end.

Thanks guys.

LinuxBIOS-2.0.0.0Fallback Tue Apr 24 12:30:11 BST 2007 starting...
Northbridge prior to SDRAM init:
PCI: 00:00.00
00: 86 80 90 71 06 00 10 02 01 00 00 06 00 00 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 ad 15 76 19
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
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 00 00 00
60: 40 80 80 80 80 80 80 80 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: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00
    Set register 0x00000050 to 0xff00a00c
    Set register 0x00000057 to 0x00000008
    Set register 0x00000059 to 0x00000010
    Set register 0x0000005a to 0x00000011
    Set register 0x0000005b to 0x00000001
    Set register 0x0000005c to 0x00000000
    Set register 0x0000005d to 0x00000030
    Set register 0x0000005e to 0x00000013
    Set register 0x0000005f to 0x00000011
    Set register 0x00000060 to 0x00000000
    Set register 0x00000061 to 0x00000000
    Set register 0x00000062 to 0x00000000
    Set register 0x00000063 to 0x00000000
    Set register 0x00000064 to 0x00000000
    Set register 0x00000065 to 0x00000000
    Set register 0x00000066 to 0x00000000
    Set register 0x00000067 to 0x00000000
    Set register 0x00000068 to 0x00000000
    Set register 0x00000074 to 0x00000000
    Set register 0x00000076 to 0x00000000
    Set register 0x00000078 to 0x0000ff00
    Set register 0x0000007a to 0x00000000
RAM Enable 1: Apply NOP
    Sending RAM command 0x0020 to 0x00000000
RAM Enable 2: Precharge all
    Sending RAM command 0x0040 to 0x00000000
RAM Enable 3: CBR
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
    Sending RAM command 0x0080 to 0x00000000
RAM Enable 4: Mode register set
    Sending RAM command 0x0060 to 0x000001d0
RAM Enable 5: Normal operation
    Sending RAM command 0x0000 to 0x00000000
RAM Enable 6: Enable refresh
Northbridge following SDRAM init:
PCI: 00:00.00
00: 86 80 90 71 06 00 10 02 01 00 00 06 00 00 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 ad 15 76 19
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
50: 08 80 00 ff 00 00 00 00 01 30 33 33 33 33 00 00
60: 40 80 80 80 80 80 80 80 00 00 00 00 00 00 00 00
70: 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00
Copying LinuxBIOS to RAM.
Jumping to LinuxBIOS.
LinuxBIOS-2.0.0.0Fallback Tue Apr 24 12:30:11 BST 2007 booting...
clocks_per_usec: 19933
Enumerating buses...
Initializing VMWare keyboard
Finding PCI configuration type.
PCI: Using configuration type 1
PCI_DOMAIN: 0000 enabled
PCI: pci_scan_bus for bus 00
PCI: 00:00.0 [8086/7190] enabled
PCI: 00:01.0 [8086/7191] enabled
PCI: 00:07.0 [8086/7110] enabled
PCI: 00:07.1 [8086/7111] enabled
PCI: 00:07.3 [8086/7113] enabled
PCI: 00:0f.0 [15ad/0405] enabled
PCI: 00:10.0 [1000/0030] disabled
PCI: 00:11.0 [1022/2000] enabled
PCI: pci_scan_bus for bus 01
PCI: pci_scan_bus returning with max=001
PCI: pci_scan_bus returning with max=001
done
Allocating resources...
Reading resources...
PCI: 00:01.0 1c <- [0x000000f000 - 0x000000efff] bus 01 io
PCI: 00:01.0 24 <- [0x00fff00000 - 0x00ffefffff] bus 01 prefmem
PCI: 00:01.0 20 <- [0x00fff00000 - 0x00ffefffff] bus 01 mem
Done reading resources.
Allocating VGA resource PCI: 00:0f.0
Setting PCI_BRIDGE_CTL_VGA for bridge PCI_DOMAIN: 0000
Setting PCI_BRIDGE_CTL_VGA for bridge Root Device
Setting resources...
I would like to set RAM size to 1024MB
PCI: 00:07.1 20 <- [0x0000001080 - 0x000000108f] io
PCI: 00:0f.0 10 <- [0x0000001090 - 0x000000109f] io
PCI: 00:0f.0 14 <- [0x00f0000000 - 0x00f7ffffff] mem
PCI: 00:0f.0 18 <- [0x00f8000000 - 0x00f87fffff] mem
PCI: 00:0f.0 30 <- [0x00f8810000 - 0x00f8817fff] romem
PCI: 00:11.0 10 <- [0x0000001000 - 0x000000107f] io
PCI: 00:11.0 30 <- [0x00f8800000 - 0x00f880ffff] romem
Done setting resources.
Done allocating resources.
Enabling resources...
PCI: 00:00.0 cmd <- 146
PCI: 00:01.0 bridge ctrl <- 0083
PCI: 00:01.0 cmd <- 140
PCI: 00:07.0 subsystem <- 00/00
PCI: 00:07.0 cmd <- 147
PCI: 00:07.1 cmd <- 141
PCI: 00:07.3 cmd <- 141
PCI: 00:0f.0 cmd <- 143
PCI: 00:11.0 cmd <- 143
done.
Initializing devices...
Root Device init
PCI: 00:00.0 init
PCI: 00:07.0 init
PCI: 00:07.1 init
Enabling primary IDE interface
PCI: 00:07.3 init
PCI: 00:0f.0 init
rom address for PCI: 00:0f.0 = f8810000
copying VGA ROM Image from 0xf8810000 to 0xc0000, 0x8000 bytes
entering emulator
halt_sys: file /root/LinuxBIOSv2/src/devices/emulator/x86emu/ops.c, line 4387
PCI: 00:11.0 init
rom address for PCI: 00:11.0 = f8800000
Class Code mismatch ROM 00000003, dev 00020000
copying non-VGA ROM Image from 0xf8800000 to 0xd0000, 0x8800 bytes
entering emulator
halt_sys: file /root/LinuxBIOSv2/src/devices/emulator/x86emu/ops.c, line 4387
Devices initialized
Moving GDT to 0x500...ok
Adjust low_table_end from 0x00000530 to 0x00001000
Adjust rom_table_end from 0x000f0000 to 0x000f0000
Wrote linuxbios table at: 00000530 - 000006d4  checksum 4765

Welcome to elfboot, the open sourced starter.
January 2002, Eric Biederman.
Version 1.3

rom_stream: 0xfffd0000 - 0xfffeffff
Found ELF candidate at offset 0
header_offset is 0
Try to load at offset 0x0
New segment addr 0x100000 size 0x41da0 offset 0xc0 filesize 0x17da8
(cleaned up) New segment addr 0x100000 size 0x41da0 offset 0xc0 filesize 0x17da8
New segment addr 0x141da0 size 0x48 offset 0x17e80 filesize 0x48
(cleaned up) New segment addr 0x141da0 size 0x48 offset 0x17e80 filesize 0x48
Dropping non PT_LOAD segment
Dropping non PT_LOAD segment
Loading Segment: addr: 0x0000000000100000 memsz: 0x0000000000041da0
filesz: 0x0000000000017da8
Clearing Segment: addr: 0x0000000000117da8 memsz: 0x0000000000029ff8
Loading Segment: addr: 0x0000000000141da0 memsz: 0x0000000000000048
filesz: 0x0000000000000048
Jumping to elf boot code at 0x111314
FILO version 0.5 (root at devilenc-linux.first4internet.co.uk) Tue Apr 24
12:22:22 BST 2007
collect_sys_info: boot eax = 0xe1fb007
collect_sys_info: boot ebx = 0x3fff59e0
collect_sys_info: boot arg = 0x3fff59e0
malloc_diag: alloc: 0 bytes (0 blocks), free: 16376 bytes (1 blocks)
malloc_diag: alloc: 24 bytes (1 blocks), free: 16352 bytes (1 blocks)
collect_elfboot_info: Bootloader: elfboot
collect_elfboot_info: Version: 1.3
malloc_diag: alloc: 40 bytes (2 blocks), free: 16336 bytes (1 blocks)
collect_linuxbios_info: Searching for LinuxBIOS tables...
find_lb_table: Found canidate at: 00000530
find_lb_table: header checksum o.k.
find_lb_table: table checksum o.k.
find_lb_table: record count o.k.
collect_linuxbios_info: Found LinuxBIOS table at: 00000530
convert_memmap: 0x00000000000000 0x00000000001000 16
convert_memmap: 0x00000000001000 0x0000000009f000 1
convert_memmap: 0x000000000c0000 0x00000000030000 1
convert_memmap: 0x000000000f0000 0x00000000010000 16
convert_memmap: 0x00000000100000 0x0000003ff00000 1
collect_sys_info: 0000000000001000-00000000000a0000
collect_sys_info: 00000000000c0000-00000000000f0000
collect_sys_info: 0000000000100000-0000000040000000
collect_sys_info: RAM 1024 MB
relocate: Current location: 0x100000-0x141de7
relocate: Relocating to 0x3ffbe210-0x3ffffff7... ok
setup_timers: CPU 2414 MHz
pci_init: Scanning PCI: found 8 devices
malloc_diag: alloc: 144 bytes (3 blocks), free: 16232 bytes (1 blocks)
pci_init: 00:00.0 8086:7190 0600 00
pci_init: 00:01.0 8086:7191 0604 00
pci_init: 00:07.0 8086:7110 0601 00
pci_init: 00:07.1 8086:7111 0101 8a
pci_init: 00:07.3 8086:7113 0680 00
pci_init: 00:0f.0 15ad:0405 0300 00
pci_init: 00:10.0 1000:0030 0100 00
pci_init: 00:11.0 1022:2000 0200 00
menu: hda1:/boot/grub/menu.lst
malloc_diag: alloc: 160 bytes (4 blocks), free: 16216 bytes (1 blocks)
file_open: dev=hda1, path=/boot/grub/menu.lst
find_ide_controller: found PCI IDE controller 8086:7111 prog_if=0x8a
find_ide_controller: primary channel: compatibility mode
find_ide_controller: cmd_base=0x1f0 ctrl_base=0x3f4
ide_software_reset: Waiting for ide0 to become ready for reset... ok
init_drive: Testing for hda
init_drive: Probing for hda
init_drive: LBA mode, sectors=2097152
init_drive: Init device params... ok
hda: LBA 1073MB: VMware Virtual IDE Hard Drive
init_drive: Testing for hdb
init_drive: Testing for hdb
IDE time out
Disk read error dev=1 drive=0 sector=0
devread: read sector failed
open_pc_partition: device read failed
devopen: can't open partition 1
malloc_diag: alloc: 144 bytes (3 blocks), free: 16232 bytes (1 blocks)




More information about the coreboot mailing list