View previous topic :: View next topic |
Author |
Message |
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Sun Sep 27, 2009 6:37 pm Post subject: Nuevo kernel 2.6.31 y tarjeta de red desconocida |
|
|
Buenos días a todos
Desde que actualicé al kernel 2.6.31, no he sido capaz de que se me reconozca la tarjeta de red, la cual usa el driver r8168
estoy realmente interesado en este kernel porque ha sido el único que ha conseguido que se me reconozca más o menos bien todo el hardware en Gentoo.
El problema es que al compilar el módulo del kernel para r8168, en el kernel 2.6.31, me da varios errores con el make, los siguientes:
Code: | darkmachine r8168-8.014.00 # ls
Makefile readme src
darkmachine r8168-8.014.00 # make clean modules
make -C src/ clean
make[1]: Entering directory `/home/ahi/112/r8168-8.014.00/src'
rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions Module.symvers Modules.symvers Module.markers *.order
make[1]: Leaving directory `/home/ahi/112/r8168-8.014.00/src'
make -C src/ modules
make[1]: Entering directory `/home/ahi/112/r8168-8.014.00/src'
make -C /lib/modules/2.6.31-gentoo/build SUBDIRS=/home/ahi/112/r8168-8.014.00/src modules
make[2]: Entering directory `/usr/src/linux-2.6.31-gentoo'
CC [M] /home/ahi/112/r8168-8.014.00/src/r8168_n.o
/home/ahi/112/r8168-8.014.00/src/r8168_n.c: In function 'rtl8168_init_one':
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4137: error: 'struct net_device' has no member named 'open'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4138: error: 'struct net_device' has no member named 'hard_start_xmit'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4139: error: 'struct net_device' has no member named 'get_stats'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4141: error: 'struct net_device' has no member named 'stop'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4142: error: 'struct net_device' has no member named 'tx_timeout'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4143: error: 'struct net_device' has no member named 'set_multicast_list'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4147: error: 'struct net_device' has no member named 'change_mtu'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4148: error: 'struct net_device' has no member named 'set_mac_address'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4149: error: 'struct net_device' has no member named 'do_ioctl'
/home/ahi/112/r8168-8.014.00/src/r8168_n.c:4162: error: 'struct net_device' has no member named 'poll_controller'
make[3]: *** [/home/ahi/112/r8168-8.014.00/src/r8168_n.o] Error 1
make[2]: *** [_module_/home/ahi/112/r8168-8.014.00/src] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.31-gentoo'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/home/ahi/112/r8168-8.014.00/src'
make: *** [modules] Error 2
darkmachine r8168-8.014.00 # |
Buscando en Internet he encontrado poca información, lo más cercano a un arreglo para este error es esto: http://www.mail-archive.com/frugalware-git@frugalware.org/msg34725.html
Pero no entiendo bien como aplicar patches y tampoco sé si es para mi versión del kernel, además, es para i686 y yo uso amd64...
Alguna idea?
Gracias de antemano |
|
Back to top |
|
|
Inodoro_Pereyra Advocate
Joined: 03 Nov 2006 Posts: 2631 Location: En la otra punta del cable
|
Posted: Sun Sep 27, 2009 6:54 pm Post subject: |
|
|
No sé cual es la 8168 esa pero casi con seguridad está soportada dentro del kernel hoy en día. Si la 8169 ya tiene como 4 años esa controladora de red debe tener una edad parecida también, con lo que "compilar el driver" no debería implicarte mas que marcarlo dentro del kernel y compilar el kernel, nada de modulos externos raros descargados de ninguna parte.
Es mas, lo mas probable es que el driver 8169 haga funcionar también la 8168 esa...
Pega la salida de lspci | grep Ethernet por favor.
Salud! _________________ Mi Blog.
Si no fuera por C, estaríamos escribiendo programas en BASI, PASAL y OBOL. |
|
Back to top |
|
|
pcmaster Advocate
Joined: 04 Dec 2003 Posts: 2223 Location: Barcelona
|
Posted: Sun Sep 27, 2009 6:58 pm Post subject: |
|
|
Pues en el changelog del kernel:
http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.31
lo único que han cambiado es el wake on lan de la r8168, así que si eso no te afecta, ¿por qué no pruebas la última revisión del 2.6.30 en gentoo-sources? _________________ pcmaster |
|
Back to top |
|
|
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Sun Sep 27, 2009 7:05 pm Post subject: |
|
|
Bueno, aún sigo teniendo poca práctica en compilar kernels y en la 2.6.30-r5 no me reconocía la grabadora, pero este kernel funciona perfectamente y es súper ligero, excepto por el problemilla de la tarjeta de red.
Me gustaría intentar arreglar ese problema y continuar usando esta nueva versión, pero no sé qué hacer...
Debería probar con r8169? Creo que funciona bien con mi tarjeta, pero no estoy seguro... |
|
Back to top |
|
|
pcmaster Advocate
Joined: 04 Dec 2003 Posts: 2223 Location: Barcelona
|
Posted: Sun Sep 27, 2009 8:56 pm Post subject: |
|
|
¿Has leído el changelog del kernel 2.6.31, que te he puesto antes?
commit ca52efd5490f97f396d3c5863ba714624f272033
Author: françois romieu <romieu@fr.zoreil.com>
Date: Fri Jul 24 12:34:19 2009 +0000
r8169: WakeOnLan fix for the 8168
More stuff for http://bugzilla.kernel.org/show_bug.cgi?id=9512
Some 8168 are unable to WoL when receiving is not enabled (plain
old 8169 do not seem to care).
It is not exactly pretty to leave the receiver enabled but we
should now enable DMA late enough for it to be safe. Some late
stage boot failure due to pxe and friends may benefit from the
delayed enabling of bus-mastering as well.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Tested-by: Jaromír Cápík <tavvva@volny.cz>
Cc: Edward Hsu <edward_hsu@realtek.com.tw>
Está claro que sí funciona (o debería)
¿Qué driver estabas usando? _________________ pcmaster |
|
Back to top |
|
|
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Sun Sep 27, 2009 9:59 pm Post subject: |
|
|
Bueno, el changelog habla de unos cambios en el driver r8169, que mejoran la 8168, no explícitamente de la r8168 (o es un typo)
Debería de funcionar, acabo de descargar hoy desde la web de realtek el driver r8168, la versión es: r8168-8.014.00
Probaré el r8169, que ya había usado con anterioridad y hacía funciopnar mi tarjeta
Sobre la salida de lspci:
Code: | 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02) |
|
|
Back to top |
|
|
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Sun Sep 27, 2009 10:18 pm Post subject: |
|
|
Nada, el driver r8169 da exactamente el mismo fallo... |
|
Back to top |
|
|
Inodoro_Pereyra Advocate
Joined: 03 Nov 2006 Posts: 2631 Location: En la otra punta del cable
|
Posted: Mon Sep 28, 2009 1:01 pm Post subject: |
|
|
Estas usando un driver externo al del kernel (descargado de internet, copiado de un cd o algo similar) o usando el driver que viene incluido en el kernel?
No veo como puede darte exactamente el mismo mensaje de error el driver del kernel con un driver descargado de internet, por eso pregunto. Y de ser asi, que estas usando un driver externo, no lo hagas, en linux (casi) no se usan otros drivers que los incluidos en el mismo kernel. (Casi) nunca vas a necesitar descargar un driver de internet parahacer funcionar algo por ejemplo.
Salud! _________________ Mi Blog.
Si no fuera por C, estaríamos escribiendo programas en BASI, PASAL y OBOL. |
|
Back to top |
|
|
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Mon Sep 28, 2009 6:26 pm Post subject: |
|
|
Vale, finalmente encontré la opción en el kernel y lo he podido configurar, ahora mismo reinicio y miro que tal va.... |
|
Back to top |
|
|
luispa Guru
Joined: 17 Mar 2006 Posts: 359 Location: España
|
Posted: Mon Sep 28, 2009 7:39 pm Post subject: |
|
|
Usa el driver del kernel, olvídate del driver del fabricante, y usa el r8169.
Este es mi caso (una revisión distinta pero no creo que le afecte).
Code: | # lspci | grep -i realtek
08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
|
Y funciona perfecto, con .28, .29, .30 y .31.
Otra cosa, que me volvió loco al principio, en mi BIOS hay una opción en las NICs llamada "Green LAN", asegurate de ponerlas en disable. Dicha opción, cuando está habilitada, desactiva la tarjeta LAN durante el boot si no tiene cable conectado (o no tiene conectividad), y una vez arrancado el equipo ya no se puede volver a activar aunque conectes el cable.
Luis |
|
Back to top |
|
|
porqueami n00b
Joined: 17 Jul 2008 Posts: 25
|
Posted: Mon Sep 28, 2009 8:32 pm Post subject: |
|
|
Gracias por el consejo, Luispa, pero no es mi caso, no tengo esa opción en la BIOS
Y gracias a todos por la ayuda, tras habilitar la opción ahora estoy trabajando perfectamente con 2.6.31, la tarjeta de red va muy bien y el tema ya puede ser dado por solucionado
Muchas gracias a todos de nuevo!! |
|
Back to top |
|
|
|