On Sat, Apr 07, 2007 at 08:22:02PM +0200, Peter Stuge wrote:
FILO trunk can't boot from hdb, with or without my patch. Has anyone ever been able to boot a kernel from a slave device?
Any logs for the failure case?
(The factory BIOS sees the device on primary slave.)
FILO version 0.5 (stuge@carepad4) Sun Apr 8 03:16:08 CEST 2007 Can't get memory map from firmware. Using hardcoded default. boot: hdb1:/boot/kernel-genkernel-x86-2.6.18 root=/dev/hdb1 ide_software_reset: Waiting for ide0 to become ready for reset... ok IDE time out waiting for bsy No drive detected on IDE channel 0 boot: hdb1:/boot/kernel-genkernel-x86-2.6.18 root=/dev/hdb1 Drive 1 does not exist boot: hdb1:/boot/kernel-genkernel-x86-2.6.18 root=/dev/hdb1
The "waiting for bsy" was added by me to pinpoint where it times out.
It's in ide_software_reset()..
/* Disable Interrupts and reset the ide bus */ outb(IDE_CTRL_HD15 | IDE_CTRL_SRST | IDE_CTRL_NIEN, IDE_REG_DEVICE_CONTROL(ctrl));
/* If BSY bit is not asserted within 400ns, no device there */ if (await_ide(bsy, ctrl, currticks() + IDE_RESET_PULSE) < 0) { return -1; }
And so, it fails. I tried increasing IDE_RESET_PULSE to 1s but still no go.
//Peter