무선 카드에 사용되는 펌웨어를 변경하는 방법


4

무선 카드, iwlwifi드라이버가 있는 Intel 8260의 펌웨어를 업데이트하려고합니다 . /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이 사용되도록 변경하려면 어떻게합니까?


왜 우분투에서 데비안 패키지를 사용하고 있습니까? 22.361476.0이로드 / 작동합니까? 가장 쉬운 솔루션으로 16.242414.0을 제거하는 것이 좋습니다 (22.361476.0이 작동한다고 가정).
Panther

다른 사람들의 참고를 위해 나는 당신이 궁극적으로 여기 에 답을 사용 하여 문제
Zanna

@Zanna 동의합니다. 최신 패키지는 다음과 같습니다. mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/…
chili555

@ bodhi.zazen-데비안 패키지를 사용하지 않고 참조를 위해 해당 페이지를 사용합니다. 나는 당신의 의견의 나머지 부분이 내가 처음부터 배우려고하는 것이라고 생각합니다. 나는 당신이 무슨 말을하는지 모르겠습니다.
PiotrChernin

sudo apt-get purge iwlwifi그런 다음 apt-get 또는 .deb에서 원하는 버전을 설치하십시오
Panther

답변:


1

요청 된 펌웨어 버전이 드라이버 코드에 기록됩니다. 보시다시피, 특정 버전 iwlwifi은 -16 펌웨어 요청을 사용합니다. 여러 다른 ucode 파일을로드 할 수 /lib/firmware있으며 드라이버는 필요한 버전을 호출합니다.

참고 : 경우에 따라 드라이버 코드에서 요구하는 것과 실제로로드하는 것간에 불일치가 있습니다.

iwlwifi의 이후 버전을 설치할 수 있습니다. 일반적으로 이것은 최신 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

무선 문제로 인해 최신 펌웨어를로드하려는 동기가있는 경우 펌웨어를 듣고 도움을 드리고자합니다.


정말 고맙습니다! 나는 몇 가지 오해를 볼 수 있습니다. 펌웨어 업그레이드로 시작하는 질문 의 첫 번째 대답을 따르려고했습니다 . 새 릴리스로 업그레이드하지 않고 펌웨어를 더 이상 업그레이드 할 수없는 것 같습니다. 맞습니까?
PiotrChernin 2016 년

따라서 출력은 현재 사용중인 lshw버전이 아니라 드라이버에 필요한 펌웨어 버전을 표시 합니까? 이 경우 드라이버 자체를 업그레이드하지 않고 펌웨어를 어떻게 업그레이드합니까?
PiotrChernin

잠시 후 위의 편집 내용을 참조하십시오. lshw다음과 같이로드 된 버전을 보여줍니다dmesg | grep iwl
chili555

아직 이해가 안되는 부분이 있습니다. 드라이버에 특정 버전이 필요한 경우 펌웨어를 어떻게 업그레이드 할 수 있습니까? 22 버전을 사용할 수 있어도 내 버전이 여전히 16 버전을 사용하는 방식에 관계없이 필요한 버전을 계속 사용합니다.
PiotrChernin 2016 년

이 이해가 맞 modprobe <drivername>습니까? 필요한 펌웨어 버전을 보여줍니다 . lshwdmesg펌웨어 버전 제공 로드를 ; 드문 경우를 제외하고는 거의 항상 동일합니다. (?)
PiotrChernin 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.