[LinuxBIOS] Can't boot from IDE on vt8237r

Corey Osgood corey.osgood at gmail.com
Thu Jul 26 21:55:11 CEST 2007


Peter Stuge wrote:
> On Thu, Jul 26, 2007 at 05:25:50AM -0400, Corey Osgood wrote:
>   
>>> You could also try using my FILO IDE patch with the debugging
>>> suggested in my message, it may provide some more debugging hints:
>>>       
>> Still no dice, doesn't seem to give any extra info (with your patch
>> and debugging). New log file attached, FILO can now find an SATA
>> drive (formatted in reiserfs, which I didn't include support for in
>> FILO).
>>     
>
> Add the reiserfs support to FILO and it should load the kernel.
>
>
>   
>> IDE is still showing up as a floating bus.
>>     
>
> No?
>   

Yes, read on

>> file_open: dev=hda1, path=/vmlinuz
>> find_ide_controller: found PCI IDE controller 1106:3149 prog_if=0x8f
>> find_ide_controller: primary channel: native PCI mode
>> find_ide_controller: cmd_base=0x2020 ctrl_base=0x2040
>> 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=160836480
>> init_drive: LBA48 mode, sectors=160836480
>> init_drive: Init device params... ok
>> hda: LBA48 82GB: HDS728080PLA380                         
>>     
>
> Bingo, here's an LBA48 82GB disk on hda.
>   

device 0x3149 is the SATA controller, the 82GB drive is SATA. Magnus
(and I) need IDE ;)

>> devopen: already open
>> malloc_diag: alloc: 296 bytes (4 blocks), free: 65232 bytes (1 blocks)
>> ide_readmany: sector 1 to 001107c0
>> load_linux_header: This looks like a bootdisk image but not like Linux...
>> Unsupported image format
>>     
> file_open: dev=hda, path=<NULL>
>
> Then FILO tries to boot a kernel written directly to the start of the
> block device.
>
>
> .. and then hdb..hdj are tried manually.
>   

hde is the first IDE (or PATA if you prefer) device, where I've been
connecting drives to. And yes, 0x0571 is the same device id as vt8235,
vt8231, vt82cxxx, etc use for ide:

malloc_diag: alloc: 296 bytes (4 blocks), free: 65232 bytes (1 blocks)
malloc_diag: alloc: 312 bytes (5 blocks), free: 65216 bytes (1 blocks)
file_open: dev=hde, path=<NULL>
find_ide_controller: found PCI IDE controller 1106:0571 prog_if=0x8a
find_ide_controller: primary channel: compatibility mode
find_ide_controller: cmd_base=0x1e8 ctrl_base=0x3ec
Detected floating bus
No drive detected on IDE channel 2
devopen: failed to open ide
malloc_diag: alloc: 296 bytes (4 blocks), free: 65232 bytes (1 blocks)
malloc_diag: alloc: 280 bytes (3 blocks), free: 65248 bytes (1 blocks)

> Add reiserfs to FILO and try again. :)

Yeah, had already planned on it, just to see if Linux will boot
correctly. But Magnus's drive is ext2, so that's what I'm mostly
concerned with.

-Corey




More information about the coreboot mailing list