ath6kl: use ath6kl prefix in credit functions
[cascardo/linux.git] / drivers / net / wireless / ath / ath6kl / htc.c
index a8dc5c3..b861fa1 100644 (file)
  */
 
 #include "core.h"
-#include "htc_hif.h"
+#include "hif.h"
 #include "debug.h"
 #include "hif-ops.h"
 #include <asm/unaligned.h>
 
 #define CALC_TXRX_PADDED_LEN(dev, len)  (__ALIGN_MASK((len), (dev)->block_mask))
 
-static void htc_prep_send_pkt(struct htc_packet *packet, u8 flags, int ctrl0,
-                             int ctrl1)
+static void ath6kl_htc_tx_buf_align(u8 **buf, unsigned long len)
+{
+       u8 *align_addr;
+
+       if (!IS_ALIGNED((unsigned long) *buf, 4)) {
+               align_addr = PTR_ALIGN(*buf - 4, 4);
+               memmove(align_addr, *buf, len);
+               *buf = align_addr;
+       }
+}
+
+static void ath6kl_htc_tx_prep_pkt(struct htc_packet *packet, u8 flags,
+                                  int ctrl0, int ctrl1)
 {
        struct htc_frame_hdr *hdr;
 
@@ -91,10 +102,10 @@ static void htc_tx_comp_update(struct htc_target *target,
                                packet->info.tx.cred_used;
        endpoint->cred_dist.txq_depth = get_queue_depth(&endpoint->txq);
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "ctxt:0x%p dist:0x%p\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc tx ctxt 0x%p dist 0x%p\n",
                   target->cred_dist_cntxt, &target->cred_dist_list);
 
-       ath6k_credit_distribute(target->cred_dist_cntxt,
+       ath6kl_credit_distribute(target->cred_dist_cntxt,
                                &target->cred_dist_list,
                                HTC_CREDIT_DIST_SEND_COMPLETE);
 
@@ -107,8 +118,8 @@ static void htc_tx_complete(struct htc_endpoint *endpoint,
        if (list_empty(txq))
                return;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                  "send complete ep %d, (%d pkts)\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc tx complete ep %d pkts %d\n",
                   endpoint->eid, get_queue_depth(txq));
 
        ath6kl_tx_complete(endpoint->target->dev->ar, txq);
@@ -137,8 +148,8 @@ static void htc_async_tx_scat_complete(struct htc_target *target,
 
        INIT_LIST_HEAD(&tx_compq);
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-               "htc_async_tx_scat_complete  total len: %d  entries: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+               "htc tx scat complete len %d entries %d\n",
                scat_req->len, scat_req->scat_entries);
 
        if (scat_req->status)
@@ -167,7 +178,8 @@ static void htc_async_tx_scat_complete(struct htc_target *target,
        htc_tx_complete(endpoint, &tx_compq);
 }
 
-static int htc_issue_send(struct htc_target *target, struct htc_packet *packet)
+static int ath6kl_htc_tx_issue(struct htc_target *target,
+                              struct htc_packet *packet)
 {
        int status;
        bool sync = false;
@@ -178,16 +190,13 @@ static int htc_issue_send(struct htc_target *target, struct htc_packet *packet)
 
        send_len = packet->act_len + HTC_HDR_LENGTH;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "%s: transmit len : %d (%s)\n",
-                  __func__, send_len, sync ? "sync" : "async");
-
        padded_len = CALC_TXRX_PADDED_LEN(target, send_len);
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-               "DevSendPacket, padded len: %d mbox:0x%X (mode:%s)\n",
-               padded_len,
-               target->dev->ar->mbox_info.htc_addr,
-               sync ? "sync" : "async");
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc tx issue len %d padded_len %d mbox 0x%X %s\n",
+                  send_len, padded_len,
+                  target->dev->ar->mbox_info.htc_addr,
+                  sync ? "sync" : "async");
 
        if (sync) {
                status = hif_read_write_sync(target->dev->ar,
@@ -196,7 +205,7 @@ static int htc_issue_send(struct htc_target *target, struct htc_packet *packet)
                                 HIF_WR_SYNC_BLOCK_INC);
 
                packet->status = status;
-                packet->buf += HTC_HDR_LENGTH;
+               packet->buf += HTC_HDR_LENGTH;
        } else
                status = hif_write_async(target->dev->ar,
                                target->dev->ar->mbox_info.htc_addr,
@@ -215,7 +224,7 @@ static int htc_check_credits(struct htc_target *target,
        *req_cred = (len > target->tgt_cred_sz) ?
                     DIV_ROUND_UP(len, target->tgt_cred_sz) : 1;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "creds required:%d got:%d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc creds required %d got %d\n",
                   *req_cred, ep->cred_dist.credits);
 
        if (ep->cred_dist.credits < *req_cred) {
@@ -225,16 +234,16 @@ static int htc_check_credits(struct htc_target *target,
                /* Seek more credits */
                ep->cred_dist.seek_cred = *req_cred - ep->cred_dist.credits;
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "ctxt:0x%p dist:0x%p\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC, "htc creds ctxt 0x%p dist 0x%p\n",
                           target->cred_dist_cntxt, &ep->cred_dist);
 
-               ath6k_seek_credits(target->cred_dist_cntxt, &ep->cred_dist);
+               ath6kl_seek_credits(target->cred_dist_cntxt, &ep->cred_dist);
 
                ep->cred_dist.seek_cred = 0;
 
                if (ep->cred_dist.credits < *req_cred) {
-                       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                                  "not enough credits for ep %d - leaving packet in queue\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                                  "htc creds not enough credits for ep %d\n",
                                   eid);
                        return -EINVAL;
                }
@@ -248,26 +257,26 @@ static int htc_check_credits(struct htc_target *target,
                ep->cred_dist.seek_cred =
                ep->cred_dist.cred_per_msg - ep->cred_dist.credits;
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "ctxt:0x%p dist:0x%p\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC, "htc creds ctxt 0x%p dist 0x%p\n",
                           target->cred_dist_cntxt, &ep->cred_dist);
 
-               ath6k_seek_credits(target->cred_dist_cntxt, &ep->cred_dist);
+               ath6kl_seek_credits(target->cred_dist_cntxt, &ep->cred_dist);
 
                /* see if we were successful in getting more */
                if (ep->cred_dist.credits < ep->cred_dist.cred_per_msg) {
                        /* tell the target we need credits ASAP! */
                        *flags |= HTC_FLAGS_NEED_CREDIT_UPDATE;
                        ep->ep_st.cred_low_indicate += 1;
-                       ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "host needs credits\n");
+                       ath6kl_dbg(ATH6KL_DBG_HTC, "htc creds host needs credits\n");
                }
        }
 
        return 0;
 }
 
