It works on S2895 + NV (Vendor 10de, Device 00fd) card.
You did a great job.
Please disable the printk_debug instruction biosemu.c.
YH
On Tue, 2005-01-11 at 13:16, YhLu wrote:
It works on S2895 + NV (Vendor 10de, Device 00fd) card.
You did a great job.
Please disable the printk_debug instruction biosemu.c.
YH
I am still debugging PCI cards. Once I have PCI cards working I will disable these messages.
Ollie
Ollie, you did it!
Ollie just took a big stack of video cards, some AGP and some PCI, and booted linuxbios one at a time and showed how each video card came up.
It's fantastic.
now, Stefan, time for openbios payload. Then we have a desktop PC that prints an Open Boot prompt :-)
ron
On Tue, 2005-01-11 at 16:52, Ronald G. Minnich wrote:
Ollie, you did it!
We should thank SciTech for their wonderful emulator.
Ollie just took a big stack of video cards, some AGP and some PCI, and booted linuxbios one at a time and showed how each video card came up.
It's fantastic.
I think the current code should support most VGA cards available in the market. I have tried VGA cards from Nvidia, ATI, Matrox and Cirrus.
I found that the VBIOS on S3 cards don't have correct ROM header. The company is dead anyway.
now, Stefan, time for openbios payload.Then we have a desktop PC that prints an Open Boot prompt :-)
After 5 years, we are finally at the point to be able to compete with factory BIOS on all market sectors.
Ollie
Li-Ta Lo ollie@lanl.gov writes:
On Tue, 2005-01-11 at 16:52, Ronald G. Minnich wrote:
Ollie, you did it!
We should thank SciTech for their wonderful emulator.
Yes.
Ollie just took a big stack of video cards, some AGP and some PCI, and booted linuxbios one at a time and showed how each video card came up.
It's fantastic.
I think the current code should support most VGA cards available in the market. I have tried VGA cards from Nvidia, ATI, Matrox and Cirrus.
I found that the VBIOS on S3 cards don't have correct ROM header. The company is dead anyway.
In what sense do they have a bad ROM header? I can easily see them not supporting new pci features. Unless we can show that something is broken beyond repair we should not give up on supporting it. We don't know what brain damage will show up next.
Eric
On Tue, 2005-01-18 at 04:54, Eric W. Biederman wrote:
Li-Ta Lo ollie@lanl.gov writes:
On Tue, 2005-01-11 at 16:52, Ronald G. Minnich wrote:
Ollie, you did it!
We should thank SciTech for their wonderful emulator.
Yes.
Ollie just took a big stack of video cards, some AGP and some PCI, and booted linuxbios one at a time and showed how each video card came up.
It's fantastic.
I think the current code should support most VGA cards available in the market. I have tried VGA cards from Nvidia, ATI, Matrox and Cirrus.
I found that the VBIOS on S3 cards don't have correct ROM header. The company is dead anyway.
In what sense do they have a bad ROM header? I can easily see them not supporting new pci features. Unless we can show that something is broken beyond repair we should not give up on supporting it. We don't know what brain damage will show up next.
Some of them don't have correct 0x55aa signature. All of them have wrong Class code.
Ollie
* Li-Ta Lo ollie@lanl.gov [050118 17:14]:
Some of them don't have correct 0x55aa signature. All of them have wrong Class code.
Then it is not a pci option rom as described by the standard. Do they have the other pci option rom structs?
On Tue, 2005-01-18 at 09:20, Stefan Reinauer wrote:
- Li-Ta Lo ollie@lanl.gov [050118 17:14]:
Some of them don't have correct 0x55aa signature. All of them have wrong Class code.
Then it is not a pci option rom as described by the standard. Do they have the other pci option rom structs?
It is weird that fuctory bios can still use them.
Ollie
It is weird that fuctory bios can still use them.
There's gotta be a hack in fuctory bios, I would guess, something like: if (the pci card is a vga && there is an option rom) callit();
i.e. I betcha that fuctory bioses will call an option rom on vga even if it violates the spec.
I wonder if we really want to do this, the S3 cards are antiques anyway.
ron
On Tue, 2005-01-18 at 09:29, Ronald G. Minnich wrote:
It is weird that fuctory bios can still use them.
There's gotta be a hack in fuctory bios, I would guess, something like: if (the pci card is a vga && there is an option rom) callit();
i.e. I betcha that fuctory bioses will call an option rom on vga even if it violates the spec.
I wonder if we really want to do this, the S3 cards are antiques anyway.
ron
YhLu,
Why did you remove the class code check ?
if (dev->class != ((rom_data->class_hi << 8) | rom_data->class_lo)) { printk_err("Class Code mismatch ROM %08x, dev %08x\n", (rom_data->class_hi << 8) | rom_data->class_lo, dev->class); // return NULL; }
Ollie
It is weird that fuctory bios can still use them.
There's gotta be a hack in fuctory bios, I would guess, something like: if (the pci card is a vga && there is an option rom) callit();
i.e. I betcha that fuctory bioses will call an option rom on vga even if it violates the spec.
I wonder if we really want to do this, the S3 cards are antiques anyway.
Ollie how are you ripping the vbios bios from the S3 card? Did you pop the chip and use a programmer? If not you may be suffering from the nuke the rom header issue I was talking about earlier.
On Tue, 2005-01-18 at 10:06, Richard Smith wrote:
It is weird that fuctory bios can still use them.
There's gotta be a hack in fuctory bios, I would guess, something like: if (the pci card is a vga && there is an option rom) callit();
i.e. I betcha that fuctory bioses will call an option rom on vga even if it violates the spec.
I wonder if we really want to do this, the S3 cards are antiques anyway.
Ollie how are you ripping the vbios bios from the S3 card? Did you pop the chip and use a programmer? If not you may be suffering from the nuke the rom header issue I was talking about earlier.
I can enable rom load but disable execution in LinuxBIOS. After the system is up, I dumped the memory content. Actually, the rom load refuse to download it because its header is incorrect. It is not the nuke problem, it is simply incorrect header.
Ollie
i.e. I betcha that fuctory bioses will call an option rom on vga even if it violates the spec.
I doubt that.. I've scrubbed the 0xAA55 from several VGA cards so I could plug them into a factory bios system and not have the VGA enabled. None of them ever went ahead and ran the bios.
I can enable rom load but disable execution in LinuxBIOS. After the system is up, I dumped the memory content. Actually, the rom load refuse to download it because its header is incorrect. It is not the nuke problem, it is simply incorrect header.
Without a correct header I don't see how it could have ever worked in a factory system. I have several S3 cards and they don't seem broken to me.
On Tue, 18 Jan 2005, Richard Smith wrote:
Without a correct header I don't see how it could have ever worked in a factory system. I have several S3 cards and they don't seem broken to me.
Now I regret tossing those cards last week. I have no idea what is wrong.
ron
Li-Ta Lo ollie@lanl.gov writes:
On Tue, 2005-01-18 at 04:54, Eric W. Biederman wrote:
In what sense do they have a bad ROM header? I can easily see them not supporting new pci features. Unless we can show that something is broken beyond repair we should not give up on supporting it. We don't know what brain damage will show up next.
Some of them don't have correct 0x55aa signature. All of them have wrong Class code.
I can possibly see the class code being wrong. That is fairly minor, and you already have that on the physical hardware.
For pci option roms you still have the vendor and device ids that tend to be the important part.
In addition it is quite possible some of those cards still follow the original option rom specification (pre pci enhancements) which simply requires the 0x55aa signature the length byte and the jump to the entry point.
Eric
* Eric W. Biederman ebiederman@lnxi.com [050118 20:29]:
In addition it is quite possible some of those cards still follow the original option rom specification (pre pci enhancements) which simply requires the 0x55aa signature the length byte and the jump to the entry point.
Also, the 0x55aa sequence has to be at any 4k boundary within the rom. Before that any data may occur. IIRC the standard does not say that the option rom image has to start at the beginning of the physical chip.
Stefan
On Tue, 18 Jan 2005, Stefan Reinauer wrote:
Also, the 0x55aa sequence has to be at any 4k boundary within the rom. Before that any data may occur. IIRC the standard does not say that the option rom image has to start at the beginning of the physical chip.
I never saw that requirement adhered to in practice. In fact some vga bioses we have seen have several bios versions in one chip.
ron
On Tue, 2005-01-18 at 12:58, Ronald G. Minnich wrote:
On Tue, 18 Jan 2005, Stefan Reinauer wrote:
Also, the 0x55aa sequence has to be at any 4k boundary within the rom. Before that any data may occur. IIRC the standard does not say that the option rom image has to start at the beginning of the physical chip.
I never saw that requirement adhered to in practice. In fact some vga bioses we have seen have several bios versions in one chip.
ron
Is there a way to get those cards back from salvage?
Ollie