On Wed, Jul 08, 2009 at 02:12:16PM +0200, Uwe Hermann wrote:
See patch.
Please do NOT try write/erase on any important cards yet, it doesn't seem to fully work properly yet and you could "brick" your card.
I tested a "RIVA TNT2 Model 64/Model 64 Pro", which successfully identified and read a Winbond W29C011 chip, but erase and write behaved incorrect and I finally bricked the card.
Will look into recovery soon (likely will work via software I assume, no hardware hacking strictly required I think/hope, we'll see).
As for the list of supported cards: I have no idea which of those may work (i.e. have the same flash programming interface), maybe none, maybe all of them (and lots more NVIDIA cards), we'll see as soon as others test more cards.
Uwe.
http://www.hermann-uwe.de | http://www.holsham-traders.de http://www.crazy-hacks.org | http://www.unmaintained-free-software.org
Add initial support for flashing some NVIDIA graphics cards.
The new option is '-p gfxnvidia', rest of the interface is as usual.
I tested a successful identify and read on a "RIVA TNT2 Model 64/Model 64 Pro" card for now, erase and write did NOT work properly so far!
Please do not attempt to write/erase cards yet, unless you can recover!
Signed-off-by: Uwe Hermann uwe@hermann-uwe.de
- /* Allow access to flash interface (will disable screen). */
- pci_write_long(pcidev_dev, 0x50, 0x00);
You fully null this byte, but...
- nvidia_bar = physmap("NVIDIA", io_base_addr, 16 * 1024 * 1024);
- buses_supported = CHIP_BUSTYPE_PARALLEL;
- return 0;
+}
+int gfxnvidia_shutdown(void) +{
- /* Disallow access to flash interface (and re-enable screen). */
- pci_write_long(pcidev_dev, 0x50, 0x01);
... You only restore bit0. Is this fully correct?
Apart from that, and the fact that we might want to: * switch programmers to use TEST_ instead of PCI_NT * stop people from using flashrom operations with TEST_BAD_ without an extra argument (--brick was discussed on irc). (which is something for the future anyway...)
Acked-by: Luc Verhaegen libv@skynet.be
Luc Verhaegen.