Skip to content

Commit

Permalink
iwlagn: Enable PCI L1 ACTIVE state after uCode has been loaded
Browse files Browse the repository at this point in the history
PCI L1 Active needs to be disabled while loading the uCode so that the bus
doesn't go to sleep. The enablement of L1 Active should be done after
the uCode has sent the ALIVE response. The enablement of L1 Active was
missing.
Enabling L1 Active allows to save power if the BIOS / bus driver allows
it.

I measured the power consumption while not associated and
idle/associated:
L1 Active disabled: 39 mA = 130mW
L1 Active enabled:   6 mA = 20 mW

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
  • Loading branch information
Grumbach, Emmanuel authored and Wey-Yi Guy committed Dec 2, 2010
1 parent 40b97c2 commit e7cad69
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions drivers/net/wireless/iwlwifi/iwl-agn-ucode.c
Original file line number Diff line number Diff line change
Expand Up @@ -531,6 +531,10 @@ int iwlagn_alive_notify(struct iwl_priv *priv)

spin_unlock_irqrestore(&priv->lock, flags);

/* Enable L1-Active */
iwl_clear_bits_prph(priv, APMG_PCIDEV_STT_REG,
APMG_PCIDEV_STT_VAL_L1_ACT_DIS);

iwlagn_send_wimax_coex(priv);

iwlagn_set_Xtal_calib(priv);
Expand Down

0 comments on commit e7cad69

Please sign in to comment.