Search Linux Wireless

[rt2800pci] Problems with (and without) rfkill

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I've had a play with the rt2x00 tree (11c3222a) and hit some problems on my
EeePC 901.

First, I was seeing "SIOCSIFFLAGS: unknown error 132" (which turns out to be
ERFKILL) when trying to bring up the interface. "rfkill list" shows that phy0
is hard-blocked¹; since there's no switch for this, the only way to "unblock"
it is to patch the driver. I used the following patch for this².

diff --git a/drivers/net/wireless/rt2x00/rt2800pci.c b/drivers/net/wireless/rt2x
index 8a22e65..f934325 100644
--- a/drivers/net/wireless/rt2x00/rt2800pci.c
+++ b/drivers/net/wireless/rt2x00/rt2800pci.c
@@ -380,7 +380,12 @@ static int rt2800pci_rfkill_poll(struct rt2x00_dev *rt2x00d
        u32 reg;
 
        rt2x00pci_register_read(rt2x00dev, GPIO_CTRL_CFG, &reg);
-       return rt2x00_get_field32(reg, GPIO_CTRL_CFG_BIT2);
+       /*return rt2x00_get_field32(reg, GPIO_CTRL_CFG_BIT2);*/
+       if (rt2x00_get_field32(reg, GPIO_CTRL_CFG_BIT2)) {
+               rt2x00_set_field32(&reg, GPIO_CTRL_CFG_BIT2, 0);
+               rt2x00pci_register_write(rt2x00dev, GPIO_CTRL_CFG, reg);
+       }
+       return 0;       
 }
 
 #ifdef CONFIG_RT2X00_LIB_LEDS

However, this isn't the end of the problems: I get an oops instead while
trying to bring up the interface (configured via /etc/network/interfaces and
using WPA2; the configuration is known good for rt2860sta).


¹ phy0 is only present when eeepc-wlan is not blocked, which isn't surprising
  because the card is effectively unplugged when eeepc-wlan is blocked.

² I also tried just having rt2800pci_rfkill_poll() just return 0, but that
  makes no difference.

-- 
| Darren Salt            | linux at youmustbejoking | nr. Ashington, | Doon
| using Debian GNU/Linux | or ds    ,demon,co,uk    | Northumberland | Army
| + Burn less waste. Use less packaging. Waste less.     USE FEWER RESOURCES.

Sir Bobby Robson, R. I. P.

Attachment: 2800pci.oops
Description: Binary data


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux