前回、今回BD-SABRE-LITEにath10kを組み込もうとしてカーネルビルドしたところ、エラー発生。環境を再構築すべくrepo init -u https://github.com/Freescale/fsl-community-bsp-platform -b fidoを実行しようとしたらタイムアウトエラー発生。色々やったが解決せず。過去にビルドが通ったfidoをtarで固めて保存してたのを思い出し、復旧させました。

【関連記事】
【組込ボードで無線LAN】②(無線LANカードN-6300を組込ボードに接続するには?)
【組込ボードで無線LAN】⑧(iwのビルド:後編-1)【組込ボードで無線LAN】⑰(QCA9377-5を挿してみた)

  • ath10kをBD-SABRE-LITEに組み込む(再チャレンジ)
fidoを復旧。再びカーネルconfigを呼び出す。
$ cd ~/fido
$ MACHINE=nitrogen6x . setup-environment core-image-sato
$ MACHINE=nitrogen6x bitbake -f -c menuconfig virtual/kernel
Loading cache: 100% |###############################################################| ETA:  00:00:00
Loaded 2088 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.26.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "arm-poky-linux-gnueabi"
MACHINE           = "nitrogen6x"
DISTRO            = "poky"
DISTRO_VERSION    = "1.8.2"
TUNE_FEATURES     = "arm armv7a vfp thumb neon callconvention-hard cortexa9"
TARGET_FPU        = "vfp-neon"
meta
meta-yocto        = "(nobranch):87631919819b6f85f23f57689cd1065c64d7fb03"
meta-oe
meta-multimedia   = "(nobranch):902964a4da26e46018d2a8d17dcdda1ac4627a39"
meta-fsl-arm      = "(nobranch):c9f259a4bf8472dfa3ff75f1c3fcbe5e0ded7aaf"
meta-fsl-arm-extra = "(nobranch):b292f6204912ace18e30b7683748a311c5dfa780"
meta-fsl-demos    = "(nobranch):17f9da65efb5c65c1d44b5cc18584034b29a742b"

NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
Currently 1 running tasks (258 of 258):
0: linux-boundary-3.14.28-r0 do_menuconfig (pid 22956)
menuconfig画面で、以下の項目を変更してExit(Save)する。
├  Device Drivers  --->
    └  Network device support
        └  Wireless LAN
            └  IEEE802.11 for Host AP(Prism2/2.5/3 and WEP/TKIP/CCMP)  [ ] → [*]

├  Device Drivers  --->
    └  Network device support
        └  Wireless LAN
            └  IEEE802.11 for Host AP(Prism2/2.5/3 and WEP/TKIP/CCMP)  [ ] → [*]

├  Device Drivers  --->
    └  Network device support
        └  Wireless LAN
            └  Atheros Wireless Cards [ ] → [M]
                └  Atheros 802.11ac wireless cards support [ ] → [M]
                    └  Atheros ath10k PCI support [ ] → [M]
1
2
1

フルビルド...OK。この環境は壊れてないようだ。
$ bitbake core-image-sato
Loading cache: 100% |###############################################################| ETA:  00:00:00
Loaded 2088 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies
NOTE: multiple providers are available for jpeg (jpeg, libjpeg-turbo)
NOTE: consider defining a PREFERRED_PROVIDER entry to match jpeg
NOTE: multiple providers are available for jpeg-native (jpeg-native, libjpeg-turbo-native)
NOTE: consider defining a PREFERRED_PROVIDER entry to match jpeg-native

