How to build LAN drivers with no internet access

How to build LAN drivers with no internet access

Baruch Siach baruch at tkos.co.il
Mon Jul 2 15:51:22 IDT 2012


Hi Dotan,

On Mon, Jul 02, 2012 at 03:41:30PM +0300, Dotan Cohen wrote:
> On Mon, Jul 2, 2012 at 2:54 PM, Baruch Siach <baruch at tkos.co.il> wrote:
> > If the firmware for your NIC is
> > missing from firmware-realtek (rtl8402-1.fw and rtl8411-1.fw currently) get it
> > from
> > http://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git;a=tree;f=rtl_nic;h=433ba2c0164f9809221d969d3d60e605575790fc;hb=HEAD,
> > and copy to /lib/firmware/rtl_nic/.
> >
> > Hope this helps.
> 
> On a fresh install, having only moved the mentioned files to
> /lib/firmware/rtl_nic and then rebooting:
> shelly at neptune:~$ ls /lib/firmware/rtl_nic/
> rtl8105e-1.fw  rtl8168d-1.fw  rtl8168d-2.fw  rtl8168e-1.fw
> rtl8168e-2.fw  rtl8168e-3.fw  rtl8168f-1.fw  rtl8168f-2.fw
> rtl8402-1.fw  rtl8411-1.fw  rtl_nic_rtl8402-1.fw  rtl_nic_rtl8411-1.fw
>
> Still no IP address:
> shelly at neptune:~$ ifconfig
> eth0      Link encap:Ethernet  HWaddr 54:04:a6:82:6b:eb
>           inet6 addr: fe80::5604:a6ff:fe82:6beb/64 Scope:Link
>           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
>           RX packets:1 errors:0 dropped:0 overruns:0 frame:0
>           TX packets:73 errors:0 dropped:0 overruns:0 carrier:0
>           collisions:0 txqueuelen:1000
>           RX bytes:60 (60.0 B)  TX bytes:16788 (16.7 KB)
>           Interrupt:41 Base address:0xa000
> 
> lo        Link encap:Local Loopback
>           inet addr:127.0.0.1  Mask:255.0.0.0
>           inet6 addr: ::1/128 Scope:Host
>           UP LOOPBACK RUNNING  MTU:16436  Metric:1
>           RX packets:112 errors:0 dropped:0 overruns:0 frame:0
>           TX packets:112 errors:0 dropped:0 overruns:0 carrier:0
>           collisions:0 txqueuelen:0
>           RX bytes:8880 (8.8 KB)  TX bytes:8880 (8.8 KB)
> 
> Still using the old driver:
> shelly at neptune:~$ sudo lshw | grep r8
> [sudo] password for shelly:
>                 configuration: autonegotiation=on broadcast=yes
> driver=r8169 driverversion=2.3LK-NAPI duplex=full
> firmware=rtl8168e-3_0.0.4 03/27/12 latency=0 link=yes multicast=yes
> port=MII speed=100Mbit/s

Looks good so far. This is the right driver, no need to unload.

> So I try to change drivers but cannot load the new driver:
> shelly at neptune:~$ sudo modprobe -r r8169
> shelly at neptune:~$ sudo modprobe r8411
> FATAL: Module r8411 not found.
> shelly at neptune:~$ sudo modprobe r8402
> FATAL: Module r8402 not found.
> shelly at neptune:~$ sudo modprobe rtl8411
> FATAL: Module rtl8411 not found.
> shelly at neptune:~$ sudo modprobe rtl_nic_8411
> FATAL: Module rtl_nic_8411 not found.
> shelly at neptune:~$ sudo modprobe rtl_nic_8411-1
> FATAL: Module rtl_nic_8411_1 not found.
> shelly at neptune:~$ sudo modprobe rtl_nic_8411-1.fw
> FATAL: Module rtl_nic_8411_1.fw not found.
> shelly at neptune:~$
> 
> What should I do now?

The driver automatically loads the firmware, which in you case seems to be 
rtl8168e-3.fw. Just set an IP address for eth0 and ping away.

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -



More information about the Linux-il mailing list