This is great stuff ;-) Can you add some comment like /* magic command sequence required for: <something> */
A half year ago,someone has talked about this.I searched the mail list and found below ,and as I test, it really works fine.but cannot get its meaning in any datasheet ;-( .
From: Jia Jianwei <JJia <at> Fortinet.com> Subject: Re: broadcom HT1000 SATA PHY initializing Newsgroups: gmane.linux.bios Date: 2006-04-17 18:22:40 GMT (27 weeks, 3 days, 14 hours and 18 minutes ago)
Sata should be working with the following initializing code. (verified on two boards). Thanks!
Jianwei
void HT1000_SATA_init( void ) { volatile unsigned int *mmio_reg; unsigned int mmio_base,val32; int i;
pcibios_write_config_byte( 1, HT1000_SATA, 0x70, 0x18); pcibios_write_config_byte( 1, HT1000_SATA, 0x78, 0x04);
pcibios_read_config_dword (1, HT1000_SATA, 0x24, &mmio_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 ); ......
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) [..]
Infect , I am not quite understand the way it handle the option rom, but it has some problem with our vga .after add that line ,it works.
Thanks. bxshi
*****CONFIDENTIAL INFORMATION*****
This email is intended only for the use of the person or entity to whom it is addressed and contains information that may be subject to and/or may be restricted from disclosure by contract or applicable law. If you are not the intended recipient of this email, be advised that any disclosure, copy, distribution or use of the contents of this message is strictly prohibited. If you are not the intended recipient of this email, please notify the sender that you have received this in error by replying to this message. Then, please delete it from your system. Thank you.