14:41 asdkoaa: I've used 3 methods to dump my vbios and they've all given me different files. I've used "cat /sys/kernel/debug/dri/0/vbios.rom > vbios.rom" and "nvagetbios -s PROM >" with nouveau loaded and I've used "echo 1 > /sys/devices/pci0000:00/.../rom; cat /sys/.../rom >" with the nvidia module and pcistub loaded. Does anyone have any insight as to why they've all given different vbios files?
14:46 karolherbst: asdkoaa: are the files actually different or just different in size?
14:46 asdkoaa: karolherbst, different md5sums
14:47 karolherbst: yeah well that can depend on the size, no? You should probably open them in a hex editor and see if they are indeed different or not
14:47 karolherbst: the last bytes might be filled with 0xffs
14:48 asdkoaa: I'll look, good idea
14:48 karolherbst: ohh the vbios.rom might also not fixed the PCIR things nouveau does with its vbios.rom file
14:48 karolherbst: nouveau cuts out a few things
14:55 asdkoaa: I see. Well, they're the same up to a point but there's a point where they begin to differ. Though I'm not an expert when it comes to reading hexdumps.
14:55 asdkoaa: karolherbst, ^
14:55 karolherbst: ahh yeah, that's the modding nouveau is doing
14:56 karolherbst: the addressing within the vbios is weird, and nouveau has to patched the vbios to make it all work
14:56 karolherbst: it's a ~0x19200 sized block it skips
14:56 asdkoaa: The nvaget file is the biggest at 1M
14:58 karolherbst: oh wow.. that's quite the size
15:05 asdkoaa: karolherbst, I took a little time familiarizing myself a little on reading the hexdumps. Is the vbios not the permanent firmware on the card?
15:05 karolherbst: it is
15:05 karolherbst: but nouveau has to parse it
15:05 karolherbst: and there are tables with pointers into fields into the offset
15:06 asdkoaa: How does the patching work in this context?
15:06 karolherbst: and it's a bit messed up to just consume those, so we have to patch it
15:06 karolherbst: patching for nouveau that is
15:06 karolherbst: so you see it in the vbios.rom file as this returns the patched copy of the VRAM in sys RAM
15:10 asdkoaa: Ok, so while I know of tpm being useful for my purpose I'm ultimately just looking for a way to check the firmware on the card. This is not an area I'm very familiar with so for instance there's a site I've found that claims to have hashes of different cards firmware. I was hoping to check my cards bios against it. From what you've said would that mean I'd have to use the exact same method to dump the firmware that they used. Also, how would one backup
15:10 asdkoaa: the firmware so they could write it back just as it was?
15:11 karolherbst: uhm.. flashing the vbios is kind of only possible with some OEM tools provided by nvidia I think
15:14 asdkoaa: Oh ok. Do you know if you can backup the firmware just as it is on the card or would I have to get the bios from the manufacturer and flash it using nvidia's or their tools?
17:03 asdkoaa: So after reading for a while apparently the "nvflash" utility is the nvidia tool that's supposed to be used to both flash or backup the bios. However, the techpowerup website is the main site where most user's are expected to get the the tool from despite it being a tool developed by nvidia. What I did appear to find however was the fact the nvidia themselves ship the tool with their datacenter drivers. I'd prefer not to get nvflash tool from the
17:03 asdkoaa: techpowerup website and currently I'm not sure how to extract it from the datacenter driver install script. I'll probably come back to this later though.