MadWifi – Instalando Atheros Wireless Card sobre Linux

12 Comments

MadWifi es un grupo de voluntarios trabajando el driver para el dispositivo de LAN inalambrico sobre chipsets Atheros para el kernel de Linux. Actualmente existen tres de estos drivers, MadWifi, ath5k y ath9k, siendo este ultimo la version oficial de Atheros para la comunidad.

MadWifi es uno de los mejores y mas avanzados drivers de WLAN para Linux. El driver en si es open source pero depende de HAL (Hardware Abstraction Layer) el cual es propietario y solo esta disponible en forma de binario.

ath5k es la nueva version del driver la cual no depende de HAL. Esta version busca reemplazar el driver MadWifi para los sistemas Linux y es donde el grupo esta concentrando sus recursos.

Como dije anteriormente, ath9k es el mas nuevo de los tres y su desarrollo inicial fue hecho por Atheros quien luego libero el codigo fuente completamente para la comunidad. ath9k soporta todos los chipsets 802.11n de Atheros.

Instalacion del driver con module-assistant

Los paquetes de MadWifi para Debian Linux estan soportados oficialmente en los repositorios bajo la seccion de non-free . Actualmente hay soporte para Sarge, Etch y Lenny o stable, testing y unstable.

En la pagina oficial del proyecto recomiendan el uso de la herramienta module-assistant (m-a) para la instalacion de los modulos madwifi. Esta herramienta automatiza los pasos de;

  • Preparacion de las fuentes/headers del kernel
  • Desempaquetar el tarball del modulo
  • Compilar
  • Crear los modulos binarios del el paquete para Debian
  • Instalacion y limpieza

deathbian:~# apt-get update
deathbian:~# apt-get install madwifi-source 
deathbian:~# apt-get install madwifi-tools
deathbian:~# m-a prepare
deathbian:~# m-a a-i madwifi

Cargamos el modulo tecleando modprobe ath_pci. Para verificar que el
Y eso es todo, solo reiniciamos y el kernel ya tendra soporte para la tarjeta Atheros y a navegar wireless se ha dicho. Pero que pasa cuando actualizamos el kernel de Debian y se pierde el soporte para la tarjeta inalambrica?

Recompilar e Instalar el driver Atheros para el nuevo Kernel

Me ha pasado con varias versiones del kernel que al actualizar el sistema, Debian tambien actualiza a una nueva version estable del kernel de Linux y con esto se pierde el soporte de la WLAN.

Para solucionar esto, iniciamos nuestro Linux con la version anterior del kernel con el modulo compilado para soportar atheros wifi. Tambien podemos conectarnos a internet via la tarjeta de red eth0, y ejecutamos;

deathbian:~# apt-get install linux-headers-2.6.24-1-686

Con el comando anterior descargamos desde los repositorios las fuentes del nuevo kernel instalado, en este caso 2.6.24-1-686. Luego reiniciamos con este kernel y corremos los comandos de instalacion.

Para asegurarnos que se carge el modulo al reiniciar el sistema podemos teclear echo ath_pci >> /etc/modules, en caso que no carge el modulo automaticamente en el arranque.

Via | MadWifi

