Hi all,
I am trying to force the P2P-GO (or an AP for the matter) to be quiet for a
certain period of time per beacon period. By using the registers defined in
reg.h in a function in dma.c which is called every beacon transmission:
function()
{
int period 100;
int duration 50;
/* Set periodicity and duration */
ath5k_hw_reg_write(ah,
AR5K_REG_SM(period, AR5K_QUIET_CTL2_QT_PER)|
AR5K_REG_SM(duration, AR5K_QUIET_CTL2_QT_DUR),
AR5K_QUIET_CTL2) ;
/* Enable quiet period for current TSF */
ath5k_hw_reg_write(ah,
AR5K_QUIET_CTL1_QT_EN |
AR5K_REG_SM(ath5k_hw_reg_read(ah,
AR5K_TSF_L32_5211) >> 10,
AR5K_QUIET_CTL1_NEXT_QT_TSF),
AR5K_QUIET_CTL1);
return 1;
}
This way, I successfully force the AP to be quiet for half of the beacon
period, the 2nd half. But, I would like to make the AP be quiet for the 1st
half of the beacon period while transmitting the rest of time.
In the previous example I am setting the startQuietTime to the current TSF.
As I understand this, " ath5k_hw_reg_read(ah, AR5K_TSF_L32_5211) >> 10 "
would provide the current TSF in TU. But even though I add some time there
(lets say ath5k_hw_reg_read(ah, AR5K_TSF_L32_5211)+51200 >> 10 ), the
behavior is exaclty the same. Has anyone worked with such a registers and
could give some hints?
Thanks in advance,
Andrés
_______________________________________________
ath5k-devel mailing list
[email protected]
https://lists.ath5k.org/mailman/listinfo/ath5k-devel