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.
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.
On 08.07.2009 16:22, Luc Verhaegen wrote:
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.
Luc already acked this on condition of some changes, but I didn't see any followup yet. Even if the code is semi-broken right now, I'd like to merge it (and disable compilation by default). That way, we can reduce the number of unmerged patches and at the same time make it easy for other developers to test and/or fix.
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
[list of issues, if fixed the patch was] Acked-by: Luc Verhaegen libv@skynet.be
If you don't have time to address the issues Luc mentioned, please tell us and maybe some flashrom newbies want to take a stab at them.
Regards, Carl-Daniel
On Fri, Sep 25, 2009 at 12:13:05AM +0200, Carl-Daniel Hailfinger wrote:
On 08.07.2009 16:22, Luc Verhaegen wrote:
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.
Luc already acked this on condition of some changes, but I didn't see any followup yet. Even if the code is semi-broken right now, I'd like to merge it (and disable compilation by default). That way, we can reduce the number of unmerged patches and at the same time make it easy for other developers to test and/or fix.
Done, committed in r737 with various changes.
I changed some of the infrastructure to match our current setup for the other external flashers and tested that just toggling the single bit as suggested by Luc works on hardware.
Also added some programmer_shutdown() calls, those will probably be converted to atexit() usage later, though.
Uwe.