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
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to