la conexión inalámbrica está desactivada por el interruptor de hardware incluso cuando no

10

Tengo una computadora espartana. Tiene un módulo inalámbrico incorporado con el que hasta hace poco no había tenido problemas. El problema actual es este: cada vez que apago la computadora y se reinicia, no puedo "habilitar el hardware" de la red inalámbrica. En NetworkManager, recibo un mensaje 'en gris' que dice "la conexión inalámbrica está desactivada por el interruptor de hardware". El interruptor de hardware está habilitado (puedo ver que el LED verde se enciende y apaga cuando presiono el botón inalámbrico). La salida de los rfkillestados de que no está bloqueado por software pero sí está bloqueado por hardware.

He intentado lo siguiente (rt73usb es el controlador del kernel para mi módulo inalámbrico integrado) como root:

rmmod -f rt73usb 
rfkill unblock all
modprobe rt73usb

Pero no hace nada.

La única forma en que he podido "corregir" este problema es arrancando en Windows XP (esta es una máquina de arranque dual pero F16 es el sistema operativo principal de uso). Windows hace algo que restablece algo. Cuando reinicio de nuevo en Fedora, puedo acceder a mi conexión inalámbrica como se esperaba. Incluso presionar el botón inalámbrico ON y OFF funciona como se esperaba. Es justo cuando apago y luego vuelvo a encender que mi conexión inalámbrica parece tener problemas.

¿Qué puedo hacer para corregir este problema? La mayoría de las soluciones de Google disponibles apuntan a soluciones "bloqueadas: sí" y las que no apuntan a la solución anterior, pero ambas no funcionan para mí.

Aquí hay algunos datos que pueden ser útiles:

uname -a

Linux spartan-laptop 3.4.2-1.fc16.i686 #1 SMP Thu Jun 14 21:13:38 UTC 2012 i686 i686 i386 GNU/Linux

lsmod

Module                  Size  Used by
fcoe                   22665  0 
libfcoe                41981  1 fcoe
libfc                 101966  2 fcoe,libfcoe
scsi_transport_fc      51903  2 fcoe,libfc
lockd                  77892  0 
scsi_tgt               18993  1 scsi_transport_fc
be2iscsi               62864  0 
iscsi_boot_sysfs       15121  1 be2iscsi
8021q                  23401  0 
garp                   13744  1 8021q
stp                    12719  1 garp
llc                    13770  2 garp,stp
bnx2i                  49425  0 
cnic                   57699  1 bnx2i
uio                    14374  1 cnic
cxgb4i                 32063  0 
cxgb4                  96243  1 cxgb4i
cxgb3i                 28014  0 
libcxgbi               50450  2 cxgb4i,cxgb3i
cxgb3                 130827  1 cxgb3i
mdio                   13214  1 cxgb3
ib_iser                32861  0 
rdma_cm                36864  1 ib_iser
ib_cm                  36679  1 rdma_cm
iw_cm                  13715  1 rdma_cm
ib_sa                  23625  2 rdma_cm,ib_cm
ib_mad                 41285  2 ib_cm,ib_sa
ib_core                61955  6 ib_iser,rdma_cm,ib_cm,iw_cm,ib_sa,ib_mad
ib_addr                13473  1 rdma_cm
iscsi_tcp              18015  0 
libiscsi_tcp           19427  4 cxgb4i,cxgb3i,libcxgbi,iscsi_tcp
libiscsi               44809  8 be2iscsi,bnx2i,cxgb4i,cxgb3i,libcxgbi,ib_iser,iscsi_tcp,libiscsi_tcp
scsi_transport_iscsi    46598  8 be2iscsi,bnx2i,libcxgbi,ib_iser,iscsi_tcp,libiscsi
ip6t_REJECT            12782  2 
nf_conntrack_ipv6      13921  2 
nf_defrag_ipv6         13678  1 nf_conntrack_ipv6
ip6table_filter        12711  1 
ip6_tables             17737  1 ip6table_filter
nf_conntrack_ipv4      14280  2 
nf_defrag_ipv4         12601  1 nf_conntrack_ipv4
xt_state               12514  4 
nf_conntrack           71472  3 nf_conntrack_ipv6,nf_conntrack_ipv4,xt_state
arc4                   12473  2 
snd_hda_codec_si3054    12864  1 
snd_hda_codec_realtek    63058  1 
snd_hda_intel          32323  3 
rt73usb                26833  0 
snd_hda_codec         103493  3 snd_hda_codec_si3054,snd_hda_codec_realtek,snd_hda_intel
rt2x00usb              19162  1 rt73usb
snd_hwdep              13236  1 snd_hda_codec
rt2x00lib              51790  2 rt73usb,rt2x00usb
mac80211              436414  2 rt2x00usb,rt2x00lib
snd_seq                54638  0 
snd_seq_device         13817  1 snd_seq
cfg80211              161266  2 rt2x00lib,mac80211
snd_pcm                81330  3 snd_hda_codec_si3054,snd_hda_intel,snd_hda_codec
rfkill                 20417  2 cfg80211
coretemp               13240  0 
microcode              18713  0 
joydev                 17124  0 
iTCO_wdt               17652  0 
iTCO_vendor_support    13243  1 iTCO_wdt
serio_raw              13155  0 
i2c_i801               17485  0 
snd_timer              23896  2 snd_seq,snd_pcm
snd                    63169  15 snd_hda_codec_si3054,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_seq,snd_seq_device,snd_pcm,snd_timer
soundcore              14116  1 snd
snd_page_alloc         13709  2 snd_hda_intel,snd_pcm
r8169                  51284  0 
mii                    13311  1 r8169
uinput                 17246  0 
sunrpc                215122  2 lockd
binfmt_misc            17207  1 
firewire_ohci          35498  0 
firewire_core          55317  1 firewire_ohci
crc_itu_t              12523  2 rt73usb,firewire_core
sdhci_pci              18211  0 
sdhci                  32642  1 sdhci_pci
yenta_socket           40293  0 
mmc_core               96866  2 sdhci_pci,sdhci
i915                  413476  3 
drm_kms_helper         30905  1 i915
drm                   205796  4 i915,drm_kms_helper
i2c_algo_bit           13058  1 i915
i2c_core               28151  5 i2c_i801,i915,drm_kms_helper,drm,i2c_algo_bit
video                  18500  1 i915

