All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mr Dash Four <mr.dash.four@googlemail.com>
To: Luciano Coelho <coelho@ti.com>
Cc: linux-wireless@vger.kernel.org
Subject: Re: wl1251 build woes (compat-wireless 3.3.1-1, 3.1.1 as well as 2.6.39)
Date: Sat, 21 Apr 2012 13:31:35 +0100	[thread overview]
Message-ID: <4F92A8A7.9090302@googlemail.com> (raw)
In-Reply-To: <1334984639.4965.108.camel@cumari>


>> Should I be worried about the above warning? I do *not* have "CONFIG_WIRELESS_EXT" anywhere in my (android kernel) .config, but do have CONFIG_WIRELESS=y as well as CONFIG_CFG80211_WEXT=y. Also, I can't see any of the wl1251 drivers from compat-wireless (located in drivers/net/wireless/wl1251) being built at all! Am I missing something? 
>>     
>
> No, don't worry.  This is harmless if you don't use WEXT.  Just remove
> the CONFIG_CFG80211_WEXT from your .config and the warning should go
> away.
>   
OK, I'll do that, thanks!

>> WARNING: "reg_regdb_size" [/builddir/compat-wireless-3.1.1-1/net/wireless/cfg80211.ko] undefined!
>> WARNING: "reg_regdb" [/builddir/compat-wireless-3.1.1-1/net/wireless/cfg80211.ko] undefined!
>>     
>
> Sometimes compat-wireless breaks, when syncing with the latest upstream
> sourcers.  If the newest works for you, use that. ;)
>   
That doesn't appear to be the case, unfortunately - see below.

>> The wl1251 drivers are not built here either - drivers/net/wireless/wl1251 is untouched! Any help or advice as to how can I resolve this would very much appreciated, thanks!
>>     
>
> If this is a recent compat-wireless, then the wl1251 driver was moved to
> drivers/net/wireless/ti/wl1251.  Can you check that?
>   
I initially used compat-wireless-3.3.1-1 as it was the latest "stable" 
kernel edition released. The wl1251 drivers are in net/wireless/wl1251, 
not drivers/net/wireless/ti/wl1251. That is also the case with the 
latest released compat-wireless - 3.4-rc3-1.

I did a bit of hacking/tweaking, but ran into much bigger problems and 
simply gave up in the end. When I looked at various compat-wireless 
makefiles I saw that, somehow the inclusion of wl1251 as well as wl12xx 
depends on CONFIG_CRC7 and CONFIG_WL12XX_PLATFORM_DATA being set (the 
latter also depends on wl12xx, so if I wanted it included, I had to 
switch to "wl12xx" instead of "wl1251"). So, I did the following:

./scripts/driver-select restore
./scripts/driver-select wl12xx
make ARCH=arm CROSS_COMPILE=$CCOMPILER KLIB=<android_kernel_dir> 
KLIB_BUILD=<android_kernel_dir> CONFIG_CRC7=y CONFIG_WL12XX_PLATFORM_DATA=y

I then get the following errors:

/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.c: In 
function 'wl12xx_sdio_power_on':
/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.c:126:2: 
error: implicit declaration of function 'pm_runtime_enabled' 
[-Werror=implicit-function-declaration]
/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.c:132:7: 
error: void value not ignored as it ought to be
/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.c: In 
function 'wl12xx_sdio_power_off':
/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.c:153:6: 
error: void value not ignored as it ought to be
cc1: some warnings being treated as errors

make[4]: *** 
[/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx/sdio.o] Error 1
make[3]: *** 
[/builddir/compat-wireless-3.3-1/drivers/net/wireless/wl12xx] Error 2
make[2]: *** [/builddir/compat-wireless-3.3-1/drivers/net/wireless] Error 2
make[1]: *** [_module_/builddir/compat-wireless-3.3-1] Error 2
make[1]: Leaving directory `<android_kernel_dir>'
make: *** [modules] Error 2

Apparently, "pm_runtime_enabled" is defined in 
include/linux/pm_runtime.h, but this is for the 3.0+ version of the 
kernel - I am using 2.6.37! Something seems to be seriously screwed up! 
The above is valid for all 3.x versions of compat-wireless I tried! I 
was under the impression that compat-wireless is backward-compatible 
with "older" kernel versions, like mine, is that not the case?!

When I tried the latest compat-wireless before 3.x (2.6.39-1) I don't 
get the first error, but get the other two, albeit with modified 
function names (wl1271_sdio_* instead of wl12xx_sdio_*).

In addition to the above, for some reason when I run compat-wireless for 
versions prior to 3.x (I tried 2 such versions - 2.6.39-1 and 2.6.38-2) 
I also get a weird error that 
"<android_kernel_dir>//builddir/compat-wireless-XXX/net/wireless/db.txt 
cannot be found" - the search path there is completely wrong, it should 
either be <android_kernel_dir>" or 
"/builddir/compat-wireless-XXX/net/wireless/db.txt" and not this weird 
concatenated path containing both!

Again, this only happens with the 2 releases prior to 3.x I tried and 
only when I have "db.txt" and "genregdb.awk" from 3.3.1-1 manually 
copied to net/wireless. Any help?

Luciano, seeing as you work for TI, I have one more query for you, if I 
may - the need for me to turn to build compat-wireless was borne out of 
my continuous, *completely fruitless* and *extremely frustrating* 
attempts for me to build a decent version of wpa_supplicant for my 
android device, which uses the "native" TI-supplied wireless driver for 
that device (tiwlan) - it proved an absolutely impossible task as the 
TI-supplied driver refuses to build with wpa_supplicant which has 
version any other than v5.11 (I have tried *all* released versions after 
this one - 6.11, 0.7.1, 0.7.3, 1.0-rc, 1.0 as well as the latest from 
git)! "Newer" TI-supplied drivers do *not* work with my TI-1251 device 
at all!

Is there a decent driver for TI-1251 which could be integrated with a 
relatively recent/decent version of the wpa_supplicant?

It is imperative that I build a decent version of wpa_supplicant for my 
device and it is the sole reason why I have chosen this route and turned 
to the Linux-based wireless stack, but unfortunately my assumption that 
the process there would be more straight-forward proved to be rather 
naive and my earlier optimism completely misplaced! :-(

  reply	other threads:[~2012-04-21 12:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-21  0:02 wl1251 build woes (compat-wireless 3.3.1-1, 3.1.1 as well as 2.6.39) Mr Dash Four
2012-04-21  5:03 ` Luciano Coelho
2012-04-21 12:31   ` Mr Dash Four [this message]
2012-04-24 22:37     ` Mr Dash Four

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=4F92A8A7.9090302@googlemail.com \
    --to=mr.dash.four@googlemail.com \
    --cc=coelho@ti.com \
    --cc=linux-wireless@vger.kernel.org \
    /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.