Porting AP6335 WIFI to Android4.4.2

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Porting AP6335 WIFI to Android4.4.2

Jump to solution
4,458 Views
chenli_2016
Contributor II

NXP社区的工程师

您好,

我们这边用到一款i.MX6Q SABRE的开发板为参考板,制作定制了自己的产品板子,Android版本为4.4.2,只有wifi有改动,我们wifi用的是AMPAK 的AP6335芯片,移植的时候参考NXP社区分享的文档Porting BCM4330/BCM43362 WIFI to Android4.2.2,现在在android界面层可以设置wifi网络热点,但是扫描不到网络,logcat错误如下:

dhd_bus_devreset: == WLAN ON ==

F1 signature read @0x18000000=0x16224335

F1 signature OK, socitype:0x1 chip:0x4339 rev:0x1 pkg:0x2

DHD: dongle ram size is set to 786432(orig 786432) at 0x180000

dhd_conf_read_config: Ignore config file /system/etc/firmware/config.txt

dhd_conf_set_fw_name_by_chip: firmware_path=/system/etc/firmware/fw_bcm4339a0_ag.bin

Final fw_path=/system/etc/firmware/fw_bcm4339a0_ag.bin

Final nv_path=/system/etc/firmware/nvram.txt

Final conf_path=/system/etc/firmware/config.txt

NVRAM version: AP6335_NVRAM_V1.7_04102014

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

D/WifiHW ( 2650): -------------------------->wifi_start_supplicant: sleep 500ms, return 0

D/WifiMonitor( 2650): startMonitoring(wlan0) with mConnected = false

D/WifiHW ( 2650): -------------------------->enter wifi_connect_to_supplicant

D/WifiHW ( 2650): -------------------------->enter wifi_connect_on_socket_path

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! error:No such file or directory

D/BluetoothAdapter( 2910): 1101234160: getState() : mService = null. Returning STATE_OFF

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! try_cnt=49

dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)

bcmsdh_oob_intr_register: Enter

bcmsdh_oob_intr_register OOB irq=377 flags=4

bcmsdh_oob_intr_register: enable_irq_wake

add wake up source irq 105

dhd_conf_set_band: Set band 0

Firmware up: op_mode=0x0005, MAC=6c:fa:a7:26:2c:da

dhd_conf_set_country: Set country CN, revision 38

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! try_cnt=48

Country code: CN (CN/38)

dhd_conf_set_roam: Set roam_off 1

dhd_conf_set_glom: set bus:txglom 8

dhd_conf_set_ampdu_ba_wsize: set ampdu_ba_wsize 40

Firmware version = wl0: Apr 3 2014 12:12:42 version 6.37.32.28.2_ip (r424058)

Driver: 1.201.34.2 (r491657)

Firmware: wl0: Apr 3 2014 12:12:42 version 6.37.32.28.2_ip (r424058)

dhd_txglom_enable: enable 0

dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64

wl_android_wifi_on: Success

p2p0: p2p_dev_addr=6e:fa:a7:26:2c:da

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! try_cnt=47

dhd_open: Exit ret=0

D/Tethering( 2650): sendTetherStateChangedBroadcast 1, 0, 0

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! try_cnt=46

I/wpa_supplicant( 3535): rfkill: Cannot open RFKILL control device

D/Tethering( 2650): sendTetherStateChangedBroadcast 2, 0, 0

E/WifiHW ( 2650): ----------->/data/system/wpa_supplicant/wlan0: File not exists! try_cnt=45

D/WifiConfigStore( 2650): Loading config and enabling all networks

E/WifiConfigStore( 2650): Error parsing configurationjava.io.FileNotFoundException: /data/misc/wifi/ipconfig.txt: open failed: ENOENT (No such file or directory)

E/WifiStateMachine( 2650): Failed to set device name sabresd_6dq

E/WifiStateMachine( 2650): Failed to set manufacturer Freescale

E/WifiStateMachine( 2650): Failed to set model name SABRESD-MX6DQ

E/WifiStateMachine( 2650): Failed to set model number SABRESD-MX6DQ

E/WifiStateMachine( 2650): Failed to set serial number 191411d4df64727f

E/WifiStateMachine( 2650): Failed to set WPS config methods

D/BluetoothAdapter( 2910): 1101234160: getState() : mService = null. Returning STATE_OFF

E/WifiStateMachine( 2650): Failed to set primary device type 10-0050F204-5

D/CommandListener( 2251): Setting iface cfg

D/CommandListener( 2251): Trying to bring up p2p0

D/WifiMonitor( 2650): startMonitoring(p2p0) with mConnected = true

E/WifiStateMachine( 2650): Failed to set frequency band 0

p2p0: no IPv6 routers presen

netcfg的信息如下:

255|root@sabresd_6dq:/ #

nsmod /system/lib/modules/cf <

cfg80211.ko cfg80211_realtek.ko

em/lib/modules/cfg80211.ko <

cfg80211: Calling CRDA to update world regulatory domain

root@sabresd_6dq:/ #

root@sabresd_6dq:/ #

root@sabresd_6dq:/ #

root@sabresd_6dq:/ # insmod /system/lib/modules/bcmdhd.ko

dhd_module_init: in

======== bcm_wlan_set_plat_data ========

GPIO(WL_HOST_WAKE) = GPIO_4_25

host_oob_irq: 377

host_oob_irq_flags=4

dhd_wifi_platform_load: Enter

Power-up adapter 'DHD generic adapter'

wifi_platform_set_power = 1

======== PULL WL_REG_ON HIGH! ========

wifi_platform_bus_enumerate device present 1

======== Card detection to detect SDIO card! ========

mmc2: queuing unknown CIS tuple 0x80 (2 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (7 bytes)

mmc2: queuing unknown CIS tuple 0x91 (3 bytes)

mmc2: new high speed SDIO card at address 0001

mmc2: queuing unknown CIS tuple 0x80 (2 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (7 bytes)

bcmsdh_register: register client driver

mmc2: queuing unknown CIS tuple 0x80 (2 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (3 bytes)

mmc2: queuing unknown CIS tuple 0x80 (7 bytes)

bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter

bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter

bus num (host idx)=2, slot num (rca)=1

found adapter info 'DHD generic adapter'

F1 signature read @0x18000000=0x16224335

F1 signature OK, socitype:0x1 chip:0x4339 rev:0x1 pkg:0x2

DHD: dongle ram size is set to 786432(orig 786432) at 0x180000

wl_create_event_handler(): thread:wl_event_handler:cc5 started

tsk Enter, tsk = 0xca6e13f0

p2p0: P2P Interface Registered

dhd_attach(): thread:dhd_watchdog_thread:ccc started

dhd_attach(): thread:dhd_dpc:cce started

dhd_attach(): thread:dhd_rxf:ccf started

dhd_deferred_work_init: work queue initialized

Dongle Host Driver, version 1.201.34.2 (r491657)

Compiled in drivers/net/wireless/bcmdhd on May 27 2016 at 14:54:40

Register interface [wlan0] MAC: 6c:fa:a7:26:2d:b1

dhd_prot_ioctl : bus is down. we have nothing to do

bcmsdh_oob_intr_unregister: Enter

bcmsdh_oob_intr_unregister: irq is not registered

dhd_txglom_enable: enable 0

dhd_bus_devreset: WLAN OFF DONE

wifi_platform_set_power = 0

======== PULL WL_REG_ON LOW! ========

dhd_module_init: Exit err=0

root@sabresd_6dq:/ #

root@sabresd_6dq:/ #

root@sabresd_6dq:/ #

root@sabresd_6dq:/ #

root@sabresd_6dq:/ # netcfg

lo UP 127.0.0.1/8 0x00000049 00:00:00:00:00:00

p2p0 DOWN 0.0.0.0/0 0x00001002 00:90:4c:33:22:11

wlan0 DOWN 0.0.0.0/0 0x00001002 6c:fa:a7:26:2d:b1

root@sabresd_6dq:/ #

这边在启动网卡时候firmware信息:

root@sabresd_6dq:/data/system/wpa_supplicant # ifconfig wlan0 up

dhd_open: Enter d6c92000

Dongle Host Driver, version 1.201.34.2 (r491657)

Compiled in drivers/net/wireless/bcmdhd on May 27 2016 at 14:54:40

wl_android_wifi_on in 1

wl_android_wifi_on in 2: g_wifi_on=0

wifi_platform_set_power = 1

======== PULL WL_REG_ON HIGH! ========

sdio_reset_comm():

dhd_bus_devreset: == WLAN ON ==

F1 signature read @0x18000000=0x16224335

F1 signature OK, socitype:0x1 chip:0x4339 rev:0x1 pkg:0x2

DHD: dongle ram size is set to 786432(orig 786432) at 0x180000

dhd_conf_read_config: Ignore config file /system/etc/firmware/config.txt

dhd_conf_set_fw_name_by_chip: firmware_path=/system/etc/firmware/fw_bcm4339a0_ag.bin

Final fw_path=/system/etc/firmware/fw_bcm4339a0_ag.bin

Final nv_path=/system/etc/firmware/nvram.txt

Final conf_path=/system/etc/firmware/config.txt

NVRAM version: AP6335_NVRAM_V1.7_04102014

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)

bcmsdh_oob_intr_register: Enter

bcmsdh_oob_intr_register OOB irq=377 flags=4

bcmsdh_oob_intr_register: enable_irq_wake

add wake up source irq 105

dhd_conf_set_band: Set band 0

Firmware up: op_mode=0x0005, MAC=6c:fa:a7:26:2d:b1

dhd_conf_set_country: Set country CN, revision 38

Country code: CN (CN/38)

dhd_conf_set_roam: Set roam_off 1

dhd_conf_set_glom: set bus:txglom 8

dhd_conf_set_ampdu_ba_wsize: set ampdu_ba_wsize 40

Firmware version = wl0: Apr 3 2014 12:12:42 version 6.37.32.28.2_ip (r424058)

Driver: 1.201.34.2 (r491657)

Firmware: wl0: Apr 3 2014 12:12:42 version 6.37.32.28.2_ip (r424058)

dhd_txglom_enable: enable 0

dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64

wl_android_wifi_on: Success

p2p0: p2p_dev_addr=6e:fa:a7:26:2d:b1

dhd_open: Exit ret=0

root@sabresd_6dq:/data/system/wpa_supplicant #

驱动可以起来,也可以配置ip,用wpa_cli也能扫描到网络,主要问题是在android界面层可以设置wifi网络热点,但是扫描不到网络

Labels (6)
0 Kudos
1 Solution
1,409 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello Chen,

     According to logs you sent to me, the issue should be generated by wpa_supplicant.conf, please adjust ctrl_interce like following line:

ctrl_interface=DIR=/data/misc/wifi/sockets GROUP=wifi
Then don't forget modify the permission of the path in init.rc

Best Regards,

weidong

View solution in original post

1 Reply
1,410 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello Chen,

     According to logs you sent to me, the issue should be generated by wpa_supplicant.conf, please adjust ctrl_interce like following line:

ctrl_interface=DIR=/data/misc/wifi/sockets GROUP=wifi
Then don't forget modify the permission of the path in init.rc

Best Regards,

weidong