aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-core.c
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2011-08-26 02:10:48 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-29 15:25:32 -0400
commite6bb4c9c00892c488f3218ea317dc6a71674faf4 (patch)
tree3afe043aee2c5e73978259393b8242baf2acd886 /drivers/net/wireless/iwlwifi/iwl-core.c
parentf39c95e8d7a152b409977687a999356f0e54bde6 (diff)
iwlagn: bus layer chooses its transport layer
Remove iwl_transport_register which was a W/A. The bus layer knows what transport to use. So now, the bus layer gives the upper layer a pointer to the iwl_trans_ops struct that it wants to use. The upper layer then, allocates the desired transport layer using iwl_trans_ops->alloc function. As a result of this, priv->trans, no longer exists, priv holds a pointer to iwl_shared, which holds a pointer to iwl_trans. This required to change all the calls to the transport layer from upper layer. While we were at it, trans_X inlines have been renamed to iwl_trans_X to avoid confusions, which of course required to rename the functions inside the transport layer because of conflicts in names. So the static API functions inside the transport layer implementation have been renamed to iwl_trans_pcie_X. Until now, the IRQ / Tasklet were initialized in iwl_transport_layer. This is confusing since the registration doesn't mean to request IRQ, so I added a handler for that. 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>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-core.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index 9857136627f3..b5e99a66613e 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -378,7 +378,7 @@ int iwl_send_rxon_timing(struct iwl_priv *priv, struct iwl_rxon_context *ctx)
378 le32_to_cpu(ctx->timing.beacon_init_val), 378 le32_to_cpu(ctx->timing.beacon_init_val),
379 le16_to_cpu(ctx->timing.atim_window)); 379 le16_to_cpu(ctx->timing.atim_window));
380 380
381 return trans_send_cmd_pdu(&priv->trans, ctx->rxon_timing_cmd, 381 return iwl_trans_send_cmd_pdu(trans(priv), ctx->rxon_timing_cmd,
382 CMD_SYNC, sizeof(ctx->timing), &ctx->timing); 382 CMD_SYNC, sizeof(ctx->timing), &ctx->timing);
383} 383}
384 384
@@ -1135,7 +1135,7 @@ void iwl_send_bt_config(struct iwl_priv *priv)
1135 IWL_DEBUG_INFO(priv, "BT coex %s\n", 1135 IWL_DEBUG_INFO(priv, "BT coex %s\n",
1136 (bt_cmd.flags == BT_COEX_DISABLE) ? "disable" : "active"); 1136 (bt_cmd.flags == BT_COEX_DISABLE) ? "disable" : "active");
1137 1137
1138 if (trans_send_cmd_pdu(&priv->trans, REPLY_BT_CONFIG, 1138 if (iwl_trans_send_cmd_pdu(trans(priv), REPLY_BT_CONFIG,
1139 CMD_SYNC, sizeof(struct iwl_bt_cmd), &bt_cmd)) 1139 CMD_SYNC, sizeof(struct iwl_bt_cmd), &bt_cmd))
1140 IWL_ERR(priv, "failed to send BT Coex Config\n"); 1140 IWL_ERR(priv, "failed to send BT Coex Config\n");
1141} 1141}
@@ -1148,12 +1148,12 @@ int iwl_send_statistics_request(struct iwl_priv *priv, u8 flags, bool clear)
1148 }; 1148 };
1149 1149
1150 if (flags & CMD_ASYNC) 1150 if (flags & CMD_ASYNC)
1151 return trans_send_cmd_pdu(&priv->trans, REPLY_STATISTICS_CMD, 1151 return iwl_trans_send_cmd_pdu(trans(priv), REPLY_STATISTICS_CMD,
1152 CMD_ASYNC, 1152 CMD_ASYNC,
1153 sizeof(struct iwl_statistics_cmd), 1153 sizeof(struct iwl_statistics_cmd),
1154 &statistics_cmd); 1154 &statistics_cmd);
1155 else 1155 else
1156 return trans_send_cmd_pdu(&priv->trans, REPLY_STATISTICS_CMD, 1156 return iwl_trans_send_cmd_pdu(trans(priv), REPLY_STATISTICS_CMD,
1157 CMD_SYNC, 1157 CMD_SYNC,
1158 sizeof(struct iwl_statistics_cmd), 1158 sizeof(struct iwl_statistics_cmd),
1159 &statistics_cmd); 1159 &statistics_cmd);