From: Eric Nelson <eric.nelson@boundarydevices.com>
To: Mobile Dev <mobiledev@msn.com>,
"meta-freescale@yoctoproject.org"
<meta-freescale@yoctoproject.org>
Subject: Re: WL12xx Wi-Fi on 3.10.17_1.0.0_ga release
Date: Mon, 25 Aug 2014 08:59:46 -0700 [thread overview]
Message-ID: <53FB5D72.2060408@boundarydevices.com> (raw)
In-Reply-To: <BLU172-W3838A80DBB62856909EE10B2D00@phx.gbl>
Hello, ummm... mdev.
On 08/22/2014 04:18 PM, Mobile Dev wrote:
> Apologies for the length...
>
> I see that [Eric's] nitrogen6x boundary tree has some devicetree patches
> to enable the TI Wi-Fi module. I am trying to bring it up on our custom
> board and I have a few questions:
>
Since you're asking for support, do you mind identifying yourself?
> 1. Where did you get the 'calibrate' utility? There are several repos
> out there for it.
In general, we've found the calibrate utility to be more or less
useless, and since it's a pretty big pain to get and compile,
we haven't used it in quite a while.
> 2. Did you just use the wlcore/wlcore_sdio/wl12xx drivers in the
> 3.10.17 kernel tree or did you pull anything from
> backports/compat-wireless/TI?
You can answer that question by checking the log.
> 3. Related, did you add the compat-wireless recipe to your image?
>
Ditto.
>
> I have BT working just fine but I am having issues bringing up the Wi-Fi
> side of the card. The first is getting it to calibrate:
>
> root@custom_board:/lib/firmware/ti-connectivity# ll
> drwxr-xr-x 2 root root 4096 Aug 22 20:17 ./
> drwxr-xr-x 4 root root 4096 Aug 22 20:11 ../
> -rwxr-x--- 1 root root 50770 Aug 21 16:09
> TIInit_7.6.15.bts*
> -rwxr-x--- 1 root root 13290 Aug 21 16:40 TQS_D_1.7.ini*
> -rwxr-x--- 1 root root 49324 Aug 21 16:16 calibrator*
> -rwxr-x--- 1 root root 912 Aug 22 20:18 wl1271-nvs.bin*
> -rwxr-x--- 1 root root 354600 Aug 21 16:23
> wl127x-fw-5-mr.bin*
> -rwxr-x--- 1 root root 352588 Aug 21 16:23
> wl127x-fw-5-plt.bin*
> -rwxr-x--- 1 root root 370996 Aug 21 16:23
> wl127x-fw-5-sr.bin*
> -rwxr-x--- 1 root root 912 Aug 21 16:23 wl127x-nvs.bin*
> root@custom_board:/lib/firmware/ti-connectivity# lsmod
> Module Size Used by
> arc4 1510 2
> wl12xx 44514 0
> wlcore 141592 1 wl12xx
> mac80211 226689 2 wl12xx,wlcore
> cfg80211 178563 2 mac80211,wlcore
> wlcore_sdio 4381 0
> cdc_acm 14295 0
> evbug 1476 0
> root@custom_board:/lib/firmware/ti-connectivity# echo 152 >
> /sys/class/gpio/export
> root@custom_board:/lib/firmware/ti-connectivity# echo out >
> /sys/class/gpio/gpio152/direction
> root@custom_board:/lib/firmware/ti-connectivity# echo 0 >
> /sys/class/gpio/gpio152/value
> root@custom_board:/lib/firmware/ti-connectivity# cat
> /sys/class/gpio/gpio152/value
> 0
> root@custom_board:/lib/firmware/ti-connectivity# echo 1 >
> /sys/class/gpio/gpio152/value
> root@custom_board:/lib/firmware/ti-connectivity# cat
> /sys/class/gpio/gpio152/value
> 0
> root@custom_board:/lib/firmware/ti-connectivity# ./calibrator plt
> calibrate dual
> wlcore: power up
> wlcore: firmware booted in PLT mode PLT_ON (PLT 6.3.10.0.133)
> wlcore: ERROR command complete timeout
> ------------[ cut here ]------------
> WARNING: at drivers/net/wireless/ti/wlcore/main.c:790
> wl12xx_queue_recovery_work+0x5c/0x60 [wlcore]()
>
> <snip>
>
> ---[ end trace 4ae41c0eeb5b4b0b ]---
> wlcore: WARNING TEST command failed
> wlcore: WARNING testmode cmd test failed: -110
> Fail to calibratewlcore: power down
>
The primary challenge in use of the WL12xx against any i.MX
device is a quirk in the use of the power-off pin. The WL12xx
driver expects writes to the SDHCI_POWER_CONTROL register
to control the power-off GPIO directly.
http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/tree/drivers/mmc/host/sdhci.c?h=imx_3.10.17_1.0.1_ga#n1289
Since the i.MX SDHCI controllers don't do this, we had to add
support for the "power-gpio".
>
> Usage: ./calibrator [options] plt calibrate [<single|dual>]
>
> Do calibrate for single or dual band chip
>
>
> Options:
> --debug enable netlink debugging
> root@custom_board:/lib/firmware/ti-connectivity#
>
>
> I have tried various combinations of drivers and tools but they all have
> the same error (command complete timeout). As a test I tried changing
> the <interrupts> node in the wlan section to <23 0x2>
> from IRQ_TYPE_LEVEL_HIGH and the error changes to timeout waiting for
> hardware interrupt so I know it is at least talking.
>
> Here are the relevant device tree sections:
>
>
> <snip>
>
> &usdhc2 {/* uSDHC2, TiWi wl1271 */
>
>
> ...
>
> power-gpio = <&gpio5 24 0>;
>
Are you using our kernel? Have you validated your source
tree against a Nitrogen6x or Nitrogen6_Max board?
If so, then you should start looking for what's different.
>
> <snip>
>
> The second issue is that I can't successfully cycle the wlan0 interface
> more than once (ifconfig up, down, up). When I try to bring it up the
> second time, I get this:
>
>
> root@custom_board:/lib/firmware/ti-connectivity# ifconfig wlan0 up
> wlcore: ERROR timeout waiting for the hardware to complete
> initialization
> wlcore: ERROR timeout waiting for the hardware to complete
> initialization
> wlcore: ERROR timeout waiting for the hardware to complete
> initialization
> wlcore: ERROR firmware boot failed despite 3 retries
> ifconfig: SIOCSIFFLAGS: Input/output error
> root@custom_board:/lib/firmware/ti-connectivity#
>
>
> I thought it was caused by this
> (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1258174) so I
> changed the SD clock to add a pullup but it didn't work.
>
This is the primary symptom of not having our patches in place.
Regards,
Eric
next prev parent reply other threads:[~2014-08-25 16:00 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-22 23:18 WL12xx Wi-Fi on 3.10.17_1.0.0_ga release Mobile Dev
2014-08-25 15:59 ` Eric Nelson [this message]
2014-08-26 12:10 ` Mobile Dev
2014-08-26 14:37 ` Eric Nelson
2014-08-26 14:51 ` Eric Nelson
[not found] <mailman.22113.1408749566.26702.meta-freescale@yoctoproject.org>
2014-08-25 14:41 ` Mobile Dev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53FB5D72.2060408@boundarydevices.com \
--to=eric.nelson@boundarydevices.com \
--cc=meta-freescale@yoctoproject.org \
--cc=mobiledev@msn.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.