12 Replies to “MadWifi – Instalando Atheros Wireless Card sobre Linux”

  1. disculpa, cuando hago el ultimo paso m-a a-i madwifi me salta un error

    dh_testdir
    dh_testroot
    dh_clean
    /usr/bin/make -C /usr/src/modules/madwifi clean \
    KERNELPATH=/usr/src/linux-headers-2.6.32-24-generic KERNELRELEASE=2.6.32-24-generic KERNELCONF=/usr/src/linux-headers-2.6.32-24-generic/.config
    make[1]: se ingresa al directorio `/usr/src/modules/madwifi’
    for i in ath/ ath_hal/ ath_rate/ net80211/; do \
    /usr/bin/make -C $i clean; \
    done
    make[2]: Entering directory `/usr/src/modules/madwifi/ath’
    rm -f *~ *.o *.ko *.mod.c .*.cmd
    rm -f modules.order .depend .version .*.o.flags .*.o.d
    rm -rf .tmp_versions
    make[2]: Leaving directory `/usr/src/modules/madwifi/ath’
    make[2]: Entering directory `/usr/src/modules/madwifi/ath_hal’
    rm -f *~ *.o *.ko *.mod.c uudecode .*.cmd
    rm -f modules.order .depend .version .*.o.flags .*.o.d
    rm -rf .tmp_versions
    make[2]: Leaving directory `/usr/src/modules/madwifi/ath_hal’
    make[2]: Entering directory `/usr/src/modules/madwifi/ath_rate’
    for i in amrr/ onoe/ sample/ minstrel/; do \
    /usr/bin/make -C $i clean; \
    done
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_rate/amrr’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_rate/amrr’
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_rate/onoe’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_rate/onoe’
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_rate/sample’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_rate/sample’
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_rate/minstrel’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_rate/minstrel’
    rm -f modules.order
    make[2]: Leaving directory `/usr/src/modules/madwifi/ath_rate’
    make[2]: Entering directory `/usr/src/modules/madwifi/net80211′
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[2]: Leaving directory `/usr/src/modules/madwifi/net80211′
    /usr/bin/make -C ./tools clean
    make[2]: Entering directory `/usr/src/modules/madwifi/tools’
    rm -f athstats 80211stats athkey athchans athctrl athdebug 80211debug wlanconfig wpakey core a.out
    for d in ath_info; do \
    /usr/bin/make -C $d clean; \
    done
    make[3]: Entering directory `/usr/src/modules/madwifi/tools/ath_info’
    rm -f *.o ath_info
    make[3]: Leaving directory `/usr/src/modules/madwifi/tools/ath_info’
    make[2]: Leaving directory `/usr/src/modules/madwifi/tools’
    rm -rf .tmp_versions
    rm -f modules.order *.symvers svnversion.h
    make[1]: se sale del directorio `/usr/src/modules/madwifi’
    /usr/bin/make -f debian/rules kdist_clean kdist_config binary-modules
    make[1]: se ingresa al directorio `/usr/src/modules/madwifi’
    dh_testdir
    dh_testroot
    dh_clean
    /usr/bin/make -C /usr/src/modules/madwifi clean \
    KERNELPATH=/usr/src/linux-headers-2.6.32-24-generic KERNELRELEASE=2.6.32-24-generic KERNELCONF=/usr/src/linux-headers-2.6.32-24-generic/.config
    make[2]: se ingresa al directorio `/usr/src/modules/madwifi’
    for i in ath/ ath_hal/ ath_rate/ net80211/; do \
    /usr/bin/make -C $i clean; \
    done
    make[3]: Entering directory `/usr/src/modules/madwifi/ath’
    rm -f *~ *.o *.ko *.mod.c .*.cmd
    rm -f modules.order .depend .version .*.o.flags .*.o.d
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath’
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_hal’
    rm -f *~ *.o *.ko *.mod.c uudecode .*.cmd
    rm -f modules.order .depend .version .*.o.flags .*.o.d
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_hal’
    make[3]: Entering directory `/usr/src/modules/madwifi/ath_rate’
    for i in amrr/ onoe/ sample/ minstrel/; do \
    /usr/bin/make -C $i clean; \
    done
    make[4]: Entering directory `/usr/src/modules/madwifi/ath_rate/amrr’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[4]: Leaving directory `/usr/src/modules/madwifi/ath_rate/amrr’
    make[4]: Entering directory `/usr/src/modules/madwifi/ath_rate/onoe’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[4]: Leaving directory `/usr/src/modules/madwifi/ath_rate/onoe’
    make[4]: Entering directory `/usr/src/modules/madwifi/ath_rate/sample’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[4]: Leaving directory `/usr/src/modules/madwifi/ath_rate/sample’
    make[4]: Entering directory `/usr/src/modules/madwifi/ath_rate/minstrel’
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[4]: Leaving directory `/usr/src/modules/madwifi/ath_rate/minstrel’
    rm -f modules.order
    make[3]: Leaving directory `/usr/src/modules/madwifi/ath_rate’
    make[3]: Entering directory `/usr/src/modules/madwifi/net80211′
    rm -f *~ *.o *.ko *.mod.c
    rm -f modules.order .depend .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
    rm -rf .tmp_versions
    make[3]: Leaving directory `/usr/src/modules/madwifi/net80211′
    /usr/bin/make -C ./tools clean
    make[3]: Entering directory `/usr/src/modules/madwifi/tools’
    rm -f athstats 80211stats athkey athchans athctrl athdebug 80211debug wlanconfig wpakey core a.out
    for d in ath_info; do \
    /usr/bin/make -C $d clean; \
    done
    make[4]: Entering directory `/usr/src/modules/madwifi/tools/ath_info’
    rm -f *.o ath_info
    make[4]: Leaving directory `/usr/src/modules/madwifi/tools/ath_info’
    make[3]: Leaving directory `/usr/src/modules/madwifi/tools’
    rm -rf .tmp_versions
    rm -f modules.order *.symvers svnversion.h
    make[2]: se sale del directorio `/usr/src/modules/madwifi’
    for templ in ; do \
    cp $templ `echo $templ | sed -e ‘s/_KVERS_/2.6.32-24-generic/g’` ; \
    done
    for templ in `ls debian/*.modules.in` ; do \
    test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \
    sed -e ‘s/##KVERS##/2.6.32-24-generic/g ;s/#KVERS#/2.6.32-24-generic/g ; s/_KVERS_/2.6.32-24-generic/g ; s/##KDREV##/2.6.32-24.42/g ; s/#KDREV#/2.6.32-24.42/g ; s/_KDREV_/2.6.32-24.42/g ‘ ${templ%.modules.in}; \
    done
    dh_testdir
    dh_testroot
    dh_clean -k
    # Build modules
    /usr/bin/make -C /usr/src/modules/madwifi modules \
    KERNELPATH=/usr/src/linux-headers-2.6.32-24-generic KERNELRELEASE=2.6.32-24-generic KERNELCONF=/usr/src/linux-headers-2.6.32-24-generic/.config
    make[2]: se ingresa al directorio `/usr/src/modules/madwifi’
    Checking requirements… ok.
    Checking kernel configuration… ok.
    /usr/bin/make -C /usr/src/linux-headers-2.6.32-24-generic SUBDIRS=/usr/src/modules/madwifi modules
    make[3]: Entering directory `/usr/src/linux-headers-2.6.32-24-generic’
    CC [M] /usr/src/modules/madwifi/ath/if_ath.o
    In file included from /usr/src/modules/madwifi/ath/../net80211/ieee80211_monitor.h:34,
    from /usr/src/modules/madwifi/ath/if_ath.c:75:
    /usr/src/modules/madwifi/ath/../ath/if_athvar.h:107: error: conflicting types for ‘irqreturn_t’
    include/linux/irqreturn.h:16: note: previous declaration of ‘irqreturn_t’ was here
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_attach’:
    /usr/src/modules/madwifi/ath/if_ath.c:478: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:818: error: ‘struct net_device’ has no member named ‘open’
    /usr/src/modules/madwifi/ath/if_ath.c:819: error: ‘struct net_device’ has no member named ‘stop’
    /usr/src/modules/madwifi/ath/if_ath.c:820: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
    /usr/src/modules/madwifi/ath/if_ath.c:821: error: ‘struct net_device’ has no member named ‘tx_timeout’
    /usr/src/modules/madwifi/ath/if_ath.c:823: error: ‘struct net_device’ has no member named ‘set_multicast_list’
    /usr/src/modules/madwifi/ath/if_ath.c:824: error: ‘struct net_device’ has no member named ‘do_ioctl’
    /usr/src/modules/madwifi/ath/if_ath.c:825: error: ‘struct net_device’ has no member named ‘get_stats’
    /usr/src/modules/madwifi/ath/if_ath.c:826: error: ‘struct net_device’ has no member named ‘set_mac_address’
    /usr/src/modules/madwifi/ath/if_ath.c:827: error: ‘struct net_device’ has no member named ‘change_mtu’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_detach’:
    /usr/src/modules/madwifi/ath/if_ath.c:1129: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1184: error: ‘struct net_device’ has no member named ‘stop’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_vap_create’:
    /usr/src/modules/madwifi/ath/if_ath.c:1193: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1268: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_vap_delete’:
    /usr/src/modules/madwifi/ath/if_ath.c:1452: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_suspend’:
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1552: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_resume’:
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:1559: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_intr’:
    /usr/src/modules/madwifi/ath/if_ath.c:2259: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_fatal_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:2455: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_rxorn_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:2465: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_bmiss_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:2475: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_init’:
    /usr/src/modules/madwifi/ath/if_ath.c:2517: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_stop_locked’:
    /usr/src/modules/madwifi/ath/if_ath.c:2620: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_stop’:
    /usr/src/modules/madwifi/ath/if_ath.c:2701: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_reset’:
    /usr/src/modules/madwifi/ath/if_ath.c:2741: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_startraw’:
    /usr/src/modules/madwifi/ath/if_ath.c:2960: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_hardstart’:
    /usr/src/modules/madwifi/ath/if_ath.c:3272: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_mgtstart’:
    /usr/src/modules/madwifi/ath/if_ath.c:3619: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_key_alloc’:
    /usr/src/modules/madwifi/ath/if_ath.c:3951: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_key_delete’:
    /usr/src/modules/madwifi/ath/if_ath.c:4016: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_key_set’:
    /usr/src/modules/madwifi/ath/if_ath.c:4092: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_key_update_begin’:
    /usr/src/modules/madwifi/ath/if_ath.c:4107: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_key_update_end’:
    /usr/src/modules/madwifi/ath/if_ath.c:4128: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_mode_init’:
    /usr/src/modules/madwifi/ath/if_ath.c:4218: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_updateslot’:
    /usr/src/modules/madwifi/ath/if_ath.c:4350: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_beacon_dturbo_config’:
    /usr/src/modules/madwifi/ath/if_ath.c:4377: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_beacon_dturbo_update’:
    /usr/src/modules/madwifi/ath/if_ath.c:4426: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_turbo_switch_mode’:
    /usr/src/modules/madwifi/ath/if_ath.c:4569: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_bstuck_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:5282: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_node_alloc’:
    /usr/src/modules/madwifi/ath/if_ath.c:5690: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_node_cleanup’:
    /usr/src/modules/madwifi/ath/if_ath.c:5718: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_recv_mgmt’:
    /usr/src/modules/madwifi/ath/if_ath.c:6238: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_rx_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:6361: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_grppoll_start’:
    /usr/src/modules/madwifi/ath/if_ath.c:6799: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_grppoll_stop’:
    /usr/src/modules/madwifi/ath/if_ath.c:7005: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_wme_update’:
    /usr/src/modules/madwifi/ath/if_ath.c:7211: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_uapsd_flush’:
    /usr/src/modules/madwifi/ath/if_ath.c:7230: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_start’:
    /usr/src/modules/madwifi/ath/if_ath.c:7403: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_tasklet_q0’:
    /usr/src/modules/madwifi/ath/if_ath.c:8242: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_tasklet_q0123’:
    /usr/src/modules/madwifi/ath/if_ath.c:8263: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_tasklet’:
    /usr/src/modules/madwifi/ath/if_ath.c:8307: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_tx_timeout’:
    /usr/src/modules/madwifi/ath/if_ath.c:8335: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_calibrate’:
    /usr/src/modules/madwifi/ath/if_ath.c:8722: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_scan_start’:
    /usr/src/modules/madwifi/ath/if_ath.c:8802: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_scan_end’:
    /usr/src/modules/madwifi/ath/if_ath.c:8822: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_channel’:
    /usr/src/modules/madwifi/ath/if_ath.c:8840: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_coverageclass’:
    /usr/src/modules/madwifi/ath/if_ath.c:8856: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_mhz2ieee’:
    /usr/src/modules/madwifi/ath/if_ath.c:8866: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_newstate’:
    /usr/src/modules/madwifi/ath/if_ath.c:8881: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_setup_stationkey’:
    /usr/src/modules/madwifi/ath/if_ath.c:9376: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_newassoc’:
    /usr/src/modules/madwifi/ath/if_ath.c:9537: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_getchannels’:
    /usr/src/modules/madwifi/ath/if_ath.c:9568: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_xr_rate_setup’:
    /usr/src/modules/madwifi/ath/if_ath.c:9866: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_setup_subrates’:
    /usr/src/modules/madwifi/ath/if_ath.c:9895: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_rate_setup’:
    /usr/src/modules/madwifi/ath/if_ath.c:9938: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_printtxbuf’:
    /usr/src/modules/madwifi/ath/if_ath.c:10162: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_getstats’:
    /usr/src/modules/madwifi/ath/if_ath.c:10189: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_mac_address’:
    /usr/src/modules/madwifi/ath/if_ath.c:10212: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_change_mtu’:
    /usr/src/modules/madwifi/ath/if_ath.c:10241: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_ioctl’:
    /usr/src/modules/madwifi/ath/if_ath.c:10330: error: ‘struct net_device’ has no member named ‘priv’
    cc1: warnings being treated as errors
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_sysctl_halparam’:
    /usr/src/modules/madwifi/ath/if_ath.c:10502: error: passing argument 5 of ‘proc_dointvec’ from incompatible pointer type
    include/linux/sysctl.h:985: note: expected ‘loff_t *’ but argument is of type ‘size_t *’
    /usr/src/modules/madwifi/ath/if_ath.c:10502: error: too many arguments to function ‘proc_dointvec’
    /usr/src/modules/madwifi/ath/if_ath.c:10813: error: passing argument 5 of ‘proc_dointvec’ from incompatible pointer type
    include/linux/sysctl.h:985: note: expected ‘loff_t *’ but argument is of type ‘size_t *’
    /usr/src/modules/madwifi/ath/if_ath.c:10813: error: too many arguments to function ‘proc_dointvec’
    /usr/src/modules/madwifi/ath/if_ath.c: At top level:
    /usr/src/modules/madwifi/ath/if_ath.c:10825: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10831: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10837: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10843: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10849: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10855: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10861: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10867: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10873: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10880: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10887: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10893: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10899: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10905: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10911: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10918: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10924: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10931: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10937: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10943: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10949: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10955: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10961: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10967: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10973: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10979: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10985: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c:10991: error: initialization from incompatible pointer type
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_announce’:
    /usr/src/modules/madwifi/ath/if_ath.c:11083: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘txcont_configure_radio’:
    /usr/src/modules/madwifi/ath/if_ath.c:11279: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘txcont_queue_packet’:
    /usr/src/modules/madwifi/ath/if_ath.c:11550: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘txcont_on’:
    /usr/src/modules/madwifi/ath/if_ath.c:11684: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘txcont_off’:
    /usr/src/modules/madwifi/ath/if_ath.c:11705: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_dfs_testmode’:
    /usr/src/modules/madwifi/ath/if_ath.c:11719: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_dfs_testmode’:
    /usr/src/modules/madwifi/ath/if_ath.c:11746: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_txcont’:
    /usr/src/modules/madwifi/ath/if_ath.c:11756: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_txcont_power’:
    /usr/src/modules/madwifi/ath/if_ath.c:11774: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_txcont_power’:
    /usr/src/modules/madwifi/ath/if_ath.c:11792: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_txcont_rate’:
    /usr/src/modules/madwifi/ath/if_ath.c:11802: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_txcont_rate’:
    /usr/src/modules/madwifi/ath/if_ath.c:11819: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_dfs_cac_time’:
    /usr/src/modules/madwifi/ath/if_ath.c:11829: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_dfs_cac_time’:
    /usr/src/modules/madwifi/ath/if_ath.c:11839: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_set_dfs_excl_period’:
    /usr/src/modules/madwifi/ath/if_ath.c:11859: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_get_dfs_excl_period’:
    /usr/src/modules/madwifi/ath/if_ath.c:11868: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_test_radar’:
    /usr/src/modules/madwifi/ath/if_ath.c:11880: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_dump_hal_map’:
    /usr/src/modules/madwifi/ath/if_ath.c:11895: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_rcv_dev_event’:
    /usr/src/modules/madwifi/ath/if_ath.c:12003: error: ‘struct net_device’ has no member named ‘priv’
    /usr/src/modules/madwifi/ath/if_ath.c:12005: error: ‘struct net_device’ has no member named ‘open’
    /usr/src/modules/madwifi/ath/if_ath.c: In function ‘ath_debug_iwpriv’:
    /usr/src/modules/madwifi/ath/if_ath.c:12370: error: ‘struct net_device’ has no member named ‘priv’
    make[5]: *** [/usr/src/modules/madwifi/ath/if_ath.o] Error 1
    make[4]: *** [/usr/src/modules/madwifi/ath] Error 2
    make[3]: *** [_module_/usr/src/modules/madwifi] Error 2
    make[3]: Leaving directory `/usr/src/linux-headers-2.6.32-24-generic’
    make[2]: *** [modules] Error 2
    make[2]: se sale del directorio `/usr/src/modules/madwifi’
    make[1]: *** [binary-modules] Error 2
    make[1]: se sale del directorio `/usr/src/modules/madwifi’
    make: *** [kdist_build] Error 2

  2. hola tambien tengo el mismo problema y no puedo seguir tu guia ya q la unica mnera q me puedo conectar a internet es por la wifi.. no puedo darle update….. y tengo el dvd live cd…. con ese funcionara ,.. tengo entendiido q por lo q no es pesado. no trae mucho software en el cd.- q puedo hacer ya no c q ma hacer buu helpme

  3. problema: el sistema wifislax linux no detecta mi targeta de red, me dicen que es porque esta tiene interruptor de encendido, la targeta es una atheros lan-express as ieee 802.11g pci-e adapter utlilizo el cd para arrancar el wifislax y cuando lo hago no enciende el led de la targeta osea ni la detecta. lo que no se es como hacer para que la detecte este sistema si me puededs ayudar gracias. si falta info preguntame para rastrear mi lap

  4. no puedo instalar mi tarjeta wirelesss tengo una toshiba a215s6820 y utilizo una tarjeta atheros y utilizo ubuntu quisiera que me ayuden

  5. Hola soy un principiante en linux y estube probando ubuntu y kubuntu con los dos tube bastantes problemas tal vez por mi culpa pero ahora quiero provar debian lo nuevo y mejorado jajaja…. el tema es que tengo una placa de wireless que es la unica manera de conectarme a internet la placa es una TP-LINK TL-WN651G y no la e podido configurar. De esta manera que explicas en esta guia funcionaria sin internet? muchas gracias y aguante el software libre y porque no hardware libre un saludo desde Argentina buenos aires tandil 😛

    1. @Conrado: Si tenes los dvd’s de instalacion de Debian si te funciona, ya que el comando apt instalada desde internet o los dvds.

Deja tus preguntas o comentarios