aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2011-08-26 02:11:05 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-29 15:25:35 -0400
commit790428b6552c698b2f295457b5dee686323cb732 (patch)
tree7e1ee855b7f463611ed059d8c570443fa987cb67
parent845a9c0d8acea87dede740bc5feb9ec2d00505d9 (diff)
iwlagn: move iwl_free_pages to iwl-shared.h
This helper is used by the transport and the upper layer. Kill __iwl_free_pages which was used in the transport only. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-dev.h9
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-scan.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-shared.h5
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-sta.c4
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans.c3
6 files changed, 11 insertions, 14 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index ab9816aeb40a..eac25c507d30 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -1505,13 +1505,4 @@ static inline int is_channel_ibss(const struct iwl_channel_info *ch)
1505 return ((ch->flags & EEPROM_CHANNEL_IBSS)) ? 1 : 0; 1505 return ((ch->flags & EEPROM_CHANNEL_IBSS)) ? 1 : 0;
1506} 1506}
1507 1507
1508static inline void __iwl_free_pages(struct iwl_priv *priv, struct page *page)
1509{
1510 __free_pages(page, hw_params(priv).rx_page_order);
1511}
1512
1513static inline void iwl_free_pages(struct iwl_priv *priv, unsigned long page)
1514{
1515 free_pages(page, hw_params(priv).rx_page_order);
1516}
1517#endif /* __iwl_dev_h__ */ 1508#endif /* __iwl_dev_h__ */
diff --git a/drivers/net/wireless/iwlwifi/iwl-scan.c b/drivers/net/wireless/iwlwifi/iwl-scan.c
index 2bb94f7351c9..fc5af3475392 100644
--- a/drivers/net/wireless/iwlwifi/iwl-scan.c
+++ b/drivers/net/wireless/iwlwifi/iwl-scan.c
@@ -91,7 +91,7 @@ static int iwl_send_scan_abort(struct iwl_priv *priv)
91 ret = -EIO; 91 ret = -EIO;
92 } 92 }
93 93
94 iwl_free_pages(priv, cmd.reply_page); 94 iwl_free_pages(priv->shrd, cmd.reply_page);
95 return ret; 95 return ret;
96} 96}
97 97
diff --git a/drivers/net/wireless/iwlwifi/iwl-shared.h b/drivers/net/wireless/iwlwifi/iwl-shared.h
index ff4c04fee429..1229eb3c098c 100644
--- a/drivers/net/wireless/iwlwifi/iwl-shared.h
+++ b/drivers/net/wireless/iwlwifi/iwl-shared.h
@@ -229,6 +229,11 @@ static inline u32 iwl_get_debug_level(struct iwl_shared *shrd)
229} 229}
230#endif 230#endif
231 231
232static inline void iwl_free_pages(struct iwl_shared *shrd, unsigned long page)
233{
234 free_pages(page, shrd->hw_params.rx_page_order);
235}
236
232struct iwl_rx_mem_buffer { 237struct iwl_rx_mem_buffer {
233 dma_addr_t page_dma; 238 dma_addr_t page_dma;
234 struct page *page; 239 struct page *page;
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.c b/drivers/net/wireless/iwlwifi/iwl-sta.c
index 1154e4843087..26b2bd4db6b4 100644
--- a/drivers/net/wireless/iwlwifi/iwl-sta.c
+++ b/drivers/net/wireless/iwlwifi/iwl-sta.c
@@ -177,7 +177,7 @@ int iwl_send_add_sta(struct iwl_priv *priv,
177 pkt = (struct iwl_rx_packet *)cmd.reply_page; 177 pkt = (struct iwl_rx_packet *)cmd.reply_page;
178 ret = iwl_process_add_sta_resp(priv, sta, pkt, true); 178 ret = iwl_process_add_sta_resp(priv, sta, pkt, true);
179 } 179 }
180 iwl_free_pages(priv, cmd.reply_page); 180 iwl_free_pages(priv->shrd, cmd.reply_page);
181 181
182 return ret; 182 return ret;
183} 183}
@@ -455,7 +455,7 @@ static int iwl_send_remove_station(struct iwl_priv *priv,
455 break; 455 break;
456 } 456 }
457 } 457 }
458 iwl_free_pages(priv, cmd.reply_page); 458 iwl_free_pages(priv->shrd, cmd.reply_page);
459 459
460 return ret; 460 return ret;
461} 461}
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c b/drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c
index ac2fae12707a..ed497247f97e 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c
@@ -1023,7 +1023,7 @@ cancel:
1023 } 1023 }
1024fail: 1024fail:
1025 if (cmd->reply_page) { 1025 if (cmd->reply_page) {
1026 iwl_free_pages(priv, cmd->reply_page); 1026 iwl_free_pages(priv->shrd, cmd->reply_page);
1027 cmd->reply_page = 0; 1027 cmd->reply_page = 0;
1028 } 1028 }
1029 1029
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans.c b/drivers/net/wireless/iwlwifi/iwl-trans.c
index b080e69374ea..89560089a348 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans.c
+++ b/drivers/net/wireless/iwlwifi/iwl-trans.c
@@ -129,7 +129,8 @@ static void iwl_trans_rxq_free_rx_bufs(struct iwl_trans *trans)
129 dma_unmap_page(bus(trans)->dev, rxq->pool[i].page_dma, 129 dma_unmap_page(bus(trans)->dev, rxq->pool[i].page_dma,
130 PAGE_SIZE << hw_params(trans).rx_page_order, 130 PAGE_SIZE << hw_params(trans).rx_page_order,
131 DMA_FROM_DEVICE); 131 DMA_FROM_DEVICE);
132 __iwl_free_pages(priv(trans), rxq->pool[i].page); 132 __free_pages(rxq->pool[i].page,
133 hw_params(trans).rx_page_order);
133 rxq->pool[i].page = NULL; 134 rxq->pool[i].page = NULL;
134 } 135 }
135 list_add_tail(&rxq->pool[i].list, &rxq->rx_used); 136 list_add_tail(&rxq->pool[i].list, &rxq->rx_used);