Build Configuration:
BB_VERSION        = "1.26.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "arm-poky-linux-gnueabi"
MACHINE           = "nitrogen6x"
DISTRO            = "poky"
DISTRO_VERSION    = "1.8.2"
TUNE_FEATURES     = "arm armv7a vfp thumb neon callconvention-hard cortexa9"
TARGET_FPU        = "vfp-neon"
meta
meta-yocto        = "(nobranch):87631919819b6f85f23f57689cd1065c64d7fb03"
meta-oe
meta-multimedia   = "(nobranch):902964a4da26e46018d2a8d17dcdda1ac4627a39"
meta-fsl-arm      = "(nobranch):c9f259a4bf8472dfa3ff75f1c3fcbe5e0ded7aaf"
meta-fsl-arm-extra = "(nobranch):b292f6204912ace18e30b7683748a311c5dfa780"
meta-fsl-demos    = "(nobranch):17f9da65efb5c65c1d44b5cc18584034b29a742b"

NOTE: Preparing RunQueue
WARNING: /home/pavement1234/fido/sources/meta-fsl-arm-extra/recipes-kernel/linux/linux-boundary_3.14.28.bb.do_compile is tainted from a forced run
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: log_check: There is a warn message in the logfile
WARNING: log_check: Matched keyword: [WARNING:]
WARNING: log_check: WARNING: The license listed Firmware-ti-connectivity was not in the licenses collected for linux-firmware

NOTE: Tasks Summary: Attempted 5308 tasks of which 5192 didn't need to be rerun and all succeeded.

