iwlwifi: pcie: clarify RX queue need_update handling and locking
authorJohannes Berg <johannes.berg@intel.com>
Thu, 27 Feb 2014 10:20:07 +0000 (11:20 +0100)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 13 Apr 2014 06:35:52 +0000 (09:35 +0300)
commit5d63f926d119ff2394514ade4d489566a575f897
tree60822d7203e4e6f8697c80f9a321036ccc10e9ad
parentf14d6b39c0b3519f8148e1371d2149c148893b61
iwlwifi: pcie: clarify RX queue need_update handling and locking

When shadow registers are enabled, then need_update never needs
to be set, so move the need_update handling into the function
that really needs to do it (iwl_pcie_rxq_inc_wr_ptr) and also
separate the check when it woke up. While at it, convert it to
bool.

This also clarifies the locking and means the irq_lock needs to
no longer be held for any such updates.

The irq_lock also doesn't have to be held for restocking since
everything else locks the RX queue properly, so remove that and
finally disentangle the two locks entirely so there aren't any
dependencies between the two left.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/iwlwifi/pcie/internal.h
drivers/net/wireless/iwlwifi/pcie/rx.c