Search Linux Wireless

Problems building iwl for 2.6.25 (dev_name and CONFIG_IWLWIFI not defined)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello, and thanks for your work.

I'm trying to compile compat-wireless-2008-05-18
on a Debian sid, with a custom kernel 2.6.25 (it's the
debian source tree with just custom config, not
custom code). I wanted to try the latest iwl3945 driver.

It fails in b43, like this

  LD [M]  /home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/ath5k/ath5k.o
  LD      /home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43/built-in.o
  CC [M]  /home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43/main.o
/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43/main.c: In function 'handle_irq_noise':
/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43/main.c:1185: error: implicit declaration of function 'clamp_val'
make[4]: *** [/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43/main.o] Error 1
make[3]: *** [/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43] Error 2
make[2]: *** [/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless] Error 2
make[1]: *** [_module_/home/crovirab/compat-wireless-2008-05-18] Error 2
make[1]: Leaving directory `/home/crovirab/linux/linux-source-2.6.25'
make: *** [modules] Error 2

But since I don't need b43, I disable it in config.mk
CONFIG_B43=n

make clean
make

Then it complains of
  CC [M]  /home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43legacy/main.o
/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43legacy/main.c: In function 'handle_irq_noise':
/home/crovirab/compat-wireless-2008-05-18/drivers/net/wireless/b43legacy/main.c:849: error: implicit declaration of function 'clamp_val'
m

so I change in config.mk
CONFIG_B43LEGACY=n

make clean and make again

And then I get stuck

 CC [M]  /home/crovirab/compat-wireless-2008-05-18/net/mac80211/rc80211_pid_algo.o
  LD [M]  /home/crovirab/compat-wireless-2008-05-18/net/mac80211/mac80211.o
  LD      /home/crovirab/compat-wireless-2008-05-18/net/wireless/built-in.o
  CC [M]  /home/crovirab/compat-wireless-2008-05-18/net/wireless/core.o
/home/crovirab/compat-wireless-2008-05-18/net/wireless/core.c: In function 'cfg80211_dev_rename':
/home/crovirab/compat-wireless-2008-05-18/net/wireless/core.c:170: error: implicit declaration of function 'dev_name'
/home/crovirab/compat-wireless-2008-05-18/net/wireless/core.c:170: warning: passing argument 2 of 'strcmp' makes pointer from integer without a cast
/home/crovirab/compat-wireless-2008-05-18/net/wireless/core.c:176: warning: passing argument 2 of 'strcmp' makes pointer from integer without a cast
make[3]: *** [/home/crovirab/compat-wireless-2008-05-18/net/wireless/core.o] Error 1
make[2]: *** [/home/crovirab/compat-wireless-2008-05-18/net/wireless] Error 2
make[1]: *** [_module_/home/crovirab/compat-wireless-2008-05-18] Error 2
make[1]: Leaving directory `/home/crovirab/linux/linux-source-2.6.25'
make: *** [modules] Error 2


I don't know a bit about compat-wireless, but it sounds as
I do need  /net/wireless/core.c , so I don't think I can't get
around this one.

Looking at the code, I see dev_name() defined in compat.h
like this


/* This is from include/linux/device.h, which was added as of 2.6.25 */
static inline const char *dev_name(struct device *dev)
{
	/* will be changed into kobject_name(&dev->kobj) in the near future */
	return dev->bus_id;
}


This is in an #ifdef that makes it ignored for me, since I'm running
2.6.25.

But in my kernel source tree I don't see that function in
include/linux/device.h

So I try to copy that definition of dev_name in another section
of compat.h and (one included for kernels < 2.6.26)

Then it compiles.

But it doesn't build iwl3945 (I realised when I saw complaints
of symbols on loading it, because it wasn't in update and it
was loading the debian kernel iwl3945, not the compat-wireless
one).

I see CONFIG_IWLWIFI is not defined in config.mk nor in my
kernel .config (CONFIG_IWL3945=m , but CONFIG_IWLWIFI does not
exist). So I add
CONFIG_IWLWIFI=y
to config.mk

Oh, I also set CONFIG_RT2XX=n because it gave some warnings
and I don't need it.


With all that I managed to compile and install the modules, and
I see them in /lib/modules/.../updates/...

And I got rid of some error messages I used to have (about bad
firmware and RX queue).

It does not associate with WPA (the configuration worked with
ipw3945 )
Without encryption it says it associates but it doesn't get IP
from DHCP nor can I ping if I set static iface config and routes


I see two messages which might be related to it when doing
/etc/init.d/networking restart

wmaster0: unknown hardware address type 801
wmaster0: unknown hardware address type 801

Error for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Invalid argument.

ioctl[SIOCSIWAUTH]: Operation not supported
WEXT auth param 4 value 0x0


Btw, iwlist scanning works fine.

I'm out of time now for looking at it further. And it's not
my laptop, so I'm not sure I'll be able to insist later.

I'm just sending this for the build issues, at first I thought I must
be doing something odd to my .config or my debian kernel tree, and I
still may, but I unpacked it again and couldn't find any CONFIG_IWLWIFI in
.config or dev_name in include/linux/device.h . So I thought I'd write
just in case it can be improved so that it works more straightforward
in cases like mine. I don't dare sending a patch beacause I don't
think the changes I made are good solutions in general. I'll attach
my kernel config because maybe that's the problem.

Btw, the web page tells to send issues to this list, but it doesn't
point to archives or some other way to avoid duplicate reports,
I'm sorry if this is one.

Thanks, and keep up the good work.


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux