2012-06-19 08:07:00

by Matt Chen

[permalink] [raw]
Subject: Atheros [168c 0034] can't enable wireless button LED.

Hi experts,

I tested the latest kernel v3.5-rc3 ath9k for the Atheros [168c 0034],
code name is Miami. I found no matter how I press the wifi button to
enable/disable the wifi, it doesn't work to me.
Even I found the rfkill status for this interface is not changing.

--
Thank you.


2012-06-20 10:17:55

by Matt Chen

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Mohammed,

2012/6/20 Mohammed Shafi <[email protected]>:
> Hi Matt,
>
>
>>> I do
>>> 1) echo 0x402c > regidx
>>> ? ? watch -n 1 regval
>>> 2) echo 0x404c > regidx
>>> ? ?watch -n1 regval
>>>> i remember testing it in a acer laptop, it was working.
>>> Both 1) and 2) shows no different in their value no matter how I press
>>> the wifi button. :(
>
> if hardrfkill is enabled it should toggle. you are using it as ?in a
> built card right ?
> if GPIO11 is not connected to Vcc or ground it would not toggle.
> need to check it out its a regression.
>
>> I found it is not enabling the
>> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll(struct
>> ath_softc *sc).
>> The condition for (ah->caps.hw_caps & ATH9K_HW_CAP_RFSILENT) is failed.
>> Any direction I can dig further ? :)
>
> can you please try this if you can see anything
>
> diff --git a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
> b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
> index 51398f0..d732044 100644
> --- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
> +++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
> @@ -3002,7 +3002,14 @@ static u32 ath9k_hw_ar9300_get_eeprom(struct ath_hw *ah,
> ? ? ? ? ?case EEP_OP_MODE:
> ? ? ? ? ? ? ? ? ?return pBase->opCapFlags.opFlags;
> ? ? ? ? ?case EEP_RF_SILENT:
> - ? ? ? ? ? ? ? return pBase->rfSilent;
> +// ? ? ? ? ? ? return pBase->rfSilent;
> + ? ? ? ? ? ? ? return 0x2f;
> + ? ? ? ? ? ? ? /* bit 0 rfkill_enable - 1
> + ? ? ? ? ? ? ? ?* bit 1 ?rfkill_polarity - 1
> + ? ? ? ? ? ? ? ?* bit 2,3,4,5 gpio pin select - 1011
> + ? ? ? ? ? ? ? ?* so 1011 11
> + ? ? ? ? ? ? ? ?* ?0x2f
> + ? ? ? ? ? ? ? ?*/
> ? ? ? ? ?case EEP_TX_MASK:
>
> please try with returning 0x2d (polarity 0 )
Both 0x2f and 0x2d can work fine to me of enabling
wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll().

> think i was testing this i got
>
> "in my pci extender i always the got value of '0x6ed' for the 'reg
> 0x404c' and when i used the card as a inbuilt one i got '0xeed' and
> '0x6ed'(when i toggle rfkill in the acer laptop)."
> pls let me know if its still not working, i can check with again the
> inbuilt stuff
1) with 0x2f
0x404c address would change when press wifi button
rfkill block : yes -> 0x00000455
rfkill block : no -> 0x00000c55
2) with 0x2d
0x404c address would change when press wifi button
rfkill block : yes -> 0x00000455
rfkill block : no -> 0x00000c55


But I don't see the LED is changing, it is staying OFF (Amber).
>>>>>
>>>>> --
>>>>> Thank you.
>>>>> --
>>>>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>>>>> the body of a message to [email protected]
>>>>> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>>>>
>>>>
>>>>
>>>> --
>>>> thanks,
>>>> shafi
>>>>
>>>
>>>
>>>
>>> --
>>> Thank you.
>>
>>
>>
>> --
>> Thank you.
>
>
>
> --
> thanks,
> shafi
>



--
Thank you.

2012-06-22 09:15:43

by Matt Chen

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Mohammed,

2012/6/20 Mohammed Shafi <[email protected]>:
> Hi Matt,
>
>> Both 0x2f and 0x2d can work fine to me of enabling
>> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll().
>>
>> 1) with 0x2f
>> ? 0x404c address would change when press wifi button
>> ? rfkill block : yes -> 0x00000455
>> ? rfkill block : no ? -> 0x00000c55
>> 2) with 0x2d
>> ? 0x404c address would change when press wifi button
>> ? rfkill block : yes -> 0x00000455
>> ? rfkill block : no ? -> 0x00000c55
>>
>>
>> But I don't see the LED is changing, it is staying OFF (Amber).
>
> not sure about that, but i think rfkill is working for both of us
> i told 0xeed changes to 0x6ed for me
>
> you got 0x455 changes to 0xc55
>
> BIT 12(GPIO pin 11 seems to toggle ?4 ->C), you can confirm by rfkill list
Would it be the patch to fix it ? or it is just a workaround to prove
the rfkill_poll can be enabled ?
> --
> thanks,
> shafi
>



