Как изменить, какая прошивка используется для моей беспроводной карты

Я пытаюсь обновить прошивку для моей беспроводной карты Intel 8260 с драйвером iwlwifi. /lib/firmware/ содержит следующие файлы:

iwlwifi-8000C-16.ucode (version 16.242414.0) iwlwifi-8000C-22.ucode (version 22.361476.0)

(я использовал информацию на https://packages.debian.org/sid/firmware-iwlwifi для определения версий этих файлы).

lshw показывает, что текущая версия прошивки - версия 16.242414.0. Как изменить его так, чтобы использовать версию 22.361476.0?

4
задан 2 June 2017 в 23:21

3 ответа

Запрошенная версия прошивки записывается в код драйвера. Как вы можете видеть, конкретная версия, если iwlwifi, что вы используете запросы -16 прошивки. Вы можете загружать несколько разных файлов укода в /lib/firmware, и драйвер будет вызывать версию, которую он написал для запроса.

ПРИМЕЧАНИЕ. В некоторых случаях существует несоответствие между тем, что, по-видимому, требует код драйвера и что на самом деле загружает.

Вы можете установить более позднюю версию iwlwifi; Как правило, это делается путем установки более новой версии Ubuntu. В Ubuntu 17.04 modinfo iwlwifi говорится:

filename:       /lib/modules/4.10.0-22-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
license:        GPL
author:         Copyright(c) 2003- 2015 Intel Corporation <linuxwifi@intel.com>
description:    Intel(R) Wireless WiFi driver for Linux
<snip>
firmware:       iwlwifi-8000C-26.ucode
<snip>

Соответствующий пакет linux-firmware содержит -13, -16 и -21; но не -26!

Вы, безусловно, можете обновить свою прошивку. В любом случае драйвер загрузит файл прошивки, который он написал для запроса. Во многих случаях драйвер будет написан для использования любой из нескольких версий; например, -6, -7, -8 или -9. Драйвер ищет новейший, который он может найти в /lib/firmware, и, если он не находит его, загружает следующую самую новую и так далее. В приведенном выше примере «например», если в новейшем пакете прошивки содержится -6, -7, -8, -9 и -10, никакого вреда не будет. Водитель просто загружает новейшие и последние, за которые он написан, и игнорирует остальные. -10 не будет загружаться.

Чтобы обновить ваше:

wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.164_all.deb
sudo dpkg -i linux*.deb

Если ваше желание загружать новую прошивку мотивировано проблемой беспроводной связи, нам бы очень хотелось ее услышать и попробовать чтобы помочь.

1
ответ дан 22 May 2018 в 21:56
  • 1
    Спасибо огромное! Я вижу, что я неправильно понял несколько вещей. Я пытался выполнить первый ответ в этом вопросе , который начинается с обновления прошивки. Похоже, я не могу обновить свою прошивку без обновления до новой версии, верно? – PiotrChernin 9 June 2017 в 16:00
  • 2
    Таким образом, на выходе lshw отображается версия прошивки, которой драйвер требует , а не тот, который он использует в настоящее время? В этом случае, как обновляется какая-либо прошивка без обновления самого драйвера? – PiotrChernin 9 June 2017 в 16:02
  • 3
    Пожалуйста, см. Мое редактирование выше в несколько мгновений. lshw показывает загруженную версию, как и dmesg | grep iwl – chili555 9 June 2017 в 17:53
  • 4
    Я все еще что-то не понимаю. Если драйвер требует определенной версии, то как я могу обновить прошивку? Он будет продолжать использовать версию, которую он написал, чтобы требовать, независимо от того, как моя шахта все еще использует версию 16, хотя версия 22 доступна. – PiotrChernin 9 June 2017 в 18:09
  • 5
    Правильно ли это понимание: modprobe <drivername> показывает, какая версия прошивки требуется ; lshw и dmesg предоставляют версию прошивки, загруженной ; они почти всегда одинаковы, за исключением редких случаев. (?) – PiotrChernin 9 June 2017 в 18:12

Запрошенная версия прошивки записывается в код драйвера. Как вы можете видеть, конкретная версия, если iwlwifi, что вы используете запросы -16 прошивки. Вы можете загружать несколько разных файлов укода в /lib/firmware, и драйвер будет вызывать версию, которую он написал для запроса.

ПРИМЕЧАНИЕ. В некоторых случаях существует несоответствие между тем, что, по-видимому, требует код драйвера и что на самом деле загружает.

Вы можете установить более позднюю версию iwlwifi; Как правило, это делается путем установки более новой версии Ubuntu. В Ubuntu 17.04 modinfo iwlwifi говорится:

filename: /lib/modules/4.10.0-22-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko license: GPL author: Copyright(c) 2003- 2015 Intel Corporation <linuxwifi@intel.com> description: Intel(R) Wireless WiFi driver for Linux <snip> firmware: iwlwifi-8000C-26.ucode <snip>

Соответствующий пакет linux-firmware содержит -13, -16 и -21; но не -26!

Вы, безусловно, можете обновить свою прошивку. В любом случае драйвер загрузит файл прошивки, который он написал для запроса. Во многих случаях драйвер будет написан для использования любой из нескольких версий; например, -6, -7, -8 или -9. Драйвер ищет новейший, который он может найти в /lib/firmware, и, если он не находит его, загружает следующую самую новую и так далее. В приведенном выше примере «например», если в новейшем пакете прошивки содержится -6, -7, -8, -9 и -10, никакого вреда не будет. Водитель просто загружает новейшие и последние, за которые он написан, и игнорирует остальные. -10 не будет загружаться.

Чтобы обновить ваше:

wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.164_all.deb sudo dpkg -i linux*.deb

Если ваше желание загружать новую прошивку мотивировано проблемой беспроводной связи, нам бы очень хотелось ее услышать и попробовать чтобы помочь.

1
ответ дан 18 July 2018 в 12:15

Запрошенная версия прошивки записывается в код драйвера. Как вы можете видеть, конкретная версия, если iwlwifi, что вы используете запросы -16 прошивки. Вы можете загружать несколько разных файлов укода в /lib/firmware, и драйвер будет вызывать версию, которую он написал для запроса.

ПРИМЕЧАНИЕ. В некоторых случаях существует несоответствие между тем, что, по-видимому, требует код драйвера и что на самом деле загружает.

Вы можете установить более позднюю версию iwlwifi; Как правило, это делается путем установки более новой версии Ubuntu. В Ubuntu 17.04 modinfo iwlwifi говорится:

filename: /lib/modules/4.10.0-22-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko license: GPL author: Copyright(c) 2003- 2015 Intel Corporation <linuxwifi@intel.com> description: Intel(R) Wireless WiFi driver for Linux <snip> firmware: iwlwifi-8000C-26.ucode <snip>

Соответствующий пакет linux-firmware содержит -13, -16 и -21; но не -26!

Вы, безусловно, можете обновить свою прошивку. В любом случае драйвер загрузит файл прошивки, который он написал для запроса. Во многих случаях драйвер будет написан для использования любой из нескольких версий; например, -6, -7, -8 или -9. Драйвер ищет новейший, который он может найти в /lib/firmware, и, если он не находит его, загружает следующую самую новую и так далее. В приведенном выше примере «например», если в новейшем пакете прошивки содержится -6, -7, -8, -9 и -10, никакого вреда не будет. Водитель просто загружает новейшие и последние, за которые он написан, и игнорирует остальные. -10 не будет загружаться.

Чтобы обновить ваше:

wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.164_all.deb sudo dpkg -i linux*.deb

Если ваше желание загружать новую прошивку мотивировано проблемой беспроводной связи, нам бы очень хотелось ее услышать и попробовать чтобы помочь.

1
ответ дан 24 July 2018 в 19:56

Другие вопросы по тегам:

Похожие вопросы: