* bxshi@msik.com.cn bxshi@msik.com.cn [061027 04:06]:
Index: src/southbridge/broadcom/bcm5785/bcm5785_sata.c
--- src/southbridge/broadcom/bcm5785/bcm5785_sata.c (revision 2475) +++ src/southbridge/broadcom/bcm5785/bcm5785_sata.c (working copy) @@ -30,6 +32,21 @@
res = find_resource(dev, 0x24); base = res->base;
mmio_base = base;
mmio_base &= 0xfffffffc;
mmio_reg = (unsigned int *)( mmio_base + 0x10f0 );
* mmio_reg = 0x40000001;
mmio_reg = ( unsigned int *)( mmio_base + 0x8c );
* mmio_reg = 0x00ff2007;
mdelay( 10 );
* mmio_reg = 0x78592009;
mdelay( 10 );
* mmio_reg = 0x00082004;
mdelay( 10 );
* mmio_reg = 0x00002004;
mdelay( 10 );
//init PHY printk_debug("init PHY...\n");
This is great stuff ;-) Can you add some comment like /* magic command sequence required for: <something> */
Index: src/devices/emulator/biosemu.c
--- src/devices/emulator/biosemu.c (revision 2475) +++ src/devices/emulator/biosemu.c (working copy) @@ -121,6 +121,7 @@ case 0x42: case 0x6D: if (getIntVect(num) == 0x0000) {
ret = 1 ; /*to make vga work*/ printk_debug("un-inited int vector\n"); }
Is it really trying to set the video mode to 00h = T 40x25 8x8 320x200 16gray 8 B800 CGA,PCjr,Tandy at some point?
maybe we need to fix this in the 0x400 bios area instead? I believe we want to revive parts of this instead:
/* * here we are really paranoid about faking a "real" * BIOS. Most of this information was pulled from * dosemu. */
void setup_int_vect(void) [..]