--
Thank you.

2012-06-20 09:39:09

by Mohammed Shafi

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Matt,


>> I do
>> 1) echo 0x402c > regidx
>> ? ? watch -n 1 regval
>> 2) echo 0x404c > regidx
>> ? ?watch -n1 regval
>>> i remember testing it in a acer laptop, it was working.
>> Both 1) and 2) shows no different in their value no matter how I press
>> the wifi button. :(

if hardrfkill is enabled it should toggle. you are using it as in a
built card right ?
if GPIO11 is not connected to Vcc or ground it would not toggle.
need to check it out its a regression.

> I found it is not enabling the
> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll(struct
> ath_softc *sc).
> The condition for (ah->caps.hw_caps & ATH9K_HW_CAP_RFSILENT) is failed.
> Any direction I can dig further ? :)

can you please try this if you can see anything

diff --git a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
index 51398f0..d732044 100644
--- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
+++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
@@ -3002,7 +3002,14 @@ static u32 ath9k_hw_ar9300_get_eeprom(struct ath_hw *ah,
case EEP_OP_MODE:
return pBase->opCapFlags.opFlags;
case EEP_RF_SILENT:
- return pBase->rfSilent;
+// return pBase->rfSilent;
+ return 0x2f;
+ /* bit 0 rfkill_enable - 1
+ * bit 1 rfkill_polarity - 1
+ * bit 2,3,4,5 gpio pin select - 1011
+ * so 1011 11
+ * 0x2f
+ */
case EEP_TX_MASK:

please try with returning 0x2d (polarity 0 )

think i was testing this i got

"in my pci extender i always the got value of '0x6ed' for the 'reg
0x404c' and when i used the card as a inbuilt one i got '0xeed' and
'0x6ed'(when i toggle rfkill in the acer laptop)."
pls let me know if its still not working, i can check with again the
inbuilt stuff

>>>>
>>>> --
>>>> Thank you.
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>>>> the body of a message to [email protected]
>>>> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>>>
>>>
>>>
>>> --
>>> thanks,
>>> shafi
>>>
>>
>>
>>
>> --
>> Thank you.
>
>
>
> --
> Thank you.



--
thanks,
shafi

2012-06-19 09:36:52

by Mohammed Shafi

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Matt,

> I tested the latest kernel v3.5-rc3 ath9k for the Atheros [168c 0034],
> code name is Miami. I found no matter how I press the wifi button to
> enable/disable the wifi, it doesn't work to me.
> Even I found the rfkill status for this interface is not changing.

its a AR9462please poke at the register #define AR_GPIO_IN -> 0x402c : 0x404c)
i remember testing it in a acer laptop, it was working.

>
> --
> Thank you.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html



--
thanks,
shafi

2012-06-20 08:53:53

by Matt Chen

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Mohammed,

2012/6/20 Matt Chen <[email protected]>:
> Hi Mohammed,
>
> 2012/6/19 Mohammed Shafi <[email protected]>:
>> Hi Matt,
>>
>>> I tested the latest kernel v3.5-rc3 ath9k for the Atheros [168c 0034],
>>> code name is Miami. I found no matter how I press the wifi button to
>>> enable/disable the wifi, it doesn't work to me.
>>> Even I found the rfkill status for this interface is not changing.
>>
>> its a AR9462please poke at the register ?#define AR_GPIO_IN ?-> 0x402c : 0x404c)
> I do
> 1) echo 0x402c > regidx
> ? ? watch -n 1 regval
> 2) echo 0x404c > regidx
> ? ?watch -n1 regval
>> i remember testing it in a acer laptop, it was working.
> Both 1) and 2) shows no different in their value no matter how I press
> the wifi button. :(
I found it is not enabling the
wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll(struct
ath_softc *sc).
The condition for (ah->caps.hw_caps & ATH9K_HW_CAP_RFSILENT) is failed.
Any direction I can dig further ? :)
>>>
>>> --
>>> Thank you.
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>>> the body of a message to [email protected]
>>> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>>
>>
>>
>> --
>> thanks,
>> shafi
>>
>
>
>
> --
> Thank you.



--
Thank you.

2012-06-25 02:05:18

by Matt Chen

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Mohammed,