-static void htc_tx_pkts_get(struct htc_target *target,
-                           struct htc_endpoint *endpoint,
-                           struct list_head *queue)
+static void ath6kl_htc_tx_pkts_get(struct htc_target *target,
+                                  struct htc_endpoint *endpoint,
+                                  struct list_head *queue)
 {
        int req_cred;
        u8 flags;
@@ -283,8 +292,8 @@ static void htc_tx_pkts_get(struct htc_target *target,
                packet = list_first_entry(&endpoint->txq, struct htc_packet,
                                          list);
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                       "got head pkt:0x%p , queue depth: %d\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                       "htc tx got packet 0x%p queue depth %d\n",
                        packet, get_queue_depth(&endpoint->txq));
 
                len = CALC_TXRX_PADDED_LEN(target,
@@ -346,11 +355,11 @@ static int htc_get_credit_padding(unsigned int cred_sz, int *len,
        return cred_pad;
 }
 
-static int htc_setup_send_scat_list(struct htc_target *target,
-                                   struct htc_endpoint *endpoint,
-                                   struct hif_scatter_req *scat_req,
-                                   int n_scat,
-                                   struct list_head *queue)
+static int ath6kl_htc_tx_setup_scat_list(struct htc_target *target,
+                                        struct htc_endpoint *endpoint,
+                                        struct hif_scatter_req *scat_req,
+                                        int n_scat,
+                                        struct list_head *queue)
 {
        struct htc_packet *packet;
        int i, len, rem_scat, cred_pad;
@@ -370,39 +379,35 @@ static int htc_setup_send_scat_list(struct htc_target *target,
 
                cred_pad = htc_get_credit_padding(target->tgt_cred_sz,
                                                  &len, endpoint);
-               if (cred_pad < 0) {
-                       status = -EINVAL;
-                       break;
-               }
-
-               if (rem_scat < len) {
-                       /* exceeds what we can transfer */
+               if (cred_pad < 0 || rem_scat < len) {
                        status = -ENOSPC;
                        break;
                }
 
                rem_scat -= len;
                /* now remove it from the queue */
-               packet = list_first_entry(queue, struct htc_packet, list);
                list_del(&packet->list);
 
                scat_req->scat_list[i].packet = packet;
                /* prepare packet and flag message as part of a send bundle */
-               htc_prep_send_pkt(packet,
+               ath6kl_htc_tx_prep_pkt(packet,
                                packet->info.tx.flags | HTC_FLAGS_SEND_BUNDLE,
                                cred_pad, packet->info.tx.seqno);
+               /* Make sure the buffer is 4-byte aligned */
+               ath6kl_htc_tx_buf_align(&packet->buf,
+                                       packet->act_len + HTC_HDR_LENGTH);
                scat_req->scat_list[i].buf = packet->buf;
                scat_req->scat_list[i].len = len;
 
                scat_req->len += len;
                scat_req->scat_entries++;
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                          "%d, adding pkt : 0x%p len:%d (remaining space:%d)\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc tx adding (%d) pkt 0x%p len %d remaining %d\n",
                           i, packet, len, rem_scat);
        }
 
        /* Roll back scatter setup in case of any failure */
-       if (status || (scat_req->scat_entries < HTC_MIN_HTC_MSGS_TO_BUNDLE)) {
+       if (scat_req->scat_entries < HTC_MIN_HTC_MSGS_TO_BUNDLE) {
                for (i = scat_req->scat_entries - 1; i >= 0; i--) {
                        packet = scat_req->scat_list[i].packet;
                        if (packet) {
@@ -410,31 +415,32 @@ static int htc_setup_send_scat_list(struct htc_target *target,
                                list_add(&packet->list, queue);
                        }
                }
-               return -EINVAL;
+               return -EAGAIN;
        }
 
-       return 0;
+       return status;
 }
 
 /*
- * htc_issue_send_bundle: drain a queue and send as bundles
- * this function may return without fully draining the queue
- * when
+ * Drain a queue and send as bundles this function may return without fully
+ * draining the queue when
  *
  *    1. scatter resources are exhausted
  *    2. a message that will consume a partial credit will stop the
  *    bundling process early
  *    3. we drop below the minimum number of messages for a bundle
  */
-static void htc_issue_send_bundle(struct htc_endpoint *endpoint,
-                                 struct list_head *queue,
-                                 int *sent_bundle, int *n_bundle_pkts)
+static void ath6kl_htc_tx_bundle(struct htc_endpoint *endpoint,
+                                struct list_head *queue,
+                                int *sent_bundle, int *n_bundle_pkts)
 {
        struct htc_target *target = endpoint->target;
        struct hif_scatter_req *scat_req = NULL;
        int n_scat, n_sent_bundle = 0, tot_pkts_bundle = 0;
+       int status;
 
        while (true) {
+               status = 0;
                n_scat = get_queue_depth(queue);
                n_scat = min(n_scat, target->msg_per_bndl_max);
 
@@ -446,19 +452,21 @@ static void htc_issue_send_bundle(struct htc_endpoint *endpoint,
 
                if (!scat_req) {
                        /* no scatter resources  */
-                       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                               "no more scatter resources\n");
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                               "htc tx no more scatter resources\n");
                        break;
                }
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "pkts to scatter: %d\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC, "htc tx pkts to scatter: %d\n",
                           n_scat);
 
                scat_req->len = 0;
                scat_req->scat_entries = 0;
 
-               if (htc_setup_send_scat_list(target, endpoint, scat_req,
-                                            n_scat, queue)) {
+               status = ath6kl_htc_tx_setup_scat_list(target, endpoint,
+                                                      scat_req, n_scat,
+                                                      queue);
+               if (status == -EAGAIN) {
                        hif_scatter_req_add(target->dev->ar, scat_req);
                        break;
                }
@@ -468,22 +476,25 @@ static void htc_issue_send_bundle(struct htc_endpoint *endpoint,
                n_sent_bundle++;
                tot_pkts_bundle += scat_req->scat_entries;
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                          "send scatter total bytes: %d , entries: %d\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc tx scatter bytes %d entries %d\n",
                           scat_req->len, scat_req->scat_entries);
-               ath6kldev_submit_scat_req(target->dev, scat_req, false);
+               ath6kl_hif_submit_scat_req(target->dev, scat_req, false);
+
+               if (status)
+                       break;
        }
 
        *sent_bundle = n_sent_bundle;
        *n_bundle_pkts = tot_pkts_bundle;
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "htc_issue_send_bundle (sent:%d)\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc tx bundle sent %d pkts\n",
                   n_sent_bundle);
 
        return;
 }
 
-static void htc_tx_from_ep_txq(struct htc_target *target,
-                              struct htc_endpoint *endpoint)
+static void ath6kl_htc_tx_from_queue(struct htc_target *target,
+                                    struct htc_endpoint *endpoint)
 {
        struct list_head txq;
        struct htc_packet *packet;
@@ -496,7 +507,7 @@ static void htc_tx_from_ep_txq(struct htc_target *target,
        if (endpoint->tx_proc_cnt > 1) {
                endpoint->tx_proc_cnt--;
                spin_unlock_bh(&target->tx_lock);
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "htc_try_send (busy)\n");
+               ath6kl_dbg(ATH6KL_DBG_HTC, "htc tx busy\n");
                return;
        }
 
@@ -511,7 +522,7 @@ static void htc_tx_from_ep_txq(struct htc_target *target,
                if (list_empty(&endpoint->txq))
                        break;
 
-               htc_tx_pkts_get(target, endpoint, &txq);
+               ath6kl_htc_tx_pkts_get(target, endpoint, &txq);
 
                if (list_empty(&txq))
                        break;
@@ -528,8 +539,8 @@ static void htc_tx_from_ep_txq(struct htc_target *target,
                            HTC_MIN_HTC_MSGS_TO_BUNDLE)) {
                                int temp1 = 0, temp2 = 0;
 
-                               htc_issue_send_bundle(endpoint, &txq,
-                                                     &temp1, &temp2);
+                               ath6kl_htc_tx_bundle(endpoint, &txq,
+                                                    &temp1, &temp2);
                                bundle_sent += temp1;
                                n_pkts_bundle += temp2;
                        }
@@ -541,9 +552,9 @@ static void htc_tx_from_ep_txq(struct htc_target *target,
                                                  list);
                        list_del(&packet->list);
 
-                       htc_prep_send_pkt(packet, packet->info.tx.flags,
-                                         0, packet->info.tx.seqno);
-                       htc_issue_send(target, packet);
+                       ath6kl_htc_tx_prep_pkt(packet, packet->info.tx.flags,
+                                              0, packet->info.tx.seqno);
+                       ath6kl_htc_tx_issue(target, packet);
                }
 
                spin_lock_bh(&target->tx_lock);
@@ -556,9 +567,9 @@ static void htc_tx_from_ep_txq(struct htc_target *target,
        spin_unlock_bh(&target->tx_lock);
 }
 
-static bool htc_try_send(struct htc_target *target,
-                        struct htc_endpoint *endpoint,
-                        struct htc_packet *tx_pkt)
+static bool ath6kl_htc_tx_try(struct htc_target *target,
+                             struct htc_endpoint *endpoint,
+                             struct htc_packet *tx_pkt)
 {
        struct htc_ep_callbacks ep_cb;
        int txq_depth;
@@ -574,15 +585,12 @@ static bool htc_try_send(struct htc_target *target,
                overflow = true;
 
        if (overflow)
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                          "ep %d, tx queue will overflow :%d , tx depth:%d, max:%d\n",
-                          endpoint->eid, overflow, txq_depth,
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc tx overflow ep %d depth %d max %d\n",
+                          endpoint->eid, txq_depth,
                           endpoint->max_txq_depth);
 
        if (overflow && ep_cb.tx_full) {
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                          "indicating overflowed tx packet: 0x%p\n", tx_pkt);
-
                if (ep_cb.tx_full(endpoint->target, tx_pkt) ==
                    HTC_SEND_FULL_DROP) {
                        endpoint->ep_st.tx_dropped += 1;
@@ -594,7 +602,7 @@ static bool htc_try_send(struct htc_target *target,
        list_add_tail(&tx_pkt->list, &endpoint->txq);
        spin_unlock_bh(&target->tx_lock);
 
-       htc_tx_from_ep_txq(target, endpoint);
+       ath6kl_htc_tx_from_queue(target, endpoint);
 
        return true;
 }
@@ -615,8 +623,8 @@ static void htc_chk_ep_txq(struct htc_target *target)
 
                spin_lock_bh(&target->tx_lock);
                if (!list_empty(&endpoint->txq)) {
-                       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                                  "ep %d has %d credits and %d packets in tx queue\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                                  "htc creds ep %d credits %d pkts %d\n",
                                   cred_dist->endpoint,
                                   endpoint->cred_dist.credits,
                                   get_queue_depth(&endpoint->txq));
@@ -628,7 +636,7 @@ static void htc_chk_ep_txq(struct htc_target *target)
                         * chance to reclaim credits from lower priority
                         * ones.
                         */
-                       htc_tx_from_ep_txq(target, endpoint);
+                       ath6kl_htc_tx_from_queue(target, endpoint);
                        spin_lock_bh(&target->tx_lock);
                }
                spin_unlock_bh(&target->tx_lock);
@@ -680,8 +688,8 @@ static int htc_setup_tx_complete(struct htc_target *target)
 
        /* we want synchronous operation */
        send_pkt->completion = NULL;
-       htc_prep_send_pkt(send_pkt, 0, 0, 0);
-       status = htc_issue_send(target, send_pkt);
+       ath6kl_htc_tx_prep_pkt(send_pkt, 0, 0, 0);
+       status = ath6kl_htc_tx_issue(target, send_pkt);
 
        if (send_pkt != NULL)
                htc_reclaim_txctrl_buf(target, send_pkt);
@@ -722,8 +730,8 @@ int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet)
        struct htc_endpoint *endpoint;
        struct list_head queue;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                  "htc_tx: ep id: %d, buf: 0x%p, len: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc tx ep id %d buf 0x%p len %d\n",
                   packet->endpoint, packet->buf, packet->act_len);
 
        if (packet->endpoint >= ENDPOINT_MAX) {
@@ -733,7 +741,7 @@ int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet)
 
        endpoint = &target->endpoint[packet->endpoint];
 
-       if (!htc_try_send(target, endpoint, packet)) {
+       if (!ath6kl_htc_tx_try(target, endpoint, packet)) {
                packet->status = (target->htc_flags & HTC_OP_STATE_STOPPING) ?
                                 -ECANCELED : -ENOSPC;
                INIT_LIST_HEAD(&queue);
@@ -773,8 +781,8 @@ void ath6kl_htc_flush_txep(struct htc_target *target,
        list_for_each_entry_safe(packet, tmp_pkt, &discard_q, list) {
                packet->status = -ECANCELED;
                list_del(&packet->list);
-               ath6kl_dbg(ATH6KL_DBG_TRC,
-                       "flushing tx pkt:0x%p, len:%d, ep:%d tag:0x%X\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                       "htc tx flushing pkt 0x%p len %d  ep %d tag 0x%x\n",
                        packet, packet->act_len,
                        packet->endpoint, packet->info.tx.tag);
 
@@ -830,12 +838,13 @@ void ath6kl_htc_indicate_activity_change(struct htc_target *target,
                endpoint->cred_dist.txq_depth =
                        get_queue_depth(&endpoint->txq);
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "ctxt:0x%p dist:0x%p\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc tx activity ctxt 0x%p dist 0x%p\n",
                           target->cred_dist_cntxt, &target->cred_dist_list);
 
-               ath6k_credit_distribute(target->cred_dist_cntxt,
-                                       &target->cred_dist_list,
-                                       HTC_CREDIT_DIST_ACTIVITY_CHANGE);
+               ath6kl_credit_distribute(target->cred_dist_cntxt,
+                                        &target->cred_dist_list,
+                                        HTC_CREDIT_DIST_ACTIVITY_CHANGE);
        }
 
        spin_unlock_bh(&target->tx_lock);
@@ -846,8 +855,8 @@ void ath6kl_htc_indicate_activity_change(struct htc_target *target,
 
 /* HTC Rx */
 
-static inline void htc_update_rx_stats(struct htc_endpoint *endpoint,
-                                      int n_look_ahds)
+static inline void ath6kl_htc_rx_update_stats(struct htc_endpoint *endpoint,
+                                             int n_look_ahds)
 {
        endpoint->ep_st.rx_pkts++;
        if (n_look_ahds == 1)
@@ -894,8 +903,9 @@ static void reclaim_rx_ctrl_buf(struct htc_target *target,
        spin_unlock_bh(&target->htc_lock);
 }
 
-static int dev_rx_pkt(struct htc_target *target, struct htc_packet *packet,
-                     u32 rx_len)
+static int ath6kl_htc_rx_packet(struct htc_target *target,
+                               struct htc_packet *packet,
+                               u32 rx_len)
 {
        struct ath6kl_device *dev = target->dev;
        u32 padded_len;
@@ -904,15 +914,15 @@ static int dev_rx_pkt(struct htc_target *target, struct htc_packet *packet,
        padded_len = CALC_TXRX_PADDED_LEN(target, rx_len);
 
        if (padded_len > packet->buf_len) {
-               ath6kl_err("not enough receive space for packet - padlen:%d recvlen:%d bufferlen:%d\n",
+               ath6kl_err("not enough receive space for packet - padlen %d recvlen %d bufferlen %d\n",
                           padded_len, rx_len, packet->buf_len);
                return -ENOMEM;
        }
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                  "dev_rx_pkt (0x%p : hdr:0x%X) padded len: %d mbox:0x%X (mode:%s)\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc rx 0x%p hdr x%x len %d mbox 0x%x\n",
                   packet, packet->info.rx.exp_hdr,
-                  padded_len, dev->ar->mbox_info.htc_addr, "sync");
+                  padded_len, dev->ar->mbox_info.htc_addr);
 
        status = hif_read_write_sync(dev->ar,
                                     dev->ar->mbox_info.htc_addr,
@@ -929,9 +939,9 @@ static int dev_rx_pkt(struct htc_target *target, struct htc_packet *packet,
  * "hint" that there are more  single-packets to fetch
  * on this endpoint.
  */
-static void set_rxpkt_indication_flag(u32 lk_ahd,
-                                     struct htc_endpoint *endpoint,
-                                     struct htc_packet *packet)
+static void ath6kl_htc_rx_set_indicate(u32 lk_ahd,
+                                      struct htc_endpoint *endpoint,
+                                      struct htc_packet *packet)
 {
        struct htc_frame_hdr *htc_hdr = (struct htc_frame_hdr *)&lk_ahd;
 
@@ -942,7 +952,7 @@ static void set_rxpkt_indication_flag(u32 lk_ahd,
        }
 }
 
-static void chk_rx_water_mark(struct htc_endpoint *endpoint)
+static void ath6kl_htc_rx_chk_water_mark(struct htc_endpoint *endpoint)
 {
        struct htc_ep_callbacks ep_cb = endpoint->ep_cb;
 
@@ -959,8 +969,9 @@ static void chk_rx_water_mark(struct htc_endpoint *endpoint)
 }
 
 /* This function is called with rx_lock held */
-static int htc_setup_rxpkts(struct htc_target *target, struct htc_endpoint *ep,
-                           u32 *lk_ahds, struct list_head *queue, int n_msg)
+static int ath6kl_htc_rx_setup(struct htc_target *target,
+                              struct htc_endpoint *ep,
+                              u32 *lk_ahds, struct list_head *queue, int n_msg)
 {
        struct htc_packet *packet;
        /* FIXME: type of lk_ahds can't be right */
@@ -1060,10 +1071,10 @@ static int htc_setup_rxpkts(struct htc_target *target, struct htc_endpoint *ep,
        return status;
 }
 
-static int alloc_and_prep_rxpkts(struct htc_target *target,
-                                u32 lk_ahds[], int msg,
-                                struct htc_endpoint *endpoint,
-                                struct list_head *queue)
+static int ath6kl_htc_rx_alloc(struct htc_target *target,
+                              u32 lk_ahds[], int msg,
+                              struct htc_endpoint *endpoint,
+                              struct list_head *queue)
 {
        int status = 0;
        struct htc_packet *packet, *tmp_pkt;
@@ -1121,16 +1132,16 @@ static int alloc_and_prep_rxpkts(struct htc_target *target,
                        }
 
                        endpoint->ep_st.rx_bundle_from_hdr += 1;
-                       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                                  "htc hdr indicates :%d msg can be fetched as a bundle\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                                  "htc rx bundle pkts %d\n",
                                   n_msg);
                } else
                        /* HTC header only indicates 1 message to fetch */
                        n_msg = 1;
 
                /* Setup packet buffers for each message */
-               status = htc_setup_rxpkts(target, endpoint, &lk_ahds[i], queue,
-                                         n_msg);
+               status = ath6kl_htc_rx_setup(target, endpoint, &lk_ahds[i],
+                                            queue, n_msg);
 
                /*
                 * This is due to unavailabilty of buffers to rx entire data.
@@ -1175,10 +1186,10 @@ static void htc_ctrl_rx(struct htc_target *context, struct htc_packet *packets)
                ath6kl_err("htc_ctrl_rx, got message with len:%zu\n",
                        packets->act_len + HTC_HDR_LENGTH);
 
-               ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES,
-                            "Unexpected ENDPOINT 0 Message",
-                            packets->buf - HTC_HDR_LENGTH,
-                            packets->act_len + HTC_HDR_LENGTH);
+               ath6kl_dbg_dump(ATH6KL_DBG_HTC,
+                               "htc rx unexpected endpoint 0 message", "",
+                               packets->buf - HTC_HDR_LENGTH,
+                               packets->act_len + HTC_HDR_LENGTH);
        }
 
        htc_reclaim_rxbuf(context, packets, &context->endpoint[0]);
@@ -1193,8 +1204,8 @@ static void htc_proc_cred_rpt(struct htc_target *target,
        int tot_credits = 0, i;
        bool dist = false;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                  "htc_proc_cred_rpt, credit report entries:%d\n", n_entries);
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc creds report entries %d\n", n_entries);
 
        spin_lock_bh(&target->tx_lock);
 
@@ -1207,8 +1218,9 @@ static void htc_proc_cred_rpt(struct htc_target *target,
 
                endpoint = &target->endpoint[rpt->eid];
 
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, " ep %d got %d credits\n",
-                       rpt->eid, rpt->credits);
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc creds report ep %d credits %d\n",
+                          rpt->eid, rpt->credits);
 
                endpoint->ep_st.tx_cred_rpt += 1;
                endpoint->ep_st.cred_retnd += rpt->credits;
@@ -1248,8 +1260,8 @@ static void htc_proc_cred_rpt(struct htc_target *target,
                tot_credits += rpt->credits;
        }
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_SEND,
-                  "report indicated %d credits to distribute\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc creds report tot_credits %d\n",
                   tot_credits);
 
        if (dist) {
@@ -1257,12 +1269,12 @@ static void htc_proc_cred_rpt(struct htc_target *target,
                 * This was a credit return based on a completed send
                 * operations note, this is done with the lock held
                 */
-               ath6kl_dbg(ATH6KL_DBG_HTC_SEND, "ctxt:0x%p dist:0x%p\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC, "htc creds ctxt 0x%p dist 0x%p\n",
                           target->cred_dist_cntxt, &target->cred_dist_list);
 
-               ath6k_credit_distribute(target->cred_dist_cntxt,
-                                       &target->cred_dist_list,
-                                       HTC_CREDIT_DIST_SEND_COMPLETE);
+               ath6kl_credit_distribute(target->cred_dist_cntxt,
+                                        &target->cred_dist_list,
+                                        HTC_CREDIT_DIST_SEND_COMPLETE);
        }
 
        spin_unlock_bh(&target->tx_lock);
@@ -1304,15 +1316,16 @@ static int htc_parse_trailer(struct htc_target *target,
                if ((lk_ahd->pre_valid == ((~lk_ahd->post_valid) & 0xFF))
                    && next_lk_ahds) {
 
-                       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                                  "lk_ahd report found (pre valid:0x%X, post valid:0x%X)\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                                  "htc rx lk_ahd found pre_valid 0x%x post_valid 0x%x\n",
                                   lk_ahd->pre_valid, lk_ahd->post_valid);
 
                        /* look ahead bytes are valid, copy them over */
                        memcpy((u8 *)&next_lk_ahds[0], lk_ahd->lk_ahd, 4);
 
-                       ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "Next Look Ahead",
-                                       next_lk_ahds, 4);
+                       ath6kl_dbg_dump(ATH6KL_DBG_HTC,
+                                       "htc rx next look ahead",
+                                       "", next_lk_ahds, 4);
 
                        *n_lk_ahds = 1;
                }
@@ -1330,8 +1343,8 @@ static int htc_parse_trailer(struct htc_target *target,
                        bundle_lkahd_rpt =
                                (struct htc_bundle_lkahd_rpt *) record_buf;
 
-                       ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "Bundle lk_ahd",
-                                       record_buf, record->len);
+                       ath6kl_dbg_dump(ATH6KL_DBG_HTC, "htc rx bundle lk_ahd",
+                                       "", record_buf, record->len);
 
                        for (i = 0; i < len; i++) {
                                memcpy((u8 *)&next_lk_ahds[i],
@@ -1362,9 +1375,8 @@ static int htc_proc_trailer(struct htc_target *target,
        u8 *record_buf;
        u8 *orig_buf;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV, "+htc_proc_trailer (len:%d)\n", len);
-
-       ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "Recv Trailer", buf, len);
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc rx trailer len %d\n", len);
+       ath6kl_dbg_dump(ATH6KL_DBG_HTC, NULL, "", buf, len);
 
        orig_buf = buf;
        orig_len = len;
@@ -1401,15 +1413,15 @@ static int htc_proc_trailer(struct htc_target *target,
        }
 
        if (status)
-               ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "BAD Recv Trailer",
-                               orig_buf, orig_len);
+               ath6kl_dbg_dump(ATH6KL_DBG_HTC, "htc rx bad trailer",
+                               "", orig_buf, orig_len);
 
        return status;
 }
 
-static int htc_proc_rxhdr(struct htc_target *target,
-                         struct htc_packet *packet,
-                         u32 *next_lkahds, int *n_lkahds)
+static int ath6kl_htc_rx_process_hdr(struct htc_target *target,
+                                    struct htc_packet *packet,
+                                    u32 *next_lkahds, int *n_lkahds)
 {
        int status = 0;
        u16 payload_len;
@@ -1419,9 +1431,6 @@ static int htc_proc_rxhdr(struct htc_target *target,
        if (n_lkahds != NULL)
                *n_lkahds = 0;
 
-       ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "HTC Recv PKT", packet->buf,
-                       packet->act_len);
-
        /*
         * NOTE: we cannot assume the alignment of buf, so we use the safe
         * macros to retrieve 16 bit fields.
@@ -1461,12 +1470,12 @@ static int htc_proc_rxhdr(struct htc_target *target,
        }
 
        if (lk_ahd != packet->info.rx.exp_hdr) {
-               ath6kl_err("htc_proc_rxhdr, lk_ahd mismatch! (pPkt:0x%p flags:0x%X)\n",
-                          packet, packet->info.rx.rx_flags);
-               ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "Expected Message lk_ahd",
-                               &packet->info.rx.exp_hdr, 4);
-               ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "Current Frame Header",
-                               (u8 *)&lk_ahd, sizeof(lk_ahd));
+               ath6kl_err("%s(): lk_ahd mismatch! (pPkt:0x%p flags:0x%X)\n",
+                          __func__, packet, packet->info.rx.rx_flags);
+               ath6kl_dbg_dump(ATH6KL_DBG_HTC, "htc rx expected lk_ahd",
+                               "", &packet->info.rx.exp_hdr, 4);
+               ath6kl_dbg_dump(ATH6KL_DBG_HTC, "htc rx current header",
+                               "", (u8 *)&lk_ahd, sizeof(lk_ahd));
                status = -ENOMEM;
                goto fail_rx;
        }
@@ -1474,8 +1483,8 @@ static int htc_proc_rxhdr(struct htc_target *target,
        if (htc_hdr->flags & HTC_FLG_RX_TRAILER) {
                if (htc_hdr->ctrl[0] < sizeof(struct htc_record_hdr) ||
                    htc_hdr->ctrl[0] > payload_len) {
-                       ath6kl_err("htc_proc_rxhdr, invalid hdr (payload len should be :%d, CB[0] is:%d)\n",
-                                  payload_len, htc_hdr->ctrl[0]);
+                       ath6kl_err("%s(): invalid hdr (payload len should be :%d, CB[0] is:%d)\n",
+                                  __func__, payload_len, htc_hdr->ctrl[0]);
                        status = -ENOMEM;
                        goto fail_rx;
                }
@@ -1501,32 +1510,25 @@ static int htc_proc_rxhdr(struct htc_target *target,
 
 fail_rx:
        if (status)
-               ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "BAD HTC Recv PKT",
-                               packet->buf,
-                               packet->act_len < 256 ? packet->act_len : 256);
-       else {
-               if (packet->act_len > 0)
-                       ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES,
-                                       "HTC - Application Msg",
-                                       packet->buf, packet->act_len);
-       }
+               ath6kl_dbg_dump(ATH6KL_DBG_HTC, "htc rx bad packet",
+                               "", packet->buf, packet->act_len);
 
        return status;
 }
 
-static void do_rx_completion(struct htc_endpoint *endpoint,
-                            struct htc_packet *packet)
+static void ath6kl_htc_rx_complete(struct htc_endpoint *endpoint,
+                                  struct htc_packet *packet)
 {
-               ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                          "htc calling ep %d recv callback on packet 0x%p\n",
+               ath6kl_dbg(ATH6KL_DBG_HTC,
+                          "htc rx complete ep %d packet 0x%p\n",
                           endpoint->eid, packet);
                endpoint->ep_cb.rx(endpoint->target, packet);
 }
 
-static int htc_issue_rxpkt_bundle(struct htc_target *target,
-                                 struct list_head *rxq,
-                                 struct list_head *sync_compq,
-                                 int *n_pkt_fetched, bool part_bundle)
+static int ath6kl_htc_rx_bundle(struct htc_target *target,
+                               struct list_head *rxq,
+                               struct list_head *sync_compq,
+                               int *n_pkt_fetched, bool part_bundle)
 {
        struct hif_scatter_req *scat_req;
        struct htc_packet *packet;
@@ -1548,15 +1550,15 @@ static int htc_issue_rxpkt_bundle(struct htc_target *target,
                 * This would only happen if the target ignored our max
                 * bundle limit.
                 */
-               ath6kl_warn("htc_issue_rxpkt_bundle : partial bundle detected num:%d , %d\n",
-                           get_queue_depth(rxq), n_scat_pkt);
+               ath6kl_warn("%s(): partial bundle detected num:%d , %d\n",
+                           __func__, get_queue_depth(rxq), n_scat_pkt);
        }
 
        len = 0;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-               "htc_issue_rxpkt_bundle (numpackets: %d , actual : %d)\n",
-               get_queue_depth(rxq), n_scat_pkt);
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc rx bundle depth %d pkts %d\n",
+                  get_queue_depth(rxq), n_scat_pkt);
 
        scat_req = hif_scatter_req_get(target->dev->ar);
 
@@ -1603,7 +1605,7 @@ static int htc_issue_rxpkt_bundle(struct htc_target *target,
        scat_req->len = len;
        scat_req->scat_entries = i;
 
-       status = ath6kldev_submit_scat_req(target->dev, scat_req, true);
+       status = ath6kl_hif_submit_scat_req(target->dev, scat_req, true);
 
        if (!status)
                *n_pkt_fetched = i;
@@ -1616,31 +1618,34 @@ fail_rx_pkt:
        return status;
 }
 
-static int htc_proc_fetched_rxpkts(struct htc_target *target,
-                                  struct list_head *comp_pktq, u32 lk_ahds[],
-                                  int *n_lk_ahd)
+static int ath6kl_htc_rx_process_packets(struct htc_target *target,
+                                        struct list_head *comp_pktq,
+                                        u32 lk_ahds[],
+                                        int *n_lk_ahd)
 {
        struct htc_packet *packet, *tmp_pkt;
        struct htc_endpoint *ep;
        int status = 0;
 
        list_for_each_entry_safe(packet, tmp_pkt, comp_pktq, list) {
-               list_del(&packet->list);
                ep = &target->endpoint[packet->endpoint];
 
                /* process header for each of the recv packet */
-               status = htc_proc_rxhdr(target, packet, lk_ahds, n_lk_ahd);
+               status = ath6kl_htc_rx_process_hdr(target, packet, lk_ahds,
+                                                  n_lk_ahd);
                if (status)
                        return status;
 
+               list_del(&packet->list);
+
                if (list_empty(comp_pktq)) {
                        /*
                         * Last packet's more packet flag is set
                         * based on the lookahead.
                         */
                        if (*n_lk_ahd > 0)
-                               set_rxpkt_indication_flag(lk_ahds[0],
-                                                         ep, packet);
+                               ath6kl_htc_rx_set_indicate(lk_ahds[0],
+                                                          ep, packet);
                } else
                        /*
                         * Packets in a bundle automatically have
@@ -1649,58 +1654,61 @@ static int htc_proc_fetched_rxpkts(struct htc_target *target,
                        packet->info.rx.indicat_flags |=
                                HTC_RX_FLAGS_INDICATE_MORE_PKTS;
 
-               htc_update_rx_stats(ep, *n_lk_ahd);
+               ath6kl_htc_rx_update_stats(ep, *n_lk_ahd);
 
                if (packet->info.rx.rx_flags & HTC_RX_PKT_PART_OF_BUNDLE)
                        ep->ep_st.rx_bundl += 1;
 
-               do_rx_completion(ep, packet);
+               ath6kl_htc_rx_complete(ep, packet);
        }
 
        return status;
 }
 
-static int htc_fetch_rxpkts(struct htc_target *target,
-                           struct list_head *rx_pktq,
-                           struct list_head *comp_pktq)
+static int ath6kl_htc_rx_fetch(struct htc_target *target,
+                              struct list_head *rx_pktq,
+                              struct list_head *comp_pktq)
 {
        int fetched_pkts;
        bool part_bundle = false;
        int status = 0;
+       struct list_head tmp_rxq;
+       struct htc_packet *packet, *tmp_pkt;
 
        /* now go fetch the list of HTC packets */
        while (!list_empty(rx_pktq)) {
                fetched_pkts = 0;
 
+               INIT_LIST_HEAD(&tmp_rxq);
+
                if (target->rx_bndl_enable && (get_queue_depth(rx_pktq) > 1)) {
                        /*
                         * There are enough packets to attempt a
                         * bundle transfer and recv bundling is
                         * allowed.
                         */
-                       status = htc_issue_rxpkt_bundle(target, rx_pktq,
-                                                       comp_pktq,
-                                                       &fetched_pkts,
-                                                       part_bundle);
+                       status = ath6kl_htc_rx_bundle(target, rx_pktq,
+                                                     &tmp_rxq,
+                                                     &fetched_pkts,
+                                                     part_bundle);
                        if (status)
-                               return status;
+                               goto fail_rx;
 
                        if (!list_empty(rx_pktq))
                                part_bundle = true;
+
+                       list_splice_tail_init(&tmp_rxq, comp_pktq);
                }
 
                if (!fetched_pkts) {
-                       struct htc_packet *packet;
 
                        packet = list_first_entry(rx_pktq, struct htc_packet,
                                                   list);
 
-                       list_del(&packet->list);
-
                        /* fully synchronous */
                        packet->completion = NULL;
 
-                       if (!list_empty(rx_pktq))
+                       if (!list_is_singular(rx_pktq))
                                /*
                                 * look_aheads in all packet
                                 * except the last one in the
@@ -1710,19 +1718,44 @@ static int htc_fetch_rxpkts(struct htc_target *target,
                                        HTC_RX_PKT_IGNORE_LOOKAHEAD;
 
                        /* go fetch the packet */
-                       status = dev_rx_pkt(target, packet, packet->act_len);
+                       status = ath6kl_htc_rx_packet(target, packet,
+                                                     packet->act_len);
+
+                       list_move_tail(&packet->list, &tmp_rxq);
+
                        if (status)
-                               return status;
+                               goto fail_rx;
 
-                       list_add_tail(&packet->list, comp_pktq);
+                       list_splice_tail_init(&tmp_rxq, comp_pktq);
                }
        }
 
+       return 0;
+
+fail_rx:
+
+       /*
+        * Cleanup any packets we allocated but didn't use to
+        * actually fetch any packets.
+        */
+
+       list_for_each_entry_safe(packet, tmp_pkt, rx_pktq, list) {
+               list_del(&packet->list);
+               htc_reclaim_rxbuf(target, packet,
+                               &target->endpoint[packet->endpoint]);
+       }
+
+       list_for_each_entry_safe(packet, tmp_pkt, &tmp_rxq, list) {
+               list_del(&packet->list);
+               htc_reclaim_rxbuf(target, packet,
+                               &target->endpoint[packet->endpoint]);
+       }
+
        return status;
 }
 
 int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
-                                    u32 msg_look_ahead[], int *num_pkts)
+                                    u32 msg_look_ahead, int *num_pkts)
 {
        struct htc_packet *packets, *tmp_pkt;
        struct htc_endpoint *endpoint;
@@ -1739,7 +1772,7 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
         * On first entry copy the look_aheads into our temp array for
         * processing
         */
-       memcpy(look_aheads, msg_look_ahead, sizeof(look_aheads));
+       look_aheads[0] = msg_look_ahead;
 
        while (true) {
 
@@ -1764,9 +1797,9 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
                 * Try to allocate as many HTC RX packets indicated by the
                 * look_aheads.
                 */
-               status = alloc_and_prep_rxpkts(target, look_aheads,
-                                              num_look_ahead, endpoint,
-                                              &rx_pktq);
+               status = ath6kl_htc_rx_alloc(target, look_aheads,
+                                            num_look_ahead, endpoint,
+                                            &rx_pktq);
                if (status)
                        break;
 
@@ -1781,14 +1814,15 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
 
                num_look_ahead = 0;
 
-               status = htc_fetch_rxpkts(target, &rx_pktq, &comp_pktq);
+               status = ath6kl_htc_rx_fetch(target, &rx_pktq, &comp_pktq);
 
                if (!status)
-                       chk_rx_water_mark(endpoint);
+                       ath6kl_htc_rx_chk_water_mark(endpoint);
 
                /* Process fetched packets */
-               status = htc_proc_fetched_rxpkts(target, &comp_pktq,
-                                                look_aheads, &num_look_ahead);
+               status = ath6kl_htc_rx_process_packets(target, &comp_pktq,
+                                                      look_aheads,
+                                                      &num_look_ahead);
 
                if (!num_look_ahead || status)
                        break;
@@ -1806,15 +1840,6 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
        if (status) {
                ath6kl_err("failed to get pending recv messages: %d\n",
                           status);
-               /*
-                * Cleanup any packets we allocated but didn't use to
-                * actually fetch any packets.
-                */
-               list_for_each_entry_safe(packets, tmp_pkt, &rx_pktq, list) {
-                       list_del(&packets->list);
-                       htc_reclaim_rxbuf(target, packets,
-                                       &target->endpoint[packets->endpoint]);
-               }
 
                /* cleanup any packets in sync completion queue */
                list_for_each_entry_safe(packets, tmp_pkt, &comp_pktq, list) {
@@ -1825,7 +1850,7 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
 
                if (target->htc_flags & HTC_OP_STATE_STOPPING) {
                        ath6kl_warn("host is going to stop blocking receiver for htc_stop\n");
-                       ath6kldev_rx_control(target->dev, false);
+                       ath6kl_hif_rx_control(target->dev, false);
                }
        }
 
@@ -1835,7 +1860,7 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
         */
        if (target->rx_st_flags & HTC_RECV_WAIT_BUFFERS) {
                ath6kl_warn("host has no rx buffers blocking receiver to prevent overrun\n");
-               ath6kldev_rx_control(target->dev, false);
+               ath6kl_hif_rx_control(target->dev, false);
        }
        *num_pkts = n_fetched;
 
@@ -1853,12 +1878,12 @@ static struct htc_packet *htc_wait_for_ctrl_msg(struct htc_target *target)
        struct htc_frame_hdr *htc_hdr;
        u32 look_ahead;
 
-       if (ath6kldev_poll_mboxmsg_rx(target->dev, &look_ahead,
+       if (ath6kl_hif_poll_mboxmsg_rx(target->dev, &look_ahead,
                               HTC_TARGET_RESPONSE_TIMEOUT))
                return NULL;
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-               "htc_wait_for_ctrl_msg: look_ahead : 0x%X\n", look_ahead);
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+               "htc rx wait ctrl look_ahead 0x%X\n", look_ahead);
 
        htc_hdr = (struct htc_frame_hdr *)&look_ahead;
 
@@ -1881,14 +1906,14 @@ static struct htc_packet *htc_wait_for_ctrl_msg(struct htc_target *target)
        packet->completion = NULL;
 
        /* get the message from the device, this will block */
-       if (dev_rx_pkt(target, packet, packet->act_len))
+       if (ath6kl_htc_rx_packet(target, packet, packet->act_len))
                goto fail_ctrl_rx;
 
        /* process receive header */
-       packet->status = htc_proc_rxhdr(target, packet, NULL, NULL);
+       packet->status = ath6kl_htc_rx_process_hdr(target, packet, NULL, NULL);
 
        if (packet->status) {
-               ath6kl_err("htc_wait_for_ctrl_msg, htc_proc_rxhdr failed (status = %d)\n",
+               ath6kl_err("htc_wait_for_ctrl_msg, ath6kl_htc_rx_process_hdr failed (status = %d)\n",
                           packet->status);
                goto fail_ctrl_rx;
        }
@@ -1922,8 +1947,8 @@ int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
 
        depth = get_queue_depth(pkt_queue);
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-               "htc_add_rxbuf_multiple: ep id: %d, cnt:%d, len: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+               "htc rx add multiple ep id %d cnt %d len %d\n",
                first_pkt->endpoint, depth, first_pkt->buf_len);
 
        endpoint = &target->endpoint[first_pkt->endpoint];
@@ -1935,7 +1960,7 @@ int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
                list_for_each_entry_safe(packet, tmp_pkt, pkt_queue, list) {
                        packet->status = -ECANCELED;
                        list_del(&packet->list);
-                       do_rx_completion(endpoint, packet);
+                       ath6kl_htc_rx_complete(endpoint, packet);
                }
 
                return status;
@@ -1948,8 +1973,8 @@ int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
        /* check if we are blocked waiting for a new buffer */
        if (target->rx_st_flags & HTC_RECV_WAIT_BUFFERS) {
                if (target->ep_waiting == first_pkt->endpoint) {
-                       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                               "receiver was blocked on ep:%d, unblocking.\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                               "htc rx blocked on ep %d, unblocking\n",
                                target->ep_waiting);
                        target->rx_st_flags &= ~HTC_RECV_WAIT_BUFFERS;
                        target->ep_waiting = ENDPOINT_MAX;
@@ -1961,7 +1986,7 @@ int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
 
        if (rx_unblock && !(target->htc_flags & HTC_OP_STATE_STOPPING))
                /* TODO : implement a buffer threshold count? */
-               ath6kldev_rx_control(target->dev, true);
+               ath6kl_hif_rx_control(target->dev, true);
 
        return status;
 }
@@ -1983,8 +2008,8 @@ void ath6kl_htc_flush_rx_buf(struct htc_target *target)
                                         &endpoint->rx_bufq, list) {
                        list_del(&packet->list);
                        spin_unlock_bh(&target->rx_lock);
-                       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                                  "flushing rx pkt:0x%p, len:%d, ep:%d\n",
+                       ath6kl_dbg(ATH6KL_DBG_HTC,
+                                  "htc rx flush pkt 0x%p  len %d  ep %d\n",
                                   packet, packet->buf_len,
                                   packet->endpoint);
                        dev_kfree_skb(packet->pkt_cntxt);
@@ -2007,8 +2032,8 @@ int ath6kl_htc_conn_service(struct htc_target *target,
        unsigned int max_msg_sz = 0;
        int status = 0;
 
-       ath6kl_dbg(ATH6KL_DBG_TRC,
-                  "htc_conn_service, target:0x%p service id:0x%X\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc connect service target 0x%p service id 0x%x\n",
                   target, conn_req->svc_id);
 
        if (conn_req->svc_id == HTC_CTRL_RSVD_SVC) {
@@ -2034,8 +2059,8 @@ int ath6kl_htc_conn_service(struct htc_target *target,
 
                /* we want synchronous operation */
                tx_pkt->completion = NULL;
-               htc_prep_send_pkt(tx_pkt, 0, 0, 0);
-               status = htc_issue_send(target, tx_pkt);
+               ath6kl_htc_tx_prep_pkt(tx_pkt, 0, 0, 0);
+               status = ath6kl_htc_tx_issue(target, tx_pkt);
 
                if (status)
                        goto fail_tx;
@@ -2180,8 +2205,8 @@ static void htc_setup_msg_bndl(struct htc_target *target)
        target->msg_per_bndl_max = min(target->max_scat_entries,
                                       target->msg_per_bndl_max);
 
-       ath6kl_dbg(ATH6KL_DBG_TRC,
-                  "htc bundling allowed. max msg per htc bundle: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc bundling allowed msg_per_bndl_max %d\n",
                   target->msg_per_bndl_max);
 
        /* Max rx bundle size is limited by the max tx bundle size */
@@ -2190,7 +2215,7 @@ static void htc_setup_msg_bndl(struct htc_target *target)
        target->max_tx_bndl_sz = min(HIF_MBOX0_EXT_WIDTH,
                                     target->max_xfer_szper_scatreq);
 
-       ath6kl_dbg(ATH6KL_DBG_ANY, "max recv: %d max send: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc max_rx_bndl_sz %d max_tx_bndl_sz %d\n",
                   target->max_rx_bndl_sz, target->max_tx_bndl_sz);
 
        if (target->max_tx_bndl_sz)
@@ -2244,8 +2269,8 @@ int ath6kl_htc_wait_target(struct htc_target *target)
        target->tgt_creds = le16_to_cpu(rdy_msg->ver2_0_info.cred_cnt);
        target->tgt_cred_sz = le16_to_cpu(rdy_msg->ver2_0_info.cred_sz);
 
-       ath6kl_dbg(ATH6KL_DBG_HTC_RECV,
-                  "target ready: credits: %d credit size: %d\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC,
+                  "htc target ready credits %d size %d\n",
                   target->tgt_creds, target->tgt_cred_sz);
 
        /* check if this is an extended ready message */
@@ -2259,7 +2284,7 @@ int ath6kl_htc_wait_target(struct htc_target *target)
                target->msg_per_bndl_max = 0;
        }
 
-       ath6kl_dbg(ATH6KL_DBG_TRC, "using htc protocol version : %s (%d)\n",
+       ath6kl_dbg(ATH6KL_DBG_HTC, "htc using protocol %s (%d)\n",
                  (target->htc_tgt_ver == HTC_VERSION_2P0) ? "2.0" : ">= 2.1",
                  target->htc_tgt_ver);
 
@@ -2300,7 +2325,7 @@ int ath6kl_htc_start(struct htc_target *target)
        int status;
 
        /* Disable interrupts at the chip level */
-       ath6kldev_disable_intrs(target->dev);
+       ath6kl_hif_disable_intrs(target->dev);
 
        target->htc_flags = 0;
        target->rx_st_flags = 0;
@@ -2313,8 +2338,8 @@ int ath6kl_htc_start(struct htc_target *target)
        }
 
        /* NOTE: the first entry in the distribution list is ENDPOINT_0 */
-       ath6k_credit_init(target->cred_dist_cntxt, &target->cred_dist_list,
-                         target->tgt_creds);
+       ath6kl_credit_init(target->cred_dist_cntxt, &target->cred_dist_list,
+                          target->tgt_creds);
 
        dump_cred_dist_stats(target);
 
@@ -2325,7 +2350,7 @@ int ath6kl_htc_start(struct htc_target *target)
                return status;
 
        /* unmask interrupts */
-       status = ath6kldev_unmask_intrs(target->dev);
+       status = ath6kl_hif_unmask_intrs(target->dev);
 
        if (status)
                ath6kl_htc_stop(target);
@@ -2345,7 +2370,7 @@ void ath6kl_htc_stop(struct htc_target *target)
         * function returns all pending HIF I/O has completed, we can
         * safely flush the queues.
         */
-       ath6kldev_mask_intrs(target->dev);
+       ath6kl_hif_mask_intrs(target->dev);
 
        ath6kl_htc_flush_txep_all(target);
 
@@ -2388,7 +2413,7 @@ void *ath6kl_htc_create(struct ath6kl *ar)
 
        reset_ep_state(target);
 
-       status = ath6kldev_setup(target->dev);
+       status = ath6kl_hif_setup(target->dev);
 
        if (status)
                goto fail_create_htc;