This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.
Please visit our production wiki at https://wiki.gentoo.org
iwlwifi/ko
Warning: Display title "iwlwifi/ko" overrides earlier display title "Iwlwifi".
iwlwifi 는 인텔의 현재 무선 네트워크 칩을 구동하는 무선 네트워크 장치 드라이버입니다.
커널
동작하게 하려면 일부 커널 설정이 필요합니다. (장치에 따라) 드라이버에서 802.11a/b/g/n/ac를 지원하므로, IEEE 802.11를 활성화해야 합니다.
IEEE 802.11
Activate at least cfg80211 and mac80211. Some wireless drivers also require a rate control algorithm.
[*] Networking support ---> [*] Wireless ---> <*> cfg80211 - wireless configuration API [ ] nl80211 testmode command [ ] enable developer warnings [ ] cfg80211 regulatory debugging [ ] cfg80211 certification onus [*] enable powersave by default [ ] cfg80211 DebugFS entries [ ] use statically compiled regulatory rules database [ ] cfg80211 wireless extensions compatibility <*> Generic IEEE 802.11 Networking Stack (mac80211) [*] Minstrel [*] Minstrel 802.11n support [ ] Minstrel 802.11ac support Default rate control algorithm (Minstrel) ---> [ ] Enable mac80211 mesh networking (pre-802.11s) support -*- Enable LED triggers [ ] Export mac80211 internals in DebugFS [ ] Trace all mac80211 debug messages [ ] Select mac80211 debugging features ----
Minstrel and its 802.11n support is a rate control algorithm.
iwlwifi 장치 드라이버
인텔의 현재 무선 네트워크 칩에 이 드라이버를 사용하십시오. 여기에 나타난대로 모듈<M>
로 설정하십시오. 또한 펌웨어 표의 모듈 칸에서 필요한 내용에 따라 DVM 옵션 또는 MVM 옵션을 수정하십시오.
Device Drivers ---> [*] Network device support ---> --- Network device support [*] Wireless LAN ---> --- Wireless LAN [ ] ADMtek devices [ ] Atheros/Qualcomm devices [ ] Atmel devices [ ] Broadcom devices [ ] Cisco devices [*] Intel devices < > Intel PRO/Wireless 2100 Network Connection < > Intel PRO/Wireless 2200BG and 2915ABG Network Connection < > Intel Wireless WiFi 4965AGN (iwl4965) < > Intel PRO/Wireless 3945ABG/BG Network Connection (iwl3945) <M> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) <M> Intel Wireless WiFi DVM Firmware support <M> Intel Wireless WiFi MVM Firmware support [ ] Enable broadcast filtering (NEW) [ ] Enable runtime power management mode for PCIe devices (NEW) Debugging Options ---> [ ] Intersil devices [ ] Marvell devices [ ] MediaTek devices [ ] Ralink devices [ ] Realtek devices [ ] Redpine Signals Inc devices [ ] STMicroelectronics devices [ ] Texas Instrument devices [ ] ZyDAS devices < > Simulated radio testing tool for mac80211 < > Wireless RNDIS USB support
커널에 드라이버를 모듈(
<M>
) 대신 넣는 방식(<*>
)으로 빌드하면, 펌웨어도 커널에 넣어 빌드해야합니다. 내장 설정 활용 섹션을 확인하십시오.
커널 설정을 바꾸고 나면 커널 재 빌드를 잊지 마십시오.
After rebuilding the kernel and rebooting with this kernel, the selected options can be verified as follows:
Support for the /proc/config.gz pseudo-file is enabled through the Kernel/IKCONFIG_Support feature.
user $
zgrep 'IWLWIFI\|IWLDVM\|IWLMVM' /proc/config.gz
펌웨어
이 표en에 나온 대로 개별 장치의 펌웨어가 필요합니다. sys-kernel/linux-firmware 꾸러미와 장치별 sys-firmware/iwlxxxx-*ucode 꾸러미로 있습니다.
root #
emerge --ask sys-kernel/linux-firmware
내장 설정 활용
모듈(<M>
)대신 커널 내장형으로 드라이버를 빌드하면, 펌웨어도 커널에 넣어en 빌드해야합니다.
Device Drivers ---> Generic Driver Options ---> -*- Userspace firmware loading support [ ] Include in-kernel firmware blobs in kernel binary (iwlwifi-xxxx.ucode) External firmware blobs to build into the kernel binary (/lib64/firmware) Firmware blobs root directory [ ] Fallback user-helper invocation for firmware loading
이 경우 iwlwifi-xxxx.ucode
대신 정확한 펌웨어 이름으로 바꾸십시오. FW_LOADER_USER_HELPER_FALLBACK 설정 변수에 몇가지 사항을 확인해봐야 할 수도 있습니다.
Network device names
Network device names eth0
, wlan0
, etc. as provided by the kernel could be changed on boot (see dmesg) by the /lib/udev/rules.d/80-net-name-slot.rules udev rule.
To keep the classic naming this rule can be overwritten with an equally named empty file in the /etc/udev/rules.d directory:
root #
touch /etc/udev/rules.d/80-net-name-slot.rules
Testing
After a reboot with the new kernel or after loading the modules, the device can be checked for availability by using following methods:
- Using the /sys file system
- Using the ip command
- Using the ifconfig command
- Using the iw command
/sys file system
Get the device name by listing the /sys/class/net directory contents using ls -al or the tree command (provided by the app-text/tree package):
user $
tree /sys/class/net
/sys/class/net/ ├── enp2s14 -> ../../devices/pci0000:00/0000:00:1e.0/0000:02:0e.0/net/enp2s14 ├── lo -> ../../devices/virtual/net/lo ├── sit0 -> ../../devices/virtual/net/sit0 └── wlp8s0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:08:00.0/net/wlp8s0
ip command
To obtain the device name and verify that the wireless card is detected, execute the following ip command:
user $
ip addr
3: wlan0: ...
ifconfig command
The ifconfig command is provided through the sys-apps/net-tools package. Use ifconfig -a to list all detected network cards, even those that are not enabled/active yet:
user $
ifconfig -a
wlan0 ...
A network card can be activated as follows:
root #
ifconfig -v wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill WARNING: at least one error occurred. (-1)
In this example, enabling the wireless card failed as a radio frequency kill state is set (usually to keep power consumption at bay and not connect by accident to a wireless network).
iw command
If the wireless network card driver supports the nl80211 stack, then the iw command as offered by the net-wireless/iw package can show the detected wireless cards:
root #
iw dev
phy#0 Interface wlan0 ifindex 4 type managed
modprobe와 modinfo
modprobe 에서는 어떤 결과도 나오지 말아야 합니다:
root #
modprobe iwlwifi
드라이버 모듈에 대한 자세한 내용은 modinfo iwlwifi 명령에서 확인할 수 있습니다.
user $
modinfo iwlwifi
lspci
lspci 명령에서 Kernel driver in use:
와 Kernel modules:
두 부분에 iwlwifi
가 나타나야합니다.
root #
lspci -k
xx:xx.x Network controller: Intel Corporation Wireless xxxx Kernel driver in use: iwlwifi Kernel modules: iwlwifi
xx:xx.x
식별자는 dmesg에서 지정 정보를 찾아볼 때 쓸만합니다.
dmesg
Check the output of dmesg. Replace 03:00.0
with the identifier from lspci and wlp
with the network interface name.
user $
dmesg | grep -i -E '03:00.0|wlp|iwl|80211'
[ 1.200902] pci 0000:03:00.0: [8086:0082] type 00 class 0x028000 [ 1.201065] pci 0000:03:00.0: reg 0x10: [mem 0xf7d00000-0xf7d01fff 64bit] [ 1.201776] pci 0000:03:00.0: PME# supported from D0 D3hot D3cold [ 1.201999] pci 0000:03:00.0: System wakeup disabled by ACPI [ 18.260461] iwlwifi 0000:03:00.0: enabling device (0100 -> 0102) [ 18.260598] iwlwifi 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control [ 18.419884] iwlwifi 0000:03:00.0: loaded firmware version 18.168.6.1 op_mode iwldvm [ 18.671329] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUG enabled [ 18.671330] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUGFS enabled [ 18.671330] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEVICE_TRACING disabled [ 18.671332] iwlwifi 0000:03:00.0: Detected Intel(R) Centrino(R) Advanced-N 6205 AGN, REV=0xB0 [ 18.673421] iwlwifi 0000:03:00.0: L1 Enabled - LTR Disabled [ 18.705882] ieee80211 phy0: Selected rate control algorithm 'iwl-agn-rs' [ 18.706468] iwlwifi 0000:03:00.0 wlp3s0: renamed from wlan0 [ 23.286871] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready ......... snip ......... [ 48.176954] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready [ 92.720710] wlp3s0: authenticate with my WLAN AP [ 92.724440] wlp3s0: send auth to my WLAN AP (try 1/3) [ 92.728436] wlp3s0: authenticated [ 92.728646] wlp3s0: waiting for beacon from my WLAN AP [ 92.821389] wlp3s0: associate with my WLAN AP (try 1/3) [ 92.828148] wlp3s0: RX AssocResp from my WLAN AP (capab=0x431 status=0 aid=4) [ 92.853124] wlp3s0: associated [ 92.853173] IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready
문제 해결
Kernel not loaded
Check if the correct kernel is loaded. This can be accomplished as follows (depends on the IKCONFIG feature):
user $
zgrep CONFIG_IWL /proc/config.gz
펌웨어 문제
- udev 또는 systemd를 사용하는 시스템에는 커널에서 바이너리 블롭을 불러오도록 설정해야합니다. 이 경우, 무선 카드 펌웨어는 불러와야 할 펌웨어입니다. 이 방식으로 커널을 설정하는 자세한 방법은 젠투 포럼의 다음 스레드에서 찾아볼 수 있습니다: FW_LOADER_USER_HELPER_FALLBACK.
무선 연결이 동작하지 않네요
- Intel Corporation Wireless 8260 (rev 3a) can't access the RSA semaphore it is write protected
추가 참조
- Handbook:AMD64/Networking/Wireless
- wifi
- wpa_supplicant
- Network management using DHCPCD
- netifrc
- Troubleshooting