Hi, Lukas and Bob

my last post looks blank and corrupted, sorry for the junk mail..

Below shows my local patch.

Does original Atheros HAL calls the function just for 5GHz
or calls for both 2GHz and 5 GHz.?

In ath5k, ath5k_hw_write_ofdm_timings() is called when
AR_5212 and CHANNEL_OFDM are true, which means
"for both 2GHz and 5GHz".

--- reset.c_org 2009-12-17 17:01:29.000000000 +0900
+++ reset.c 2009-12-22 09:51:16.000000000 +0900
@@ -64,7 +64,14 @@
* we scale coef by shifting clock value by 24 for
* better precision since we use integers */
/* TODO: Half/quarter rate */
- clock = (channel->hw_value & CHANNEL_TURBO) ? 80 : 40;
+ if (channel->hw_value & CHANNEL_2GHZ)
+ clock = 44; /* here, we do not have to worry about CCK */
+ else
+ clock = 40;
+
+ if (channel->hw_value & CHANNEL_TURBO)
+ clock *= 2;
+
coef_scaled = ((5 * (clock << 24)) / 2) / channel->center_freq;

/* Get exponent

Takayuki Kaiso
> On 21.12.2009 11:26 wrote:
>   
>> Didn't we have to handle CHANNEL_2GHZ case in
>> ath5k_hw_write_ofdm_timings() shown below ?
>>     
> The ath5k gives exactly the same results as original Atheros HAL:
>
>   #define INIT_CLOCKMHZSCALED     0x64000000
>   unsigned long clockMhzScaled = INIT_CLOCKMHZSCALED;
>   if (IS_CHAN_TURBO(chan)) clockMhzScaled *= 2;
>   coef_scaled = clockMhzScaled / chan->channel;
>
> I don't know how the calculations work, they might be explained in the 
> referenced patent, but I didn't change their semantics at all.
>
>   
>> I think we should do. then I made my own patch to hadle it and it
>> seemed to improve the throughput of 2.4GHz. (even still not as good as
>> 5Ghz case )
>>     
> Where's the patch?
>
> Lukas Turek
>   

_______________________________________________
ath5k-devel mailing list
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to