All of lore.kernel.org
 help / color / mirror / Atom feed
* force AR5212 to sleep
@ 2011-11-14 10:42 Andrés García Saavedra
  2011-11-14 16:01 ` Adrian Chadd
  2011-11-14 22:23 ` [ath5k-devel] " Pavel Roskin
  0 siblings, 2 replies; 4+ messages in thread
From: Andrés García Saavedra @ 2011-11-14 10:42 UTC (permalink / raw)
  To: linux-wireless, ath5k-devel

Hi all,

I am testing some custom algorithms for powersaving using
mac80211/ath5k. I am using  Dlink DWL-AG660 PCMCIA cards for my
experiments. For these algorithms I am notifying sleep/awake events
from mac80211 down to the driver whenever I want to. For the case of
ath5k I followed that code madwifi was using to force the chipset to
sleep (full sleep mode), find the piece of code below:

The problem is, the card (and the laptop) totally freezes whenever
this is done. According to
http://madwifi-project.org/wiki/Compatibility/D-Link this card uses a
AR5212, and madwifi driver does use this piece of code to force the
chip to sleep (in that case when resetting or stopping an interface).

Undoubtedly, I am missing something I should take care of. I'd
appreciate any "clue" you could give me.


/**** CODE *****/

    struct ath5k_softc *sc = hw->priv;
    struct ath5k_hw *ah = sc->ah;
    unsigned int i;
    u32 staid, data;

    staid = ath5k_hw_reg_read(ah, AR5K_STA_ID1);

    ath5k_hw_reg_write(ah, AR5K_SLEEP_CTL_SLE_ALLOW, AR5K_SLEEP_CTL);

    staid |= AR5K_STA_ID1_PWR_SV;

    ath5k_hw_reg_write(ah, staid, AR5K_STA_ID1);

/**** CODE *****/


Thanks in advance,
Andrés

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-11-14 23:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-14 10:42 force AR5212 to sleep Andrés García Saavedra
2011-11-14 16:01 ` Adrian Chadd
2011-11-14 22:23 ` [ath5k-devel] " Pavel Roskin
2011-11-14 23:13   ` Nick Kossifidis

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.