Циклтестированияследующейверсиинашеголюбимогодистрибутивавсамомразгаре. Сейчасяработаюсчетвертой milestone ихотелбыкороткорассказатьовнешнем USB wifi-адаптере TL-WN822N откомпании TP-LINK. Онсобораннаосновеседьмогоидевятогопоколениячипов Atheros Communications.
Виюле 2008 г. компания Atheros решиласменитьполитику, наняладвухключевыхразработчиков Linux: ЛуисаРодригеса (исп. Luis Rodriguez) иЙоуниМалинена (фин. Jouni Malinen), выпустившихоткрытыедрайверыдляработыустройств802.11nв Linux. Atheros такжеопубликовалачастьисходногокодаихбинарного HAL подлицензией ISC вцеляхпомощисообществувдобавленииподдержкичипов Atheros 802.11a/802.11b/802.11g. Компаниясталаприниматьактивноеучастиевразработкедрайвера ath9k для Linux, споддержкойвсехнынешних 802.11n чипсетов.
Итак, драйвераath9kиath9k_htcоткрытыивключенывядро. Темнеменее, ожидаемогорезультатапослевключенияэтогоустройствамынеполучим… нообовсемпопорядку.
> cat /etc/SuSE-release
openSUSE 13.1 Milestone 4 (i586)
VERSION = 13.1
CODENAME = Bottle> lsusb | grep Atheros
Bus 001 Device 002: ID 0cf3:7015 Atheros Communications, Inc. TP-Link TL-WN821N
v3 802.11n [Atheros AR7010+AR9287]> lsmod | grep ath
ath9k_htc 60161 0
ath9k_common 13619 1 ath9k_htc
ath9k_hw 399060 2 ath9k_htc,ath9k_common
ath 19187 3 ath9k_htc,ath9k_common,ath9k_hw
mac80211 561264 2 ath9k_htc,b43
cfg80211 457477 4 ath9k_htc,ath,b43,mac80211> dmesg
[ 3896.012025] usb 1-3: new high speed USB device number 2 using ehci_hcd
[ 3896.130936] usb 1-3: New USB device found, idVendor=0cf3, idProduct=7015
[ 3896.130941] usb 1-3: New USB device strings: Mfr=16, Product=32, SerialNumber=48
[ 3896.130944] usb 1-3: Product: USB WLAN
[ 3896.130947] usb 1-3: Manufacturer: ATHEROS
[ 3896.130949] usb 1-3: SerialNumber: 12345
[ 3896.515340] cfg80211: Calling CRDA to update world regulatory domain
[ 3896.602625] cfg80211: World regulatory domain updated:
[ 3896.602628] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 3896.602631] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 3896.602634] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 3896.602636] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 3896.602639] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 3896.602642] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)[ 3896.675872] usb 1-3: ath9k_htc: Firmware - htc_7010.fw not found
[ 3896.675884] ath9k_htc: probe of 1-3:1.0 failed with error -22
[ 3896.676219] usbcore: registered new interface driver ath9k_htc
Упользователей Ubuntu такойпроблемыневозникнет. Невозникнетпотому, чтоихпакетсядромсодержитвсе, чтотолькоможно (нужноиненужно). Унасжеэтосделаноболееинтеллигентней: firmware, которуюнеможетнайти ath9k_htc, находитсявотдельномпакете, т.е. мыеёустанавливаемтольковтомслучае, еслионадействительнонужна. Ммм… напримерсейчас
> sudo zypper in kernel-firmware> rpm -ql kernel-firmware | grep htc_7010.fw /lib/firmware/htc_7010.fw> rpm -q kernel-desktop kernel-firmware kernel-desktop-3.10.1-3.5.g0cd5432.i686 kernel-firmware-20130714git-1.2.noarch
Послеэтогосноваподключаемнашеустройство. Ядротеперьреагируетиначе:
[ 169.524112] usb 1-3: new high-speed USB device number 3 using ehci-pci [ 169.643869] usb 1-3: New USB device found, idVendor=0cf3, idProduct=7015 [ 169.643888] usb 1-3: New USB device strings: Mfr=16, Product=32, SerialNumber=48 [ 169.643901] usb 1-3: Product: USB WLAN [ 169.643912] usb 1-3: Manufacturer: ATHEROS [ 169.643923] usb 1-3: SerialNumber: 12345 [ 169.784881] usb 1-3: ath9k_htc: Firmware htc_7010.fw requested [ 169.786161] usbcore: registered new interface driver ath9k_htc [ 169.889350] usb 1-3: ath9k_htc: Transferred FW: htc_7010.fw, size: 72992 [ 169.951363] ath9k_htc 1-3:1.0: ath9k_htc: HTC initialized with 45 credits [ 170.076094] ath9k_htc 1-3:1.0: ath9k_htc: FW Version: 1.3 [ 170.076104] ath: EEPROM regdomain: 0x809c [ 170.076109] ath: EEPROM indicates we should expect a country code [ 170.076114] ath: doing EEPROM country->regdmn map search [ 170.076119] ath: country maps to regdmn code: 0x52 [ 170.076124] ath: Country alpha2 being used: CN [ 170.076128] ath: Regpair used: 0x52 [ 170.141399] ieee80211 phy1: Atheros AR9287 Rev:2 [ 170.141524] cfg80211: Calling CRDA for country: CN [ 170.150819] cfg80211: Regulatory domain changed to country: CN [ 170.150827] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) [ 170.150834] cfg80211: (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 170.150839] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (N/A, 3000 mBm) [ 170.150843] cfg80211: (57240000 KHz - 59400000 KHz @ 2160000 KHz), (N/A, 2800 mBm) [ 170.150848] cfg80211: (59400000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4400 mBm) [ 170.150853] cfg80211: (63720000 KHz - 65880000 KHz @ 2160000 KHz), (N/A, 2800 mBm)
Послеэтоговыможетеувидетьновыйинтерфейсчерезiwconfigилиhwinfo –wlan.
Есливыиспользуете KDE, NM-апплетсразужедобавитновыйинтерфейсипокажетсписокдоступныхсетей. Еслижевынеиспользуете NetworkManager, тодляподключениясначалапридетсясделать dhcpd-запроскрутеру. Обэтомярассказывалвстатьеоподдержкеbroadcom wifi-чипах.
Удачи, инезабвайтеприниматьучастиевтестировании openSUSE
