envytools / firmware

Tools to find and process firmware in blob data
Other
15 stars 7 forks source link

versions hard coded into extract_firmware.py are somewhat out of date #6

Open dabeegmon opened 3 years ago

dabeegmon commented 3 years ago

Greetings

Running nouveau on debian testing with 2 graphics cards. 1. Nvidia 1050 Ti 2. Nvidia 570 Driving 5 monitors 1. 4k 2. rest 1920x1080 Driving seems to work well enough but i'm having to reboot at least once every 24 hours.

Error in dmesg is:

[ 428.865383] nouveau 0000:02:00.0: Direct firmware load for nouveau/nvc8_fuc084 failed with error -2 [ 428.865390] nouveau 0000:02:00.0: firmware: failed to load nouveau/nvc8_fuc084d (-2) [ 428.865391] nouveau 0000:02:00.0: Direct firmware load for nouveau/nvc8_fuc084d failed with error -2 [ 428.865393] nouveau 0000:02:00.0: msvld: unable to load firmware data [ 428.865394] nouveau 0000:02:00.0: msvld: init failed, -19

Working through the following page:

https://nouveau.freedesktop.org/VideoAcceleration.html

I get to

$ python2 extract_firmware.py # this script is for python 2 only

where I am using

NVIDIA-Linux-x86_64-390.141.run extract_firmware.py (from right here)

my resultant is:

root@debianbase:/tmp/nouveau/nvidia# ls extract_firmware.py NVIDIA-Linux-x86_64-390.141.run root@debianbase:/tmp/nouveau/nvidia# python3 extract_firmware.py Please run this in a directory where NVIDIA-Linux-x86-340.108 is a subdir.

You can make this happen by running wget http://us.download.nvidia.com/XFree86/Linux-x86/340.108/NVIDIA-Linux-x86-340.108.run sh NVIDIA-Linux-x86-340.108.run --extract-only

Note: You can use other versions/arches, see the source for what is acceptable.

In looking at the source code version 340.108 is that latest listed.

What and how do I change things so that I can extract this firmware blob so that hopefully my error message will disappear and my system will as robust as it was for the last 4 years. (I added the 5th monitor and that's when the issue appeared.)

TIA

imirkin commented 3 years ago

First off, it expects you to do the extraction (so you have to run it). Secondly, it'll only work with the versions listed. Feel free to add support for other versions, but as far as I'm concerned, it's just busywork -- you should have no trouble retrieving the older versions.