How to fix missing Tigon firmware on Debian

You are upgrading your Debian server when you get an error about missing tigon firmware like this one:

W: Possible missing firmware /lib/firmware/tigon/tg3_tso5.bin for module tg3
W: Possible missing firmware /lib/firmware/tigon/tg3_tso.bin for module tg3
W: Possible missing firmware /lib/firmware/tigon/tg3.bin for module tg3

What do you do?

Fear not citizen, we got you covered. The error is brought on by systems that have a Tigon Gigabit ethernet controller installed. Here is how to fix it.

apt-get update && apt-get install firmware-linux-nonfree

To find out what firmwares are included in this non-free package run:

aptitude show firmware-linux-nonfree

Which should return a bunch of firmwares like:

Package: firmware-linux-nonfree
New: yes
State: installed
Automatically installed: no
Multi-Arch: foreign
Version: 0.41
Priority: optional
Section: non-free/kernel
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Architecture: all
Uncompressed Size: 4,772 k
Suggests: initramfs-tools
Breaks: firmware-ivtv (< 0.38~), firmware-linux (< 0.19)
Replaces: firmware-ivtv (< 0.38~), firmware-linux (< 0.19)
Description: Binary firmware for various drivers in the Linux kernel
 This package contains the binary firmware for various drivers in the Linux kernel.  This is a collection of firmware blobs which are not individually large enough to warrant a standalone package. 

 Contents:
 * 3Com Typhoon firmware, version 03.001.008 (3com/typhoon.bin)
 * AdvanSys ASC-3550 firmware (advansys/3550.bin)
 * AdvanSys ASC-38C0800 firmware (advansys/38C0800.bin)
 * AdvanSys ASC-38C1600 firmware (advansys/38C1600.bin)
 * AdvanSys SCSI controller microcode (advansys/mcode.bin)
[...]
   more firmware
[...]
 * Radeon HD 7700 series PFP microcode (radeon/VERDE_pfp.bin)
 * Radeon HD 7700 series RLC microcode (radeon/VERDE_rlc.bin)
 * Radeon HD 7700 series SMC microcode (radeon/VERDE_smc.bin)
 * Tehuti network card firmware (tehuti/bdx.bin)
 * Broadcom BCM5703/BCM5704 TSO firmware (tigon/tg3_tso.bin)
 * Broadcom BCM5701A0 firmware (tigon/tg3.bin)
 * Broadcom BCM5705 TSO firmware (tigon/tg3_tso5.bin)
 * Broadcom BCM57766 firmware (tigon/tg357766.bin)
 * Conexant CX231xx core firmware (v4l-cx231xx-avcore-01.fw)
 * Conexant CX23418 APU firmware (v4l-cx23418-apu.fw)
 * Conexant CX23418 CPU firmware (v4l-cx23418-cpu.fw)
 * Conexant CX23418 ADEC firmware (v4l-cx23418-dig.fw)
 * Conexant CX25840 firmware (v4l-cx25840.fw)
 * Conexant CX23885 core firmware (v4l-cx23885-avcore-01.fw)
 * VIA VT6656 firmware (vntwusb.fw)
Homepage: http://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git

As you can see, the Tigon firmware is listed for Broadcom BCM57* devices

If you want or need to download the firmware-linux-nonfree  file, go here … make sure you pick the right Debian version to ensure you are getting the correct package version.

Update for Jessie Specific

Because Jessie is no longer stable you’ll have to copy and paste the following into the sources file:

#------------------------------------------------------------------------------#
#                   OFFICIAL DEBIAN REPOS
#------------------------------------------------------------------------------#

###### Debian Main Repos
deb http://deb.debian.org/debian/ oldstable main contrib non-free
deb-src http://deb.debian.org/debian/ oldstable main contrib non-free

deb http://deb.debian.org/debian/ oldstable-updates main contrib non-free
deb-src http://deb.debian.org/debian/ oldstable-updates main contrib non-free

deb http://deb.debian.org/debian-security oldstable/updates main
deb-src http://deb.debian.org/debian-security oldstable/updates main

deb http://ftp.debian.org/debian jessie-backports main
deb-src http://ftp.debian.org/debian jessie-backports main

Once you have that updated do:

sudo apt-get update && sudo apt-get upgrade

Once the updates are done, install the firmware again:

apt-get update && apt-get install firmware-linux-nonfree

