# [MODULOS KERNEL] Algo demasiado extraño (SOLUCIONADO)

## ZaPa

Hola a todos, que tal? de nuevo estoy por aquí dando tumbos a pediros un poquito de ayuda, a ver si me podeis explicar una incognita bastante grande que tengo...

Veamos..hoy he comprado un usb wireless con chipset realtek 8187, el cual debe de funcionar con el modulo rtl8187...bien, hasta ahí perfecto.

Llego a mi laptop, lo conecto, detecta la interfáz wifi pero no escanea..y digo..bueno,vamos a actualizar el kernel.

Y eso he hecho, he bajado el kernel 2.6.30.5 de kernel.org y lo he instalado en mi laptop.

He marcado todos los modulos que me hacian falta (incluido el rtl8187) y entonces, he guardado los cambios, he compilado, instalado la imagen del kernel en /boot/ y he apuntado a ella con grub para arrancar...

Pues ahi todo perfecto, reinicio el pc, conecto el usb wireless, y veo que me detecta la interfáz wireless, entoncés, intento escanear y voilá!, escanea redes wireless.

Pero hago un lsmod y..... ¿donde esta el modulo rtl8187 ejecutandose?

```

Module                  Size  Used by

snd_hda_codec_intelhdmi    11060  1

snd_hda_codec_realtek   179328  1

snd_hda_intel          22292  5

snd_hda_codec          48948  3 snd_hda_codec_intelhdmi,snd_hda_codec_realtek,snd_hda_intel

snd_hwdep               6140  1 snd_hda_codec
```

Al ver esto..he recompilado otra vez el kernel, pero omitiendo TODOS los dispositivos wireless,osea, no he marcado ningun modulo para el soporte de interfaces wireless,vamos, que he dejado a mi laptop sin wireless ( en teoria )...

Guardo,compilo, apunto grub a la nueva imagen del kernel, reinicio y........

La tarjeta wireless sigue funcionando!! :S

hago de nuevo el lsmod y lo mismo:

```

Module                  Size  Used by

snd_hda_codec_intelhdmi    11060  1

snd_hda_codec_realtek   179328  1

snd_hda_intel          22292  5

snd_hda_codec          48948  3 snd_hda_codec_intelhdmi,snd_hda_codec_realtek,snd_hda_intel

snd_hwdep               6140  1 snd_hda_codec

```

Saco e introduzco el usb wifi, y miro lo que dice el kernel con dmesg:

```

[  763.874579] usb 2-1: New USB device found, idVendor=0bda, idProduct=8187

[  763.874582] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[  763.874585] usb 2-1: Product: RTL8187_Wireless

[  763.874588] usb 2-1: Manufacturer: Manufacturer_Realtek_RTL8187_

[  763.874590] usb 2-1: SerialNumber: 00E04C04474C

[  763.874655] usb 2-1: uevent

[  763.874672] usb 2-1: usb_probe_device

[  763.874675] usb 2-1: configuration #1 chosen from 1 choice

[  763.876650] usb 2-1: adding 2-1:1.0 (config #1, interface 0)

[  763.877185] usb 2-1:1.0: uevent

[  763.877204] rtl8187 2-1:1.0: usb_probe_interface

[  763.877206] rtl8187 2-1:1.0: usb_probe_interface - got id

[  764.091490] phy1: Selected rate control algorithm 'minstrel'

[  764.092498] phy1: hwaddr 00:e0:4c:04:47:4c, RTL8187vB (default) V1 + rtl8225z2

[  764.092606] drivers/usb/core/inode.c: creating file '003'

[  764.124703] udev: renamed network interface wlan0 to wifi

[  767.505448] ADDRCONF(NETDEV_UP): wifi: link is not ready

```

Y esto sigue funcinando a pesar de que en el kernel no tengo ningun modulo para wifi activo, no se que ocurre, y no se de donde esta cogiendo esto los drivers para funcionar pero bueno...vengo a pediros una ayudita para averiguar como y porque funciona este usb sin ningun modulo activo del wifi en el kernel...

Nunca creí que diria esto pero: !!PORQUE FUNCIONASSSS??!! jeje

Otra cosa tengo que añadir...tengo una regla udev la cual renombra las interfaces wireless a wifi, cuando detecta un dispositivo usb que contiene una macaddress renombra esa interfaz a wifi, lo añado por si tubier algo que ver.

Un saludo.

Espero que me podais ayudar.

Muchisimas gracias.

----------

## edgar_uriel84

Dios!!! yo sería feliz con ese kernel tuyo jejeje.

No se te ha ido el modulo y lo haz puesto integrado en el kernel (con el *) en lugar de quitarlo o dejarlo como módulo??? digo, tal vez dejaste alguno marcado. No se me ocurre nada más.

----------

## ZaPa

Solucionado...

¿EL FALLO? No Estaba colocando la nueva imagen en /boot/ compilada despues de agregar soporte al driver.

¿LA SOLUCIÓN? Pues eso, copiar la imagen del kernel a /boot/  :Smile:  

```
 cp arch/x86/boot/bzImage /boot/KERNEL-BLABLBAL
```

Un saludo y muchas gracias por sus respuestas.

----------

