Search Linux Wireless

[RFC][PATCH]Atheros a/b/g Frequency Support

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

 



I would like to suggest modifying the ath5k code a bit to more accurately reflect the frequencies that the hardware supports, patch is as follows:

---------------------------------------------------------------------------------------------------------------------------------------

diff -Naur wireless-testing-orig/drivers/net/wireless/ath5k/caps.c wireless-testing/drivers/net/wireless/ath5k/caps.c --- wireless-testing-orig/drivers/net/wireless/ath5k/caps.c 2008-11-22 17:28:02.000000000 -0500 +++ wireless-testing/drivers/net/wireless/ath5k/caps.c 2008-11-22 17:41:04.000000000 -0500
@@ -69,9 +69,9 @@

               if (AR5K_EEPROM_HDR_11A(ee_header)) {
                       /* 4920 */
-                       ah->ah_capabilities.cap_range.range_5ghz_min = 5005;
-                       ah->ah_capabilities.cap_range.range_5ghz_max = 6100;
-
+                       ah->ah_capabilities.cap_range.range_5ghz_min = 4800;
+ ah->ah_capabilities.cap_range.range_5ghz_max = 6000; /* 6100 is what the code said but */ + /* it fried my Ubiquiti SRC */
                       /* Set supported modes */
                       __set_bit(AR5K_MODE_11A,
                                       ah->ah_capabilities.cap_mode);
@@ -87,7 +87,7 @@
               if (AR5K_EEPROM_HDR_11B(ee_header) ||
                               AR5K_EEPROM_HDR_11G(ee_header)) {
                       /* 2312 */
-                       ah->ah_capabilities.cap_range.range_2ghz_min = 2412;
+ ah->ah_capabilities.cap_range.range_2ghz_min = 2192; /* this is the bottom of the registers */
                       ah->ah_capabilities.cap_range.range_2ghz_max = 2732;

                       if (AR5K_EEPROM_HDR_11B(ee_header))

--------------------------------------------------------------------------------------------------------------------------------------
Patch signed off by: Rick Farina

This patch modifies the top of the .11a radio DOWN from 6100 to 6000. This was done because after testing several cards with a spectrum analyzer it was found that none of the cards I could find were able to transmit on a frequency higher than 6000MHz and one of them (my Ubiquiti Super Range Cardbus) fried the pre-amp on the board (so no more transmit). Please note, the original limit was set at 6100MHz and no where that I could find is it legal to transmit on this frequency.

Additionally the patch modifies the bottom end of the .11a radio down from 5005 to 4800. Expected functionality was confirmed with several different cards against a spectrum analyzer. My current personal version of the patch allows for the card to be set down to 4000MHz but I am not submitting that number yet because I have yet to confirm it against a spectrum analyzer (hard to borrow that kind of gear for some reason). If anyone wants to test it for me I'd be glad to provide patches and assist. Please note, the original limit was set at 5005MHz and no where that I could find is it legal to transmit at this frequency.

The maximum set for the .11b/g radio was originally set at 2732, I found that this was the max at which I could set the .11b/g radio. On the opposite side, the lower boundary was moved from 2412 to 2192. At 2192 the three registers that are used to set channel are all 0, I was able to set lower frequencies and the registered wrapped around, I could not confirm functionality below 2192MHz. The original boundary seemed to be clearly set by the boundary of ieee 802.11 channels, kind of funny because the other three boundaries were clearly not set based on ieee 802.11 channels...

I would like this patch added to the kernel because it is a good first step towards establishing the fact that the driver should have the same support as the hardware and let crda/oldreg handle the legals.

For general reference, this patch won't actually permit tuning of additional channels, I will submit additional patches based on the responses from this one.

Thank you for your consideration.

-Rick Farina
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[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