I am back. I give you those logs: - I still have keyboard troubles in debuglevel=4 - Vista doesn't boot with your patch.
Thanks for your help.
Message du 16/01/10 à 19h03 De : "Kevin O'Connor" kevin@koconnor.net A : congedete@voila.fr Copie à : seabios@seabios.org, "coreboot" coreboot@coreboot.org Objet : Re: [coreboot] Seabios problems
On Sat, Jan 16, 2010 at 12:06:01PM +0100, congedete@voila.fr wrote:
Hello Kevin,
I can't give you the full log for the keyboard problem. I think this is a timeout issue: when I run Seabios in debuglevel=8, no problem, but if debuglevel=1 or even 4, my keyboard don't want to initialize most of the time. So, I suppose that sending debug data to the port gives time to the keyboard to initialize correctly.
The attachment files are the logs you asked me reporting the Vista booting error. Do you use DMA since version 0.5.1 to boot ?
Lets try a couple of things. For the keyboard, can you see if this change improves things? In either case, can you send the output it produces?
--- a/src/ps2port.c +++ b/src/ps2port.c @@ -62,7 +62,7 @@ i8042_flush(void) return 0; udelay(50); u8 data = inb(PORT_PS2_DATA);
dprintf(7, "i8042 flushed %x (status=%x)\n", data, status);
dprintf(1, "i8042 flushed %x (status=%x)\n", data, status);
}
dprintf(1, "i8042 timeout on flush\n");
Your ps2 port has stale data in it, and I think that is causing the init process to get confused.
For the DMA issue, it looks like your drive isn't ready for it. Can you see if this change improves things?
--- a/src/ata.c +++ b/src/ata.c @@ -856,6 +856,15 @@ init_drive_ata(struct drive_s *dummy, u16 *buffer) // Register with bcv system. add_bcv_internal(drive_g);
- // XXX - set dma mode
- struct ata_pio_command cmd;
- memset(&cmd, 0, sizeof(cmd));
- cmd.command = ATA_CMD_SET_FEATURES;
- cmd.feature = 0x03;
- cmd.sector_count = 0x22; // mwDMA mode 2
- ret = ata_cmd_nondata(drive_g, &cmd);
- dprintf(1, "set drive=%p dma=%d\n", drive_g, ret);
- return drive_g;
}
Thanks, -Kevin
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
____________________________________________________
Vous n’avez pas encore adressé vos voeux ? Retrouvez nos cartes sur http://carte-de-voeux.voila.fr
On Sun, Jan 17, 2010 at 09:29:08AM +0100, congedete@voila.fr wrote:
I am back. I give you those logs:
- I still have keyboard troubles in debuglevel=4
- Vista doesn't boot with your patch.
Thanks for your help.
Thanks. Can you try the following for the keyboard problem?
--- a/src/ps2port.c +++ b/src/ps2port.c @@ -306,6 +306,7 @@ aux_command(int command, u8 *param) static void process_ps2irq(void) { + return; u8 status = inb(PORT_PS2_STATUS); if (!(status & I8042_STR_OBF)) { dprintf(1, "ps2 irq but no data.\n");
Your keyboard definitely wont work after this, but I'd like to see if the init succeeds with it. (I think there may be a case where interrupts are messing with the initialization.)
-Kevin