# Kernel not loading network driver(?)

## Jan-Gentoo

Hi there!

I'm pretty new to the Gentoo party, so please be warned (and patient). I hope I used the correct forum, please move if not.

Here's the situation: I followed the handbook and set up an AMD64 Kernel via Live USB on my laptop. (UEFI) Everything boots fine after some initial trouble. However: It seems that my network controller for WLAN (which is "Intel Corporation Wireless 7260 rev 6b) is not being handed the driver it needs. lspci -k does not list a used driver kernel.

While booting into the Live USB, driver "iwlwifi" is being used (kernel driver and kernel modules) and I set the kernel up to load iwlwifi instantly (not as module). As described, this does not seem to work.

Now: Being very unexperienced with Gentoo, I am out of ideas and would like to ask if somebody here has a clue about my mistakes so far. Any needed information will be provided asap, of course. :)

Thanks for reading!

----------

## charles17

 *Jan-Gentoo wrote:*   

> Hi there!
> 
> I'm pretty new to the Gentoo party, so please be warned (and patient). I hope I used the correct forum, please move if not.
> 
> Here's the situation: I followed the handbook and set up an AMD64 Kernel via Live USB on my laptop. (UEFI) Everything boots fine after some initial trouble. However: It seems that my network controller for WLAN (which is "Intel Corporation Wireless 7260 rev 6b) is not being handed the driver it needs. lspci -k does not list a used driver kernel.

 

Question ahead: Did you read the Wifi article?

There are some common pitfalls you should know for setting up a wifi driver:

 You need driver and firmware

 Driver and firmware should be both as modules or both in-kernel

 For iwlwifi, each device has its own firmware

 After changing kernel configuration, the kernel has to be installed in /boot

 /boot needs to be mounted for installing the kernel

 You should be in the correct /usr/src/ subdirectory.  That one of the kernel you want to change.

 dmesg | grep 08:00.0  - Replace 08:00.0 with pci bus of your device from lspci -nnkv - wil give more information

 dmesg | grep 'network interface'      - After rebooting will show you the name of that network interface

----------

## Jan-Gentoo

Thanks for your reply!

 *charles17 wrote:*   

> Question ahead: Did you read the Wifi article?

 

Afraid not. I thought everything would be fine with only the handbook. I had a quick look into it now.

 *charles17 wrote:*   

> There are some common pitfalls you should know for setting up a wifi driver:
> 
>  You need driver and firmware
> 
>  Driver and firmware should be both as modules or both in-kernel
> ...

 

Alright, I tried to ensure that there _is_ firmware available and downloaded as well a installed some from here. (I think i was using the right folders...)

Back into my system, grep 01:00.0 gave me following messages:

"enabling device (000 -> 0002)

Direct firmware load for iwlwifi-7260-12.ucode failed with error -2

going on like this for a few more times, counting down the 12

and finally not suitable firmware found!"

Hm. Makes me wonder, because on /dev4 -which is my root with the kernel- I can cleary find i.e. iwlwifi-7260-12.ucode in /lib/firmware as well as /lib64/firmware. Did go somewhere wrong while configuring the kernel? Where can I tell it to load the firmware directly?

----------

## Buffoon

 *Quote:*   

> Driver and firmware should be both as modules or both in-kernel 

 

Did you pay attention to this?

----------

## Jan-Gentoo

 *Buffoon wrote:*   

>  *Quote:*   Driver and firmware should be both as modules or both in-kernel  
> 
> Did you pay attention to this?

 

Driver: I'm quite sure. Divce Drivers -> Network Drivers -> WLAN. I activated what should be activated as built in.

However, with the firmware I am not sure where to look at...

----------

## charles17

 *Jan-Gentoo wrote:*   

> However, with the firmware I am not sure where to look at...

 The Intel Wireless 7260  line in https://wiki.gentoo.org/wiki/Wifi will tell you.

Have a look at https://wiki.gentoo.org/wiki/Intel_Corporation_PRO/Wireless_3945ABG how it works for one of the older devices.

Edit:

Also, according to https://forums.gentoo.org/viewtopic-t-1026458-start-9.html the kernel version seems important

----------

## NeddySeagoon

Jan-Gentoo,

charles17 said  "Driver and firmware should be both as modules or both in-kernel"

That should is a must.

The firmware is loaded when the module is initialised. 

When the module is build into the kernel, the firmware must be built into the kernel too as the firmware is needed before root is mounted.

That means it can't be read from the hard drive at all.

When the module is made as a module, it gets loaded after root is mounted, so /lib/firmware is available too.

The other two combinations don't work as the kernel driver can never read its firmware.

To check that you are running the kernel you think you are, look at 

```
uname -a
```

The date/time shown is the build date/time of the running kernel.

----------

