누군가 내 Xperia Neo(haida) 스마트폰에서 외부 무선 스틱(TL-WN722N)이 작동하도록 올바른 방향을 알려줄 수 있나요?
지금까지 나는 다음을 수행했습니다.
- LegacyXperia CM11.0 소스 코드를 다운로드하고 atheros 무선 모듈을 구축하도록 커널을 구성했습니다. LX ROM 빌드가 성공적이었고 ROM이 내 NEO에서 실행됩니다.
- Atheros 펌웨어(htc_9271.fw)를 /system/etc/firmware에 복사했습니다.
- atheros 커널 모듈(ath.ko, ath9k_hw.ko, ath9k_common.ko, ath9k_htc.ko)을 설치했습니다.
- Linux Deploy를 통해 Ubuntu Trusty를 설치하고 시작했습니다.
- 그런 다음 전원이 공급되는 USB OTG Y 케이블을 사용하여 무선 어댑터(TL-WN722N)를 휴대폰에 연결했습니다.
- dmesg(sudo su -c 'echo -n 1 > /sys/bus/usb/devices/1-1/bConfigurationValue')의 "사용 가능한 버스 전원 부족" 메시지를 극복하기 위해 USB 구성을 강제했습니다.
- 이로 인해 펌웨어 로딩이 시작되지만 불행하게도 장치가 초기화되지 않습니다. 아래 dmesg 출력을 참조하세요.
도움이 된다면 기쁘겠습니다. 매우 감사합니다!
이것은 dmesg 출력입니다:
[ 588.347839] usb 1-1: ath9k_htc: Firmware htc_9271.fw requested
[ 588.652984] usb 1-1: ath9k_htc: Transferred FW: htc_9271.fw, size: 51272
[ 588.889007] ath9k_htc 1-1:1.0: ath9k_htc: HTC initialized with 33 credits
[ 589.107238] ath9k_htc 1-1:1.0: ath9k_htc: FW Version: 1.3
[ 589.107421] ath: EEPROM regdomain: 0x809c
[ 589.107421] ath: EEPROM indicates we should expect a country code
[ 589.107452] ath: doing EEPROM country->regdmn map search
[ 589.107452] ath: country maps to regdmn code: 0x52
[ 589.107452] ath: Country alpha2 being used: CN
[ 589.107482] ath: Regpair used: 0x52
[ 589.107482] ------------[ cut here ]------------
[ 589.107604] WARNING: at /home/student/android/system/out/target/product/haida/obj/KERNEL_OBJ/modules/compat_wl12xx/net/wireless/reg.c:1279 wiphy_apply_custom_regulatory+0x130/0x188 [cfg80211]()
[ 589.107879] Modules linked in: ath9k_htc ath9k_common ath9k_hw ath mac80211(O) cfg80211(O) compat(O) [last unloaded: wl12xx]
[ 589.107940] [<c0012c18>] (unwind_backtrace+0x0/0xe0) from [<c0088b8c>] (warn_slowpath_common+0x4c/0x64)
[ 589.107940] [<c0088b8c>] (warn_slowpath_common+0x4c/0x64) from [<c0088bbc>] (warn_slowpath_null+0x18/0x1c)
[ 589.107971] [<c0088bbc>] (warn_slowpath_null+0x18/0x1c) from [<bf007ce8>] (wiphy_apply_custom_regulatory+0x130/0x188 [cfg80211])
[ 589.108001] [<bf007ce8>] (wiphy_apply_custom_regulatory+0x130/0x188 [cfg80211]) from [<bf023654>] (ath_regd_init+0x110/0x14c [ath])
[ 589.108032] [<bf023654>] (ath_regd_init+0x110/0x14c [ath]) from [<bf0f4374>] (ath9k_htc_probe_device+0x574/0x77c [ath9k_htc])
[ 589.108062] [<bf0f4374>] (ath9k_htc_probe_device+0x574/0x77c [ath9k_htc]) from [<bf0ec710>] (ath9k_htc_hw_init+0x10/0x2c [ath9k_htc])
[ 589.108093] [<bf0ec710>] (ath9k_htc_hw_init+0x10/0x2c [ath9k_htc]) from [<bf0ee110>] (ath9k_hif_usb_firmware_cb+0x17c/0x1a0 [ath9k_htc])
[ 589.108123] [<bf0ee110>] (ath9k_hif_usb_firmware_cb+0x17c/0x1a0 [ath9k_htc]) from [<c0319e78>] (request_firmware_work_func+0x84/0xb8)
[ 589.108154] [<c0319e78>] (request_firmware_work_func+0x84/0xb8) from [<c009cfe0>] (process_one_work+0x1ec/0x358)
[ 589.108184] [<c009cfe0>] (process_one_work+0x1ec/0x358) from [<c009d340>] (worker_thread+0x1c8/0x30c)
[ 589.108184] [<c009d340>] (worker_thread+0x1c8/0x30c) from [<c00a18ac>] (kthread+0x80/0x90)
[ 589.108215] [<c00a18ac>] (kthread+0x80/0x90) from [<c000e5e0>] (kernel_thread_exit+0x0/0x8)
[ 589.108215] ---[ end trace e688c0c28db86abf ]---
[ 589.108398] ------------[ cut here ]------------
[ 589.108612] WARNING: at /home/student/android/system/out/target/product/haida/obj/KERNEL_OBJ/modules/compat_wl12xx/net/wireless/core.c:579 wiphy_register+0x4a8/0x518 [cfg80211]()
[ 589.108795] Modules linked in: ath9k_htc ath9k_common ath9k_hw ath mac80211(O) cfg80211(O) compat(O) [last unloaded: wl12xx]
[ 589.108825] [<c0012c18>] (unwind_backtrace+0x0/0xe0) from [<c0088b8c>] (warn_slowpath_common+0x4c/0x64)
[ 589.108856] [<c0088b8c>] (warn_slowpath_common+0x4c/0x64) from [<c0088bbc>] (warn_slowpath_null+0x18/0x1c)
[ 589.108856] [<c0088bbc>] (warn_slowpath_null+0x18/0x1c) from [<bf005170>] (wiphy_register+0x4a8/0x518 [cfg80211])
[ 589.108917] [<bf005170>] (wiphy_register+0x4a8/0x518 [cfg80211]) from [<bf0295cc>] (ieee80211_register_hw+0x430/0x654 [mac80211])
[ 589.108978] [<bf0295cc>] (ieee80211_register_hw+0x430/0x654 [mac80211]) from [<bf0f43dc>] (ath9k_htc_probe_device+0x5dc/0x77c [ath9k_htc])
[ 589.108978] [<bf0f43dc>] (ath9k_htc_probe_device+0x5dc/0x77c [ath9k_htc]) from [<bf0ec710>] (ath9k_htc_hw_init+0x10/0x2c [ath9k_htc])
[ 589.109039] [<bf0ec710>] (ath9k_htc_hw_init+0x10/0x2c [ath9k_htc]) from [<bf0ee110>] (ath9k_hif_usb_firmware_cb+0x17c/0x1a0 [ath9k_htc])
[ 589.109069] [<bf0ee110>] (ath9k_hif_usb_firmware_cb+0x17c/0x1a0 [ath9k_htc]) from [<c0319e78>] (request_firmware_work_func+0x84/0xb8)
[ 589.109100] [<c0319e78>] (request_firmware_work_func+0x84/0xb8) from [<c009cfe0>] (process_one_work+0x1ec/0x358)
[ 589.109130] [<c009cfe0>] (process_one_work+0x1ec/0x358) from [<c009d340>] (worker_thread+0x1c8/0x30c)
[ 589.109130] [<c009d340>] (worker_thread+0x1c8/0x30c) from [<c00a18ac>] (kthread+0x80/0x90)
[ 589.109161] [<c00a18ac>] (kthread+0x80/0x90) from [<c000e5e0>] (kernel_thread_exit+0x0/0x8)
[ 589.109161] ---[ end trace e688c0c28db86ac0 ]---
[ 589.110107] Failed to initialize the device
답변1
먼저 커널을 업그레이드해야 하며, Git 소스에서 업그레이드하지 않는 경우 패키지 관리자에서 "linux-firmware" 패키지를 검색하세요. Android OSE, Ubuntu x86 및 arm7hf에서도 비슷한 문제가 있었습니다. 모두 제가 언급한 작업을 수행하여 해결되었습니다.