2012/6/23 Mohammed Shafi <[email protected]>:
> On Fri, Jun 22, 2012 at 2:45 PM, Matt Chen <[email protected]> wrote:
>> Hi Mohammed,
>>
>> 2012/6/20 Mohammed Shafi <[email protected]>:
>>> Hi Matt,
>>>
>>>> Both 0x2f and 0x2d can work fine to me of enabling
>>>> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll().
>>>>
>>>> 1) with 0x2f
>>>> ? 0x404c address would change when press wifi button
>>>> ? rfkill block : yes -> 0x00000455
>>>> ? rfkill block : no ? -> 0x00000c55
>>>> 2) with 0x2d
>>>> ? 0x404c address would change when press wifi button
>>>> ? rfkill block : yes -> 0x00000455
>>>> ? rfkill block : no ? -> 0x00000c55
>>>>
>>>>
>>>> But I don't see the LED is changing, it is staying OFF (Amber).
>>>
>>> not sure about that, but i think rfkill is working for both of us
>>> i told 0xeed changes to 0x6ed for me
>>>
>>> you got 0x455 changes to 0xc55
>>>
>>> BIT 12(GPIO pin 11 seems to toggle ?4 ->C), you can confirm by rfkill list
>> Would it be the patch to fix it ? or it is just a workaround to prove
>> the rfkill_poll can be enabled ?
>
> ideally, this should have been properly hard coded in the EEPROM stuff itself.
> i think you got a very brand new AR9462 just when it came to the market :)
> its a kind of workaround only.
Is there anything I can do help to enable this? ;) Not a workaround.
> --
> thanks,
> shafi
>



--
Thank you.

2012-06-20 03:24:13

by Matt Chen

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Mohammed,

2012/6/19 Mohammed Shafi <[email protected]>:
> Hi Matt,
>
>> I tested the latest kernel v3.5-rc3 ath9k for the Atheros [168c 0034],
>> code name is Miami. I found no matter how I press the wifi button to
>> enable/disable the wifi, it doesn't work to me.
>> Even I found the rfkill status for this interface is not changing.
>
> its a AR9462please poke at the register ?#define AR_GPIO_IN ?-> 0x402c : 0x404c)
I do
1) echo 0x402c > regidx
watch -n 1 regval
2) echo 0x404c > regidx
watch -n1 regval
> i remember testing it in a acer laptop, it was working.
Both 1) and 2) shows no different in their value no matter how I press
the wifi button. :(

>>
>> --
>> Thank you.
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> the body of a message to [email protected]
>> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>
>
>
> --
> thanks,
> shafi
>



--
Thank you.

2012-06-20 10:29:32

by Mohammed Shafi

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

Hi Matt,

> Both 0x2f and 0x2d can work fine to me of enabling
> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll().
>
> 1) with 0x2f
> ? 0x404c address would change when press wifi button
> ? rfkill block : yes -> 0x00000455
> ? rfkill block : no ? -> 0x00000c55
> 2) with 0x2d
> ? 0x404c address would change when press wifi button
> ? rfkill block : yes -> 0x00000455
> ? rfkill block : no ? -> 0x00000c55
>
>
> But I don't see the LED is changing, it is staying OFF (Amber).

not sure about that, but i think rfkill is working for both of us
i told 0xeed changes to 0x6ed for me

you got 0x455 changes to 0xc55

BIT 12(GPIO pin 11 seems to toggle 4 ->C), you can confirm by rfkill list

--
thanks,
shafi

2012-06-23 10:42:13

by Mohammed Shafi

[permalink] [raw]
Subject: Re: Atheros [168c 0034] can't enable wireless button LED.

On Fri, Jun 22, 2012 at 2:45 PM, Matt Chen <[email protected]> wrote:
> Hi Mohammed,
>
> 2012/6/20 Mohammed Shafi <[email protected]>:
>> Hi Matt,
>>
>>> Both 0x2f and 0x2d can work fine to me of enabling
>>> wiphy_rfkill_start_polling() in gpio.c:ath_start_rfkill_poll().
>>>
>>> 1) with 0x2f
>>> ? 0x404c address would change when press wifi button
>>> ? rfkill block : yes -> 0x00000455
>>> ? rfkill block : no ? -> 0x00000c55
>>> 2) with 0x2d
>>> ? 0x404c address would change when press wifi button
>>> ? rfkill block : yes -> 0x00000455
>>> ? rfkill block : no ? -> 0x00000c55
>>>
>>>
>>> But I don't see the LED is changing, it is staying OFF (Amber).
>>
>> not sure about that, but i think rfkill is working for both of us
>> i told 0xeed changes to 0x6ed for me
>>
>> you got 0x455 changes to 0xc55
>>
>> BIT 12(GPIO pin 11 seems to toggle ?4 ->C), you can confirm by rfkill list
> Would it be the patch to fix it ? or it is just a workaround to prove
> the rfkill_poll can be enabled ?

ideally, this should have been properly hard coded in the EEPROM stuff itself.
i think you got a very brand new AR9462 just when it came to the market :)
its a kind of workaround only.

--
thanks,
shafi