lspci

00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 3 (rev 02)
00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
04:04.0 CardBus bridge: O2 Micro, Inc. OZ711MP1/MS1 MemoryCardBus Controller (rev 21)
04:04.2 SD Host controller: O2 Micro, Inc. Integrated MMC/SD Controller (rev 01)
04:04.3 Bridge: O2 Micro, Inc. Integrated MS/xD Controller (rev 01)
04:04.4 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02)
[angelo@spartan-laptop ~]$ lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 3 (rev 02)
00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
04:04.0 CardBus bridge: O2 Micro, Inc. OZ711MP1/MS1 MemoryCardBus Controller (rev 21)
04:04.2 SD Host controller: O2 Micro, Inc. Integrated MMC/SD Controller (rev 01)
04:04.3 Bridge: O2 Micro, Inc. Integrated MS/xD Controller (rev 01)
04:04.4 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02)
[angelo@spartan-laptop ~]$ lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 3 (rev 02)
00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
04:04.0 CardBus bridge: O2 Micro, Inc. OZ711MP1/MS1 MemoryCardBus Controller (rev 21)
04:04.2 SD Host controller: O2 Micro, Inc. Integrated MMC/SD Controller (rev 01)
04:04.3 Bridge: O2 Micro, Inc. Integrated MS/xD Controller (rev 01)
04:04.4 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02)
g19fanatic
fuente
1
¿Hay algo relevante en tu dmesg?
Chris Down
¿Estás seguro de que el interruptor de hardware no solo está engomado? El hecho de que este problema se haya desarrollado en un sistema que funcionaba anteriormente me sugiere un problema a nivel de hardware, lo que significaría que no se trata aquí. Tendría un problema de superusuario.SE, servidor predeterminado o electrónica.
Warren Young
1
El problema se desarrolló después de que hice una actualización yum. No estoy seguro de qué se instaló (nunca tuve un problema simplemente haciendo una actualización a ciegas antes) pero el problema comenzó después de mi última actualización yum y un reinicio. El hecho de que reiniciar en Windows y luego reiniciar en f16 sugeriría que está relacionado con el software.
g19fanatic
¿Qué rfkill listmuestra? Mi computadora portátil HP (flextronics) tiene un problema en el que, si compilo los WMIcontroladores para la computadora portátil (lo que permite un manejo más avanzado del interruptor rfkill), se bloquea de manera "suave" y "dura" y, a veces, los enlaces blandos se negarán a obtener desbloqueado rfkill listayudaría a identificar un escenario como este.
njsg
@njsg, los bloqueos "suaves" no son el problema. Se alternan sin problemas. Es el bloqueo "duro" que no se 'desbloqueará'. Cuando inicio en Windows, luego Linux y luego hago una rfkill eventy luego presiono el botón de hardware, el bloqueo duro funciona como se esperaba. Si luego reinicio y voy directamente a Linux, el bloqueo de hardware no funciona como se esperaba.
g19fanatic

Respuestas:

2

Sé que esto va a sonar como una respuesta vaga ... pero verifique si tiene instalado un paquete de firmware actualizado para su rt73usb. Requiere que se envíe un firmware por separado al dispositivo para que funcione ... que, por supuesto, Windows proporcionaría, luego un arranque en caliente le permite usarlo en Linux.

Estoy buscando información sobre Fedora sobre las actualizaciones recientes de controladores / firmware rt73usb, pero tomará un momento.

Verifique el firmware y las actualizaciones a esto.

Desde aquí , no parece que el paquete de firmware rt73usb se haya actualizado recientemente (el último fue enero de 2012, hace seis meses).

Puede intentar desinstalar el firmware y luego reinstalarlo.

Quizás la fase de la luna y la Alineación Galáctica requieran esto. No preguntes, a veces ayuda.

Pero sigo sospechando un problema de firmware ya que un arranque en caliente en Windows resuelve el problema.

lornix
fuente
Revisé el yum.log y no se actualizó nada relacionado con ninguno de los módulos. También hice lo que sugirió e hice un rmmod rt73usb; yum erase rt73usnb-firmware; reboota yum install rt73usb-firmware. Esto no resolvió el problema. Un reinicio aún no soluciona el problema de bloqueo de hardware. Solo un arranque en Windows todavía soluciona el problema.
g19fanatic
¡Gorrón! Sin embargo, sigo pensando que está relacionado con el firmware, ya que el arranque en Windows y luego el arranque en caliente en Linux resuelve el problema.
lornix
1

Sospecho que la actualización que describió instaló una versión más nueva del controlador que no funciona del todo con el hardware específico que tiene. Debería mirar a través de su registro yum /var/log/yum.logy tal vez yum historybuscar cualquier cosa que pueda haber afectado el controlador rt73usb, el subsistema usb u otras partes relacionadas (desde su lsmod, miraría cualquier cosa relacionada con rt73usb, rt2x00usb, rt2x00lib, mac80211, cfg80211 o rfkill). Retroceda las instalaciones que se realizaron en el momento en que las cosas comenzaron a romperse y vea si las cosas comienzan a funcionar nuevamente.

Otra opción sería explorar el uso de NDISwrapper para usar el controlador real de Windows. Personalmente, odio esta solución, pero a veces es la única forma de hacer que las cosas vuelvan a funcionar. Es probable que el controlador de Windows también tenga el último firmware del dispositivo.

jlp
fuente
Sospeché que una nueva actualización había causado el problema e hice lo que me recomendó. Después de mirar el yum.log, parece que no se actualizó nada relacionado con ninguno de esos paquetes. Podría probar la solución de envoltura NDIS, pero como usted odio esa solución. Especialmente porque solía funcionar sin problemas y TODAVÍA funciona con la solución de arranque de Windows ...
g19fanatic
Todavía podría comenzar a retroceder los cambios hasta que vuelva a un sistema en funcionamiento. Es doloroso, pero factible (a menos que retroceda completamente antes de comenzar a tener problemas y todavía no funciona). Podría usar una búsqueda binaria para minimizar la cantidad de botas frías que tiene que hacer mientras retrocede.
jlp
Creo que así es como voy a tener que intentar resolver este problema. Un método de búsqueda binaria para eliminar los paquetes actualizados definitivamente sería la forma de hacerlo. Gracias por la sugerencia. ¡Desafortunadamente, este problema fue en la casa de mis padres que estaba visitando durante el cuarto día festivo y no tendré acceso a la máquina hasta Navidad! Lo bueno es que mi padre está dispuesto a pasar por la solución todas las mañanas para ingresar a su red :)
g19fanatic
2
Parece que debe haber sido una mala actualización que ahora se ha solucionado. Al ser Linux, raramente (si alguna vez) se ralentiza cuando se deja continuamente en línea y rara vez necesita un ciclo de energía. Tengo un trabajo cron que se ejecuta y hace una actualización yum como root cada 2 semanas. Mi padre no está seguro de cuándo sucedió, pero la última vez que lo encendió (el corte de energía y el agotamiento de la batería hicieron que la computadora portátil muriera) olvidó ir a Windows para que la conexión inalámbrica funcionara, pero notó que la conexión inalámbrica funcionaba sin problemas.
g19fanatic
1

