# (Solved) Intel 3945ABG

## ALF__

Hello!

Im trying to get wlan working on a freshly installed laptop with Intel 3945ABG wificard in it.

I added the driver built in to my kernel, after that i just emerge wicd.

After that my ethernetcard broke, and for some reason, ifconfig -a shows eth0 and wlan0 (before merging wicd they hade the long names, link enp0blaha)

I cannot put the eth0 up, also, wicd dont find any wireles networks, and the LED for wifi is not lit (the switch for RF is on on the side).

Both card as stated do show up with ifconfig -a though..

any ideas?Last edited by ALF__ on Mon Jan 05, 2015 8:43 pm; edited 1 time in total

----------

## b0nafide

I use openrc, wicd and eudev on my netbook

```

# ifconfig | grep "wlan0\|eth0"

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500

# ls /etc/init.d/net.eth*

ls: cannot access /etc/init.d/net.eth*: No such file or directory

# grep ^rc_hotplug /etc/rc.conf

rc_hotplug="!net.eth* !net.wlan*"

# rc-update show | grep wicd

    wicd | default 

```

Everything is working for me, I can scan for networks and join them.

----------

## chithanh

wicd parses iwconfig output, and iwconfig uses the legacy wireless extensions in the kernel. Modern drivers are however nl80211 based.

In order to use iwconfig, backwards compatibility has to be enabled in the kernel configuration through CONFIG_CFG80211_WEXT=y

 *ALF__ wrote:*   

> I cannot put the eth0 up

 

What happens when you try?

----------

## geraldraaf

I had the same Problem with builtin kernel driver with my Lenovo Laptop.

The problem was that the Firmware wasn't loaded, after compiling driver as modul everything works fine for me.

----------

## ALF__

 *chithanh wrote:*   

> wicd parses iwconfig output, and iwconfig uses the legacy wireless extensions in the kernel. Modern drivers are however nl80211 based.
> 
> In order to use iwconfig, backwards compatibility has to be enabled in the kernel configuration through CONFIG_CFG80211_WEXT=y
> 
>  *ALF__ wrote:*   I cannot put the eth0 up 
> ...

 

Hello, thanks for your reply.

I do actually have CONFIG_CFG80211_WEXT=y enabled..

After Reading the log for wicd, i see it uses the command ifconfig wlan0 up. And when i try to run that manually i get "cannot allocate memory"

The same goes for starting wpa_supplicant manually, cannot allocate memory. (Dont even know if it should be started)

When i use rfkill i see that none are blocked, however, it reacts to the button on the side, and then sets hardblocked to yes.

Also sorry about the eth0 confusion, i did a stupid mistake and had the laptop in the Ultrabase, ofcourse the LAN Cable needed to be attached to the base instead. Really sorry for that.

 *geraldraaf wrote:*   

> 
> 
> Thanks for your reply. I was really hoping for it to be this simple, but no 
> 
> 

 

----------

## chithanh

It seems to be a problem in the kernel iwl3945 causing the memory allocation failure. Check in dmesg if there is more detail about the failure.

This thread suggests a few workarounds, such as "echo 3  > /proc/sys/vm/drop_caches" before running ifconfig wlan0 up.

https://groups.google.com/forum/#%21topic/linux.kernel/Btf81GShwFc

If kernel 3.18 is affected too, you will probably have to report to kernel bugzilla or this issue will be forgotten again.

----------

## ALF__

Hello, and thank you again.

I tried the echo option, and no change..

Also dmesg doesnt output any problem, just that the driver starts and actually finds the card..

Wich makes this even harder to grasp?

----------

## ALF__

Hello!

Well i managed to solve it.

I had no idea i needed a custom firmware for the card. I thought that the kernel-module would do the trick. But you need that and also the custom firmware from intel..

Thanks everyone for your help

----------

