Power & Source of Big Ideas

[SOLVED] M2A with wifi

Moderators: chensy, FATechsupport


My goal is to update Debian kernel to add driver (CAN). All is working well, excepted integrated wifi module.
I Followed these steps :

1- Tested reference image (http://www.mediafire.com/file/phihjbu2y ... 18.img.zip)
=> Debian ok with Wifi

2- Fetched and tested kernel for M2A

Code: Select all

git clone https://github.com/friendlyarm/linux-3.4.y.git
cd linux-3.4.y
git checkout nanopi2-lollipop-mr1
make nanopi2_linux_defconfig
touch .scmversion
make uImage
=> Debian ok with LCD or HDMI, without Wifi

3- I compared /boot/config of the reference image with nanopi2_linux_defconfig
=> No difference, so config used is theoretically the same if the config file on the reference image is up to date.

4- I checked arch/arm/plat-s5p4418/nanopi2/board.c file, I didn't find reference to the wifi module
=> This file is up to date for M2A ?

5- I Compared log from the reference image and my new image, I saw these differences (these lines are missing from my kernel) :

Code: Select all

Loading modules backported from Linux version v4.4.2-0-g1cb8570
Backport generated by backports.git v4.4.2-1-0-gbec4037
dhd_module_init: in
 ======== bcm_wlan_set_plat_data ========
 host_oob_irq: 145
 host_oob_irq_flags = 414
 dhd_wifi_platform_load: Enter
 Power-up adapter 'DHD generic adapter'
 wifi_platform_set_power = 1
 ======== PULL WL_REG_ON HIGH! ========
 wifi_pm: bcmdhd: 1
wifi_platform_bus_enumerate device present 1
 mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
 mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
 mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
 systemd-udevd[200]: starting version 215
 mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
 mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
 mmc1: new high speed SDIO card at address 0001
 bcmsdh_register: register client driver
 bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter
 bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter
 bus num (host idx)=1, slot num (rca)=1
 found adapter info 'DHD generic adapter'
 dhdsdio_probe : no mutex held. set lock
 F1 signature read @0x18000000=0x1541a9a6
 F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x1 pkg:0x4
 DHD: dongle ram size is set to 524288(orig 524288) at 0x0
 dhd_conf_set_chiprev: chip=0xa9a6, chiprev=1
 dhd_conf_set_conf_path_by_nv_path: config_path=/lib/firmware/ap6212/config.txt
 dhd_conf_read_nv_by_chip: nv_by_chip_count=2
 dhd_conf_read_nv_by_chip: chip=0xa9a6, chiprev=0, name=nvram_ap6212.txt
 dhd_conf_read_nv_by_chip: chip=0xa9a6, chiprev=1, name=nvram_ap6212a.txt
 dhd_conf_read_config: PM = 0
 wl_create_event_handler(): thread:wl_event_handler:e0 started
 tsk Enter, tsk = 0xe2081cb0
 dhd_attach(): thread:dhd_watchdog_thread:e8 started
 dhd_attach(): thread:dhd_dpc:ea started
 dhd_dpc_thread: set dpc_cpucore 0 from config.txt
 dhd_attach(): thread:dhd_rxf:ec started
 dhd_deferred_work_init: work queue initialized
 dhdsdio_probe_init: set use_rxchain 0 from config.txt
 Dongle Host Driver, version (r506368)
 Compiled in drivers/net/wireless/bcmdhd on Mar  2 2017 at 11:46:52
 Register interface [wlan0]  MAC: ac:83:f3:6d:9f:d6

 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! ========
 wifi_pm: bcmdhd: 0
 bt_bcm: rfkill set_block On  GPIOB.8
 dhdsdio_probe : the lock is released.
 dhd_module_init: Exit err=0
 Bluetooth: Core ver 2.21
 NET: Registered protocol family 31
 Bluetooth: HCI device and connection manager initialized
 Bluetooth: HCI socket layer initialized
 Bluetooth: L2CAP socket layer initialized
 Bluetooth: SCO socket layer initialized
 Bluetooth: HCI UART driver ver 2.3
 Bluetooth: HCI UART protocol H4 registered
 Bluetooth: HCI UART protocol BCM registered
 Bluetooth: BNEP (Ethernet Emulation) ver 1.3
 Bluetooth: BNEP filters: protocol multicast
 Bluetooth: BNEP socket layer initialized
 cfg80211: World regulatory domain updated:
 cfg80211:  DFS Master region: unset
 cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
 cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
 cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
 cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
 cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
 cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
 cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
 cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
 cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
 setting PHY_BASEADDR_PMU_ISOLATE+4, set 0
 setting PHY_BASEADDR_PMU_ISOLATE+8, set 0
 Wait Power UP Ack(powerUpAck=0x00000000)
 setting ClockGen, set 1
 setting Reset VR addr(0xf0012008)
 setting PHY_BASEADDR_VR_PMU addr(0xf0072000)
 Vr: VR device driver loaded(ver1.2) for s5p4418

no idea about this issue ?

I found problem : into the s5p4418 modules folder on the SDcard, there are extra files that are not included with the kernel. I cleaned the module folder before to install my modules, It was my mistake.
Finally, I copied original module folder from the reference image to my image and I replaced provided modules by my modules and it's ok now, I have wifi.

Who is online

In total there is 1 user online :: 0 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
Most users ever online was 47 on Wed Feb 21, 2018 7:00 am

Users browsing this forum: No registered users and 1 guest