8 thoughts on “How to fix missing Tigon firmware on Debian

  1. OK nice but what HOW DO YOU DOWNLOAD the driver on PC when at system install the driver is missing therefore your Net card cant function ?
    I cannot find a way to download /lib/firmware/tigon/tg3_tso5.bin on windows computer to use it to install the second PC with Debian live…

    Like

    1. Hi guest, thanks for the note. I have updated the article with a link to the file. Make sure you pick the right version you are using to ensure you get the correct package.

      Like

  2. aptitude show firmware-linux-nonfree
    E: Unable to locate package firmware-linux-nonfree

    apt-get install firmware-linux-nonfree
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Unable to locate package firmware-linux-nonfree

    Like

    1. Querty,

      Can you try running this command and let me know the results:

      apt-cache policy linux-firmware-nonfree

      Also, what specific driver are you looking for? Newer versions of Linux Distros may not include this file but rather a more specific firmware.

      Also, can you provide the OS and it’s version you are running? It’s hard to troubleshoot with just this bit of information.

      Like

      1. apt-cache policy linux-firmware-nonfree
        N: Unable to locate package linux-firmware-nonfree

        > Also, what specific driver are you looking for?
        apt-get install btrfs-tools
        Reading package lists… Done
        Building dependency tree
        Reading state information… Done
        The following extra packages will be installed:
        liblzo2-2
        The following NEW packages will be installed:
        btrfs-tools liblzo2-2
        0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
        Need to get 490 kB of archives.
        After this operation, 3,251 kB of additional disk space will be used.
        Do you want to continue? [Y/n] y
        Get:1 http://mirror.yandex.ru/debian/ jessie/main liblzo2-2 amd64 2.08-1.2 [54.6 kB]
        Get:2 http://mirror.yandex.ru/debian/ jessie/main btrfs-tools amd64 3.17-1.1 [435 kB]
        Fetched 490 kB in 0s (4,073 kB/s)
        Selecting previously unselected package liblzo2-2:amd64.
        (Reading database … 47240 files and directories currently installed.)
        Preparing to unpack …/liblzo2-2_2.08-1.2_amd64.deb …
        Unpacking liblzo2-2:amd64 (2.08-1.2) …
        Selecting previously unselected package btrfs-tools.
        Preparing to unpack …/btrfs-tools_3.17-1.1_amd64.deb …
        Unpacking btrfs-tools (3.17-1.1) …
        Processing triggers for man-db (2.7.0.2-5) …
        Setting up liblzo2-2:amd64 (2.08-1.2) …
        Setting up btrfs-tools (3.17-1.1) …
        update-initramfs: deferring update (trigger activated)
        Processing triggers for libc-bin (2.19-18+deb8u10) …
        Processing triggers for initramfs-tools (0.120+deb8u3) …
        update-initramfs: Generating /boot/initrd.img-3.16.0-4-amd64
        W: Possible missing firmware /lib/firmware/tigon/tg3_tso5.bin for module tg3
        W: Possible missing firmware /lib/firmware/tigon/tg3_tso.bin for module tg3
        W: Possible missing firmware /lib/firmware/tigon/tg3.bin for module tg3

        HPE ProLiant DL360p Gen8 with 10GbE and SSD

        uname -a
        Linux msk2 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux

        cat /etc/*release
        PRETTY_NAME=”Debian GNU/Linux 8 (jessie)”
        NAME=”Debian GNU/Linux”
        VERSION_ID=”8″
        VERSION=”8 (jessie)”
        ID=debian
        HOME_URL=”http://www.debian.org/”
        SUPPORT_URL=”http://www.debian.org/support”
        BUG_REPORT_URL=”https://bugs.debian.org/”

        cat /proc/version
        Linux version 3.16.0-4-amd64 (debian-kernel@lists.debian.org) (gcc version 4.8.4 (Debian 4.8.4-1) ) #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02)

        lsb_release -a
        No LSB modules are available.
        Distributor ID: Debian
        Description: Debian GNU/Linux 8.10 (jessie)
        Release: 8.10
        Codename: jessie

        Like

        1. Question, did you make sure to update your apt sources (/etc/apt/sources.list)?

          Backup your original sources file:

          mv /etc/apt/sources.list /etc/apt/sources.list.orig

          Create a new sources file:

          vi /etc/apt/sources.list

          Because Jessie is no longer stable you’ll have to copy and paste the following into the sources file:

          #------------------------------------------------------------------------------#
          # OFFICIAL DEBIAN REPOS
          #------------------------------------------------------------------------------#

          ###### Debian Main Repos
          deb http://deb.debian.org/debian/ oldstable main contrib non-free
          deb-src http://deb.debian.org/debian/ oldstable main contrib non-free

          deb http://deb.debian.org/debian/ oldstable-updates main contrib non-free
          deb-src http://deb.debian.org/debian/ oldstable-updates main contrib non-free

          deb http://deb.debian.org/debian-security oldstable/updates main
          deb-src http://deb.debian.org/debian-security oldstable/updates main

          deb http://ftp.debian.org/debian jessie-backports main
          deb-src http://ftp.debian.org/debian jessie-backports main

          Once you have that updated do:

          sudo apt-get update && sudo apt-get upgrade

          Once the updates are done, install the firmware again:

          apt-get update && apt-get install firmware-linux-nonfree

          Let me know if this works.

          Like

Share your thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.