Creo que el problema está relacionado con el manejo del núcleo de los llamados botones de hardware (que de hecho podrían ser semi-hardware si son botones táctiles, no interruptores eléctricos). Los disparadores pueden no ser necesariamente parte del firmware / controlador inalámbrico. ACPI podría ser responsable de eso también.

Lo primero que haría en su lugar, es intentar reiniciar a un kernel anterior. Si realizó una actualización a ciegas, es probable que se haya actualizado el núcleo. No estoy familiarizado con fedora específicamente, pero esperaría que su procedimiento de actualización del kernel implique el desplazamiento de entradas de GRUB, similar a lo que hace Ubuntu. Por lo tanto, para arrancar un kernel más antiguo, necesitaría ingresar a GRUB manteniendo presionado Shift(en una etapa inicial de arranque) o presionando Esc. Luego simplemente seleccione un kernel anterior de la lista.

Si esto no "solo funciona", puede depurar aún más el problema ejecutando lo siguiente y comparando la salida entre un estado de computadora portátil roto y funcionando (arreglado mediante el arranque de Windows):

  • ejecutar dmesg | tailjusto después de presionar el botón - Sin embargo, puede que no haya nada relacionado allí.

  • supervise el archivo de registro del deamon de ACPI : suponiendo que se encuentre en /var/log/acpid.log, ejecutará tail -f /var/log/acpid.log.

  • ejecute una utilidad de seguimiento de eventos comoxev : imprime una gran cantidad de resultados; pero lo único que le interesaría es si se informa cualquier evento de pulsación de tecla cuando presiona el botón. (Sí, ¡el botón "hardware" podría estar enviando señales normales de pulsación de teclas!)

  • busque un directorio relacionado con los botones de hardware debajo /procy /sys, luego cat, el statearchivo que se encuentra debajo : puede usar algo como find /proc /sys -name "*button*"eso. El directorio podría contener alternativamente switch o algo similar. También puede usarlo find /proc /sys -name state, pero eso también imprimiría muchos directorios relacionados con otras cosas, como el controlador de disco o la tarjeta Ethernet.

rozcietrzewiacz
fuente
Esta es una información interesante. Cuando mi conexión inalámbrica "funciona" (después de un arranque en caliente de Windows), el interruptor de hardware funciona como se esperaba ... Deshabilitará y volverá a habilitar correctamente el dispositivo inalámbrico. Si hago esto con un rfkill eventproceso en ejecución, voy a conseguir que el botón se ha pulsado y puedo ver el hardy softcerraduras y en seguida se desacoplan correctamente. Cuando estoy en un 'modo de trabajo no inalámbrico' (después de un reinicio directamente en Linux) y estoy haciendo eso rfkill event, se ve el interruptor de hardware pero el hardbloqueo no se desactiva, solo el bloqueo suave lo hace.
g19fanatic
@ g19fanatic El problema de confiar en lo que rfkill eventdice es que no se puede saber a qué nivel falla el botón de hardware. rfkilles solo una pequeña herramienta útil, pero es bastante inútil para depurar tales problemas de hardware. Es por eso que sugerí métodos genéricos que pueden identificar el problema.
rozcietrzewiacz
1

Otro problema que he visto aquí es que ocasionalmente el kernel no ve los eventos (ya sea a través de errores en los controladores o problemas de hardware).

Un paso crítico en la resolución de problemas es ejecutar:

rfkill event

Y luego cambie de encendido a apagado, asegurándose de que vea una línea como esta:

1398993949.361623: idx 0 type 1 op 0 soft 0 hard 1

Cuando cambie de apagado a encendido, debería ver una línea como esta:

1398994129.694123: idx 0 type 1 op 2 soft 0 hard 0

Tenga hard 0en cuenta el al final. Si no ve esto, el núcleo no ha visto el evento.

Los interruptores, al ser partes móviles, son particularmente susceptibles a fallas y, aunque generalmente nos gusta sospechar primero del software, no siempre es así.

Puede probar que rfkill de hecho muestra los eventos mediante el uso de la combinación de teclas para deshabilitar la conexión inalámbrica y asegurarse de ver un soft 1evento y luego, cuando vuelva a habilitarlo, debería ver un soft 0evento. Si el conmutador es malo, es posible que pueda jugar con él hasta que funcione, pegarlo con cinta adhesiva en la posición de encendido, etc., o simplemente obtener un adaptador de red secundario.

Naturalmente, si no ve eventos de ninguna manera, puede ser una falla de hardware o software. Sin embargo, la última vez que vi esto, fue un interruptor de hardware con falla (pero no completamente fallido).

Chris Travers
fuente