2008/9/22 Brian Prodoehl <[EMAIL PROTECTED]>:
>> Ath5k is much slower then madwifi.  Best speed I could get with iwconfig was
>> 24Mb, Higher speeds did not respond.  Same location, same computer, same AP 
>> with
>> madwifi I get the full 54Mb with no drops.  This will be a blocker for eeepc
>> users and distros with the 2.6.27 kernels....
>
> I'm chasing down this bug as well.  I am almost certain that in my
> case it is because the txpower is not set properly.  I am seeing
> between +28dBm and +31dBm out of my cards, which is well above where
> they perform well.  The signal is definitely getting clipped, and I'm
> actually surprised that the rates up to 18Mbps work as well as they do
> given how badly its clipping.
>
> I have a patch which allows iwconfig to actually dictate the txpower
> setting used by ath5k (currently there's a disconnect, so what
> iwconfig says never actually gets picked up and used by the ath5k
> txpower routines), and it sets the AR5K_PHY_TXPOWER_RATEn registers
> the same as madwifi (comparing register dumps at runtime), but I still
> have the 1W ugly output regardless of what level I tell it.
> AR5K_PHY_TXPOWER_RATE_MAX is the same as madwifi (0x003f) and all the
> AR5K_PHY_PCDAC_TXPOWER registers are the same as madwifi (all 0's).
> But, still the ugly output, so clearly I'm missing something.  I'm
> getting back to basics with madwifi-trace, so hopefully I find the
> missing piece.
>
> Does anyone have any progress towards working transmit power control?
> If I actually get anywhere I'll post the patch.

To implement tx power support correctly we need to have information on
the calibration data from the various EEPROM versions, check out
ath_info for some work on this (more stuff on the way). Have in mind
that both AR5K_PHY_TXPOWER_RATE, TPC and tx descriptor use an index
value, not a dbm value. As far as i know they contain an index on the
baseband PCDAC_TXPOWER table. Table has 64 entries so the mask is 3f
for the index value, also 3f is the mask for half-dbm value (64/2 =
31.5dbm max) used in PCDAC_TXPOWER (that's in case you think it's the
same thing). The tricky part is to have an implementation that works
on all hw, using EEPROM information from various eeprom versions (and
some information from registers on newer chips) and calibrating
PCDAC_TXPOWER propertly.


-- 
GPG ID: 0xD21DB2DB
As you read this post global entropy rises. Have Fun ;-)
Nick
_______________________________________________
ath5k-devel mailing list
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to