This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

wl12xx on 8148

Other Parts Discussed in Thread: WL1271

I am trying to run the wl12xx driver for a wl1271 on a custom 8148 board

wl12xx : compat-wireless-3.3-rc6-1

Kernel : 2.6.37

toolset : ti-ezsdk_dm814x-evm_5_03_01_15

Has anyone run compat-wireless-3.3-rc6-1 on an 8148 board?

What did you use for platform_data->platform_quirks ?

Did you modify anything else?

If I set platform_data->platform_quirks to 0 I get a VERY high interrupt count in /proc/interrupts for the wl12xx driver (several million an I am not even connected to an AP)

If I set platform_data->platform_quirks =  WL12XX_PLATFORM_QUIRK_EDGE_IRQ; the interrupt is very low (only a few)

     but I get often get the error "wl12xx: ERROR ELP wakeup timeout! " and still cannot connect to an AP using iw

NOTE that in both case I get the message  "wl12xx: firmware booted (Rev 6.3.0.0.77)"

so basic booting seem to be ok,  but beyond this I have problems

Suggestions would be appreciated ....

thanks

Bernard





  • Hi, I get the same error: "wl12xx: ERROR ELP wakeup timeout! "

    using the June 21 (latest) pre-install Ubuntu image from

    http://cdimage.ubuntu.com/ubuntu-server/daily-preinstalled/current/

    on my Pandaboard ES. My dmesg shows:

    [ 662.187133] wl12xx: firmware booted (Rev 6.3.5.0.98)
    [ 662.214202] ADDRCONF(NETDEV_UP): wlan0: link is not ready
    [ 670.808868] wl12xx: ERROR ELP wakeup timeout!
    [ 670.813568] wl12xx: Reading FW panic log
    [ 670.813598] ------------[ cut here ]------------
    [ 670.813751] WARNING: at /build/buildd/linux-ti-omap4-3.4.0/drivers/net/wireless/wl12xx)
    [ 670.813812] Modules linked in: cpufreq_ondemand dm_crypt wl12xx mac80211 cfg80211 dm_mg
    [ 670.814025] [<c0016158>] (unwind_backtrace+0x0/0xec) from [<c0590d3c>] (dump_stack+0x2)
    [ 670.814086] [<c0590d3c>] (dump_stack+0x20/0x24) from [<c003ca08>] (warn_slowpath_commo)
    [ 670.814147] [<c003ca08>] (warn_slowpath_common+0x5c/0x74) from [<c003ca4c>] (warn_slow)
    [ 670.814270] [<c003ca4c>] (warn_slowpath_null+0x2c/0x34) from [<bf2532f0>] (wl1271_cmd_)
    [ 670.814483] [<bf2532f0>] (wl1271_cmd_send+0x64/0x360 [wl12xx]) from [<bf255ab8>] (wl12)

    [ 670.814025] [<c0016158>] (unwind_backtrace+0x0/0xec) from [<c0590d3c>] (dump_stack+0x2)
    [ 670.814086] [<c0590d3c>] (dump_stack+0x20/0x24) from [<c003ca08>] (warn_slowpath_commo)
    [ 670.814147] [<c003ca08>] (warn_slowpath_common+0x5c/0x74) from [<c003ca4c>] (warn_slow)
    [ 670.814270] [<c003ca4c>] (warn_slowpath_null+0x2c/0x34) from [<bf2532f0>] (wl1271_cmd_)
    [ 670.814483] [<bf2532f0>] (wl1271_cmd_send+0x64/0x360 [wl12xx]) from [<bf255ab8>] (wl12)
    2521dc>] (wl1271_recovery_work+0xc4/0x308 [wl12xx])
    [ 670.814788] [<bf2521dc>] (wl1271_recovery_work+0xc4/0x308 [wl12xx]) from [<c0058eb0>] )
    [ 670.814849] [<c0058eb0>] (process_one_work+0x244/0x458) from [<c0059448>] (worker_thre)
    [ 670.814910] [<c0059448>] (worker_thread+0x1ac/0x2d0) from [<c005d8d4>] (kthread+0x9c/0)
    [ 670.814971] [<c005d8d4>] (kthread+0x9c/0xac) from [<c000f364>] (kernel_thread_exit+0x0)
    [ 670.815032] ---[ end trace 8d495b4d259f001d ]---
    [ 670.816314] wl12xx: Hardware recovery in progress. FW ver: Rev 6.3.5.0.98 pc: 0x0
    [ 670.816345] wl12xx: down
    [ 670.818695] ieee80211 phy0: Hardware restart was requested
    [ 671.604187] wl12xx: firmware booted (Rev 6.3.5.0.98)
    [ 672.374206] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 684.000213] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 695.574768] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 707.118591] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 718.637268] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 730.227416] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 731.703643] wl12xx: ERROR ELP wakeup timeout!
    [ 731.708465] wl12xx: Reading FW panic log

    [ 670.816314] wl12xx: Hardware recovery in progress. FW ver: Rev 6.3.5.0.98 pc: 0x0
    [ 670.816345] wl12xx: down
    [ 670.818695] ieee80211 phy0: Hardware restart was requested
    [ 671.604187] wl12xx: firmware booted (Rev 6.3.5.0.98)
    [ 672.374206] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 684.000213] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 695.574768] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 707.118591] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 718.637268] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 730.227416] ti_hdmi_4xxx_phy_enable: hotplug absent after delay
    [ 731.703643] wl12xx: ERROR ELP wakeup timeout!
    [ 731.708465] wl12xx: Reading FW panic log
    [ 731.708496] ------------[ cut here ]------------
    [ 731.708648] WARNING: at /build/buildd/linux-ti-omap4-3.4.0/drivers/net/wireless/wl12xx)
    [ 731.708709] Modules linked in: cpufreq_ondemand dm_crypt wl12xx mac80211 cfg80211 dm_mg
    [ 731.708923] [<c0016158>] (unwind_backtrace+0x0/0xec) from [<c0590d3c>] (dump_stack+0x2)
    [ 731.708984] [<c0590d3c>] (dump_stack+0x20/0x24) from [<c003ca08>] (warn_slowpath_commo)
    [ 731.709045] [<c003ca08>] (warn_slowpath_common+0x5c/0x74) from [<c003ca4c>] (warn_slow)
    [ 731.709197] [<c003ca4c>] (warn_slowpath_null+0x2c/0x34) from [<bf2532f0>] (wl1271_cmd_)
    [ 731.709381] [<bf2532f0>] (wl1271_cmd_send+0x64/0x360 [wl12xx]) from [<bf255ab8>] (wl12)
    [ 731.709564] [<bf255ab8>] (wl12xx_cmd_stop_fwlog+0x64/0x98 [wl12xx]) from [<bf2521dc>] )
    [ 731.709686] [<bf2521dc>] (wl1271_recovery_work+0xc4/0x308 [wl12xx]) from [<c0058eb0>] )
    [ 731.709777] [<c0058eb0>] (process_one_work+0x244/0x458) from [<c0059448>] (worker_thre)
    [ 731.709838] [<c0059448>] (worker_thread+0x1ac/0x2d0) from [<c005d8d4>] (kthre:

    [ 731.708984] [<c0590d3c>] (dump_stack+0x20/0x24) from [<c003ca08>] (warn_slowpath_commo)
    [ 731.709045] [<c003ca08>] (warn_slowpath_common+0x5c/0x74) from [<c003ca4c>] (warn_slow)
    [ 731.709197] [<c003ca4c>] (warn_slowpath_null+0x2c/0x34) from [<bf2532f0>] (wl1271_cmd_)
    [ 731.709381] [<bf2532f0>] (wl1271_cmd_send+0x64/0x360 [wl12xx]) from [<bf255ab8>] (wl12)
    [ 731.709564] [<bf255ab8>] (wl12xx_cmd_stop_fwlog+0x64/0x98 [wl12xx]) from [<bf2521dc>] )
    [ 731.709686] [<bf2521dc>] (wl1271_recovery_work+0xc4/0x308 [wl12xx]) from [<c0058eb0>] )
    [ 731.709777] [<c0058eb0>] (process_one_work+0x244/0x458) from [<c0059448>] (worker_thre)
    ad+0x9c/0xac)
    [ 731.709899] [<c005d8d4>] (kthread+0x9c/0xac) from [<c000f364>] (kernel_thread_exit+0x0)
    [ 731.709930] ---[ end trace 8d495b4d259f001e ]---
    [ 731.715454] wl12xx: Hardware recovery in progress. FW ver: Rev 6.3.5.0.98 pc: 0x0
    [ 731.715484] wl12xx: down
    [ 731.717803] ieee80211 phy0: Hardware restart was requested
    [ 732.472595] wl12xx: firmware booted (Rev 6.3.5.0.98)
    [ 732.539642] wl12xx: down
    [ 733.259613] wl12xx: firmware booted (Rev 6.3.5.0.98)
    [ 733.286956] ADDRCONF(NETDEV_UP): wlan0: link is not ready
    [ 735.664306] wl12xx: ERROR ELP wakeup timeout!
    [ 735.669799] ------------[ cut here ]------------
    [ 735.669982] WARNING: at /build/buildd/linux-ti-omap4-3.4.0/drivers/net/wireless/wl12x

  • Well I solved my problem

    It turns out that the wl1271 interrupt line was negated by the FPGA between the 8148 and the wl1271

    this was the cause of all my problems !!

    Bernard

  • Hi,

    Just for the information side, the ELP time out can happen in case there is an issue with the interrupt line.

    When the host driver would like to access the WL1271, it first has to wake it from ELP (Extreme Low Power Mode), it does it using command write through the SDIO bus and then waits for interrupt from the WL1271, in case that interrupt does not arrive (there is timeout for that) the Host driver will perform some actions and one of them is to print that log

    Regards,

    Eyal