Summary: There were 4 WARNING messages shown.
BD-SABRE-LITEのホームディレクトリにあるファイルたち(hostapdとかiwとか色々)をUSBメモリ(/dev/sda)にバックアップして、シャットダウン
# mount /dev/sda /mnt
# cp ~/* /mnt
# shutdown -h now
BD-SABRE-LITEからmicroSDカードを取り出し、カードリーダ経由でUbuntu14 PCに挿す。microSDカードを初期化する。
$ sudo dd if=/dev/zero of=/dev/sdc bs=1M
dd: `/dev/sdc' の書き込みエラー: デバイスに空き領域がありません

15071+0 レコード入力
15070+0 レコード出力
15802040320 バイト (16 GB) コピーされました、 816.964 秒、 19.3 MB/秒
BD-SABRE-LITEのSDカードイメージをmicroSDに書き込む。
$ cd ~/fido/core-image-sato/tmp/deploy/images/nitrogen6x/
$ sudo umount /dev/sdc
$ sudo dd if=core-image-sato-nitrogen6x.sdcard of=/dev/sdc bs=1M
288+0 レコード入力
288+0 レコード出力
301989888 バイト (302 MB) コピーされました、 18.4428 秒、 16.4 MB/秒
$ sync
microSDカードをBD-SABRE-LITEに挿し、起動。lspciしてみる。デバイスの認識はしてる。
# lspci
00:00.0 PCI bridge: Synopsys, Inc. Device abcd (rev 01)
01:00.0 Network controller: Qualcomm Atheros Device 0042 (rev 31)
ath10kドライバはあるね。
# ls /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k
ath10k_core.ko  ath10k_pci.ko
lsmodした。cfg80211がない…。
# lsmod
Module                  Size  Used by
ov5640_camera_mipi     53356  0
mxc_v4l2_capture       24972  1 ov5640_camera_mipi
ipu_bg_overlay_sdc      4175  1 mxc_v4l2_capture
ipu_still               1719  1 mxc_v4l2_capture
ipu_prp_enc             4791  1 mxc_v4l2_capture
ipu_csi_enc             2969  1 mxc_v4l2_capture
ipu_fg_overlay_sdc      5059  1 mxc_v4l2_capture
adv7180_tvin            8323  0
v4l2_int_device         1796  3 ov5640_camera_mipi,adv7180_tvin,mxc_v4l2_capture
snd_soc_fsl_asrc       23760  0
cfg80211は...あった。
# ls /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/net/wireless
cfg80211.ko
何はともあれまずcfg802.11.koをinsmod。なんかCRDAのメッセージが出るが一応OKっぽい。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/net/wireless
# insmod cfg80211.ko
cfg80211: Calling CRDA to update world regulatory domain
lsmodしてみる。cfg80211が読み込まれた。
# lsmod
Module                  Size  Used by
cfg80211              190001  0
ov5640_camera_mipi     53356  0
mxc_v4l2_capture       24972  1 ov5640_camera_mipi
ipu_bg_overlay_sdc      4175  1 mxc_v4l2_capture
ipu_still               1719  1 mxc_v4l2_capture
ipu_prp_enc             4791  1 mxc_v4l2_capture
ipu_csi_enc             2969  1 mxc_v4l2_capture
ipu_fg_overlay_sdc      5059  1 mxc_v4l2_capture
adv7180_tvin            8323  0
v4l2_int_device         1796  3 ov5640_camera_mipi,adv7180_tvin,mxc_v4l2_capture
snd_soc_fsl_asrc       23760  0
ath10kのとこに行き、ath10k_core.koをinsmod。エラー発生。ieee80211_radar_detected などのシンボルが見つからないと言われてる。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k
# insmod ath10k_core.ko
ath10k_core: Unknown symbol ieee80211_free_hw (err 0)
ath10k_core: Unknown symbol ieee80211_alloc_hw (err 0)
ath10k_core: Unknown symbol ieee80211_register_hw (err 0)
ath10k_core: Unknown symbol ieee80211_restart_hw (err 0)
ath10k_core: Unknown symbol ieee80211_find_sta (err 0)
ath10k_core: Unknown symbol ieee80211_tx_status_irqsafe (err 0)
ath10k_core: Unknown symbol wiphy_to_ieee80211_hw (err 0)
ath10k_core: Unknown symbol ath_reg_notifier_apply (err 0)
ath10k_core: Unknown symbol ieee80211_remain_on_channel_expired (err 0)
ath10k_core: Unknown symbol ieee80211_rx (err 0)
ath10k_core: Unknown symbol ath_is_world_regd (err 0)
ath10k_core: Unknown symbol ieee80211_wake_queues (err 0)
ath10k_core: Unknown symbol ieee80211_free_txskb (err 0)
ath10k_core: Unknown symbol ieee80211_tx_status (err 0)
ath10k_core: Unknown symbol ieee80211_ready_on_channel (err 0)
ath10k_core: Unknown symbol ieee80211_stop_queues (err 0)
ath10k_core: Unknown symbol ieee80211_scan_completed (err 0)
ath10k_core: Unknown symbol ieee80211_iterate_active_interfaces_atomic (err 0)
ath10k_core: Unknown symbol ieee80211_unregister_hw (err 0)
ath10k_core: Unknown symbol ath_regd_init (err 0)
ath10k_core: Unknown symbol ieee80211_beacon_get_tim (err 0)
ath10k_core: Unknown symbol ieee80211_radar_detected (err 0)
ath10k_core: Unknown symbol ieee80211_queue_work (err 0)
insmod: ERROR: could not insert module ath10k_core.ko: Unknown symbol in module

なんとなくath10k_pci.koのinsmodも試してみたが失敗(ath10k_pci.koはath10k_core.koに依存している様子)。
# insmod ath10k_pci.ko
ath10k_pci: Unknown symbol ath10k_warn (err 0)
ath10k_pci: Unknown symbol ath10k_err (err 0)
ath10k_pci: Unknown symbol ath10k_core_create (err 0)
ath10k_pci: Unknown symbol ath10k_core_destroy (err 0)
ath10k_pci: Unknown symbol ath10k_core_register (err 0)
ath10k_pci: Unknown symbol ath10k_info (err 0)
ath10k_pci: Unknown symbol ath10k_core_unregister (err 0)
insmod: ERROR: could not insert module ath10k_pci.ko: Unknown symbol in module

ath10k_core.koのエラーを見ると、ieee80211_radar_detectedなどのシンボルが解決できない様子だったので、ieee80211_radar_detectedをgoogle検索するとLinux source code: ieee80211_radar_detected identifier (v4.1) - Bootlinが見つかった。ieee80211_radar_detectedはmac80211.hに定義されているようだ。

mac80211.koをinsmodしてみる。エラーは出なかった。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/net/mac80211
# insmod mac80211.ko
lsmodしてみる。mac80211がロードされた(mac80211はcfg80211に依存している様子)。
# lsmod
Module                  Size  Used by
mac80211              259271  0
cfg80211              190001  1 mac80211

ov5640_camera_mipi     53356  0
mxc_v4l2_capture       24972  1 ov5640_camera_mipi
ipu_bg_overlay_sdc      4175  1 mxc_v4l2_capture
ipu_still               1719  1 mxc_v4l2_capture
ipu_prp_enc             4791  1 mxc_v4l2_capture
ipu_csi_enc             2969  1 mxc_v4l2_capture
ipu_fg_overlay_sdc      5059  1 mxc_v4l2_capture
adv7180_tvin            8323  0
v4l2_int_device         1796  3 ov5640_camera_mipi,adv7180_tvin,mxc_v4l2_capture
snd_soc_fsl_asrc       23760  0
再びath10k_core.koをinsmodしてみる。ath_reg_notifier_apply が見つからないと言ってるのでgoogle検索するとLinux source code: ath_reg_notifier_apply identifier (v4.7) - Bootlinが見つかった。ath_reg_notifier_apply はath/regd.hに定義されてる様子。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k
# insmod ath10k_core.ko
ath10k_core: Unknown symbol ath_reg_notifier_apply (err 0)
ath10k_core: Unknown symbol ath_is_world_regd (err 0)
ath10k_core: Unknown symbol ath_regd_init (err 0)
insmod: ERROR: could not insert module ath10k_core.ko: Unknown symbol in module
ath.koをinsmodしてみる。エラーは出なかった。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath
# insmod ath.ko
lsmodしてみる。athが読み込まれた(athもcfg80211に依存してる様子)。
# lsmod
Module                  Size  Used by
ath                    17462  0
mac80211              259271  0
cfg80211              190001  2 ath,mac80211

ov5640_camera_mipi     53356  0
mxc_v4l2_capture       24972  1 ov5640_camera_mipi
ipu_bg_overlay_sdc      4175  1 mxc_v4l2_capture
ipu_still               1719  1 mxc_v4l2_capture
ipu_prp_enc             4791  1 mxc_v4l2_capture
ipu_csi_enc             2969  1 mxc_v4l2_capture
ipu_fg_overlay_sdc      5059  1 mxc_v4l2_capture
adv7180_tvin            8323  0
v4l2_int_device         1796  3 ov5640_camera_mipi,adv7180_tvin,mxc_v4l2_capture
snd_soc_fsl_asrc       23760  0
再びath10k_core.koをinsmodしてみる。エラーは出ない。
続いてinsmod ath10k_pci.koもinsmodしてみる。エラーは出ない。
# cd /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k
# insmod ath10k_core.ko
# insmod ath10k_pci.ko
lsmodした。これでath10kに関係するドライバは全て読み込めたか?
# lsmod
Module                  Size  Used by
ath10k_pci             25979  0
ath10k_core            76884  1 ath10k_pci
ath                    17462  1 ath10k_core

mac80211              259271  1 ath10k_core
cfg80211              190001  3 ath,mac80211,ath10k_core

ov5640_camera_mipi     53356  0
mxc_v4l2_capture       24972  1 ov5640_camera_mipi
ipu_bg_overlay_sdc      4175  1 mxc_v4l2_capture
ipu_still               1719  1 mxc_v4l2_capture
ipu_prp_enc             4791  1 mxc_v4l2_capture
ipu_csi_enc             2969  1 mxc_v4l2_capture
ipu_fg_overlay_sdc      5059  1 mxc_v4l2_capture
adv7180_tvin            8323  0
v4l2_int_device         1796  3 ov5640_camera_mipi,adv7180_tvin,mxc_v4l2_capture
snd_soc_fsl_asrc       23760  0
まとめるとこんな感じの依存関係になっていた。上から順にinsmodすれば良い。
cfg80211
 mac80211
 ath
  ath10k_core
   ath10k_pci
iwたちをUSBメモリからホームディレクトリにコピー。iwは実行できた。
# mount /dev/sda /mnt
# cd /mnt
# cp iwlwifi-6000-4.ucode hostapd_cli hostapd.conf2 iw hostapd.conf hostapd ~
# cd
# ./iw
Usage:  ./iw [options] command
Options:
        --debug         enable netlink debugging
        --version       show version (5.3-3-g3708f61)
Commands:
        dev <devname> ap stop
  (以下略)
lspci -kを実行。PCIは認識してる。
# lspci -k
00:00.0 PCI bridge: Synopsys, Inc. Device abcd (rev 01)
        Kernel driver in use: pcieport
01:00.0 Network controller: Qualcomm Atheros Device 0042 (rev 31)
        Subsystem: AzureWave Device 2a51
ip linkを打ってみる。wlan0は無い。
# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: can0: <NOARP40000> mtu 16 qdisc noop qlen 10
    link/[280]
3: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:19:b8:06:ca:7f brd ff:ff:ff:ff:ff:ff
4: sit0@NONE: <NOARP> mtu 1480 qdisc noop
    link/sit 0.0.0.0 brd 0.0.0.0
firmwareがロードされたか見てみる。なんかathと名の付くファームは無い感じ。
# dmesg | grep firmware
imx-sdma 20ec000.sdma: loaded firmware 3.1
usbserial: USB Serial support registered for Keyspan - (without firmware)
egalax_ts 2-0004: Failed to read firmware version
ili210x_i2c 2-0041: Failed to get firmware version, err: -5
/lib/firmwareをlsしてみる。athはナイネ。カーネルコンフィグで選択しないとダメか?
# ls /lib/firmware
TIInit_7.2.31.bts    wl127x-fw-4-mr.bin   wl128x-fw-4-plt.bin
ti-connectivity      wl127x-fw-4-plt.bin  wl128x-fw-4-sr.bin
vpu                  wl127x-fw-4-sr.bin   wl128x-fw-5-mr.bin
wl1251-fw.bin        wl127x-fw-5-mr.bin   wl128x-fw-5-plt.bin
wl1251-nvs.bin       wl127x-fw-5-plt.bin  wl128x-fw-5-sr.bin
wl1271-fw-2.bin      wl127x-fw-5-sr.bin   wl128x-fw-ap.bin
wl1271-fw-ap.bin     wl127x-fw-plt-3.bin  wl128x-fw-plt-3.bin
wl1271-fw.bin        wl127x-nvs.bin       wl128x-fw.bin
wl1271-nvs.bin       wl128x-fw-3.bin      wl128x-nvs.bin
wl127x-fw-3.bin      wl128x-fw-4-mr.bin   wl12xx-nvs.bin
再びカーネルconfigを呼び出す。
$ cd ~/fido
$ MACHINE=nitrogen6x . setup-environment core-image-sato
$ MACHINE=nitrogen6x bitbake -f -c menuconfig virtual/kernel
Loading cache: 100% |###############################################################| ETA:  00:00:00
Loaded 2088 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.26.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "arm-poky-linux-gnueabi"
MACHINE           = "nitrogen6x"
DISTRO            = "poky"
DISTRO_VERSION    = "1.8.2"
TUNE_FEATURES     = "arm armv7a vfp thumb neon callconvention-hard cortexa9"
TARGET_FPU        = "vfp-neon"
meta
meta-yocto        = "(nobranch):87631919819b6f85f23f57689cd1065c64d7fb03"
meta-oe
meta-multimedia   = "(nobranch):902964a4da26e46018d2a8d17dcdda1ac4627a39"
meta-fsl-arm      = "(nobranch):c9f259a4bf8472dfa3ff75f1c3fcbe5e0ded7aaf"
meta-fsl-arm-extra = "(nobranch):b292f6204912ace18e30b7683748a311c5dfa780"
meta-fsl-demos    = "(nobranch):17f9da65efb5c65c1d44b5cc18584034b29a742b"

NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
Currently 1 running tasks (258 of 258):
0: linux-boundary-3.14.28-r0 do_menuconfig (pid 22956)
カーネルコンフィグにath10kのファームウェアに関する設定は見つからなかった。

Linux Wirelessのath10k firmwareを読んだ。ath10k-firmware(github)にath10kのファームがあるみたい。QCA9377の記載がある。
1

このページの下の方にあるhttps://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/に進んでみる。
1
gitのサイトにたどり着いた。
1

このページの下の方に書いてあるURLをクローンしてみようとした。半分ぐらいダウンロードしたところでサイズを見ると165Mbyte。どこまで増えるんだこれ。もしかするとLinuxのファームウェアを全て含んだアーカイブってことかな。一旦キャンセル。
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
Cloning into 'linux-firmware'...
remote: Counting objects: 8694, done.
remote: Compressing objects: 100% (3061/3061), done.
Receiving objects:  53% (4627/8694), 165.01 MiB | 429.00 KiB/s
改めてath10k-firmware(github)の右上にある緑ボタンを押しZIPをダウンロードしてみる。約81Mbyte。これならいけそうだ。
1
1

ath10k-firmware-master.zipを解凍。ath10k-firmware-masterの中はこんな感じ。QCA9377もある。
1

さて、このファイルをどう置けばいいのか。Ubuntu14のファームを見てみた。こういう階層に置けばよいみたい。
$ ls /lib/firmware/ath10k/QCA988X/hw2.0
board.bin  firmware.bin  otp.bin
QCA9377のファームが格納されたディレクトリを /lib/firmware/ath10kにコピーしreboot。
# mkdir /lib/firmware/ath10k
# mount /dev/sda /mnt
# cp -r /mnt/ath10k-firmware-master/QCA9377  /lib/firmware/ath10k
# reboot
ドライバたちをinsmod。
insmod /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/net/wireless/cfg80211.ko
insmod /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/net/mac80211/mac80211.ko
insmod /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath.ko
insmod /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k/ath10k_core.ko
insmod /lib/modules/3.14.28-1.0.0_ga+yocto+g7ff62b2/kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
再びlspci -kを実行。PCIは認識してる。
# lspci -k
00:00.0 PCI bridge: Synopsys, Inc. Device abcd (rev 01)
        Kernel driver in use: pcieport
01:00.0 Network controller: Qualcomm Atheros Device 0042 (rev 31)
        Subsystem: AzureWave Device 2a51
再びip linkを打ってみる。wlan0は無い。嫌な予感…。
# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: can0: <NOARP40000> mtu 16 qdisc noop qlen 10
    link/[280]
3: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:19:b8:06:ca:7f brd ff:ff:ff:ff:ff:ff
4: sit0@NONE: <NOARP> mtu 1480 qdisc noop
    link/sit 0.0.0.0 brd 0.0.0.0
firmwareがロードされたか見てみる。やはりathと名の付くファームは無い感じ。ath10kのQCA9377ファームを読ませるために何をすればよいのか分からない。
# dmesg | grep firmware
imx-sdma 20ec000.sdma: loaded firmware 3.1
usbserial: USB Serial support registered for Keyspan - (without firmware)
egalax_ts 2-0004: Failed to read firmware version
ili210x_i2c 2-0041: Failed to get firmware version, err: -5
一旦頭をリセットして記事を読み返してみた。そういえばcfg80211.koをinsmodしたときにcfg80211: Calling CRDA to update world regulatory domainってメッセージが出てた。これは何なんだろう。

cfg80211: Calling CRDA to update world regulatory domainをgoogleで検索したら、Linuxドライバのはなし(SILEX)がヒットした。なんかいい感じのことが書いてありそうだが、そろそろ眠くなってきたので明日読んでみようと思う。

続く



スポンサードリンク