On Mon, Sep 26, 2011 at 21:51, Tormod Volden lists.tormod@gmail.com wrote:
On Wed, Sep 21, 2011 at 8:52 PM, Michael Witten wrote:
Because my hardware does appear to be malfunctioning due to a corrupt video BIOS, it seems prudent to salvage as much as possible from its output, so that it is possible to figure out which other values need to be hardcoded in case of further corruption.
To do this, I did 2 things:
* Export the video BIOS data via debugfs, so that it can be easily backed up in secondary storage.
* Hack the existing Radeon driver code to log information about which values are being read from the video BIOS data and from which offsets these values are being read.
I first wrote the following patch to export the video BIOS via debugfs (I wrote a little more than necessary; it should be generally applicable):
Is there any reason to use your debugfs patch instead of reading the BIOS the "classic" way?
(as root) (use lspci to get the bus id) cd /sys/bus/pci/devices/<pci bus id> echo 1 > rom cat rom > /tmp/vbios.rom echo 0 > rom
Most certainly there is a reason: One doesn't yet know it's possible to read the BIOS the "classic" way. :-D
Of course, in general, the files:
drivers/gpu/drm/drm_platform.c drivers/gpu/drm/drm_usb.c
suggest that it's unwise to rely on PCI. Similarly, things like the function:
radeon_atrm_get_bios()
suggest that accessing the video BIOS may require the higher-level access that my patch provides.
Anyway, thanks for the heads-up.