aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKalle Valo <kvalo@qca.qualcomm.com>2011-09-27 07:31:21 -0400
committerKalle Valo <kvalo@qca.qualcomm.com>2011-09-28 12:27:31 -0400
commitb9b6ee603923be45c4022a0dce5fa8ccf4284524 (patch)
tree7b0a4e189353484ed072b205e2f0b7e8313f18f5
parent6bc364315aac6ab256ce3cdc00aa90cb57279a1f (diff)
ath6kl: improve wmi debug messages
Add a new debug level ATH6KL_DBG_WMI_DUMP and other minor improvements to the wmi debug messages. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r--drivers/net/wireless/ath/ath6kl/debug.h3
-rw-r--r--drivers/net/wireless/ath/ath6kl/wmi.c44
2 files changed, 37 insertions, 10 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/debug.h b/drivers/net/wireless/ath/ath6kl/debug.h
index 0fbb0ac2de23..9288a3ce1e39 100644
--- a/drivers/net/wireless/ath/ath6kl/debug.h
+++ b/drivers/net/wireless/ath/ath6kl/debug.h
@@ -34,11 +34,12 @@ enum ATH6K_DEBUG_MASK {
34 ATH6KL_DBG_TRC = BIT(11), /* generic func tracing */ 34 ATH6KL_DBG_TRC = BIT(11), /* generic func tracing */
35 ATH6KL_DBG_SCATTER = BIT(12), /* hif scatter tracing */ 35 ATH6KL_DBG_SCATTER = BIT(12), /* hif scatter tracing */
36 ATH6KL_DBG_WLAN_CFG = BIT(13), /* cfg80211 i/f file tracing */ 36 ATH6KL_DBG_WLAN_CFG = BIT(13), /* cfg80211 i/f file tracing */
37 ATH6KL_DBG_RAW_BYTES = BIT(14), /* dump tx/rx and wmi frames */ 37 ATH6KL_DBG_RAW_BYTES = BIT(14), /* dump tx/rx frames */
38 ATH6KL_DBG_AGGR = BIT(15), /* aggregation */ 38 ATH6KL_DBG_AGGR = BIT(15), /* aggregation */
39 ATH6KL_DBG_SDIO = BIT(16), 39 ATH6KL_DBG_SDIO = BIT(16),
40 ATH6KL_DBG_SDIO_DUMP = BIT(17), 40 ATH6KL_DBG_SDIO_DUMP = BIT(17),
41 ATH6KL_DBG_BOOT = BIT(18), /* driver init and fw boot */ 41 ATH6KL_DBG_BOOT = BIT(18), /* driver init and fw boot */
42 ATH6KL_DBG_WMI_DUMP = BIT(19),
42 ATH6KL_DBG_ANY = 0xffffffff /* enable all logs */ 43 ATH6KL_DBG_ANY = 0xffffffff /* enable all logs */
43}; 44};
44 45
diff --git a/drivers/net/wireless/ath/ath6kl/wmi.c b/drivers/net/wireless/ath/ath6kl/wmi.c
index 785a8c72541b..a7de23cbd2c7 100644
--- a/drivers/net/wireless/ath/ath6kl/wmi.c
+++ b/drivers/net/wireless/ath/ath6kl/wmi.c
@@ -721,8 +721,12 @@ static int ath6kl_wmi_connect_event_rx(struct wmi *wmi, u8 *datap, int len)
721 721
722 /* STA/IBSS mode connection event */ 722 /* STA/IBSS mode connection event */
723 723
724 ath6kl_dbg(ATH6KL_DBG_WMI, "%s: freq %d bssid %pM\n", 724 ath6kl_dbg(ATH6KL_DBG_WMI,
725 __func__, le16_to_cpu(ev->u.sta.ch), ev->u.sta.bssid); 725 "wmi event connect freq %d bssid %pM listen_intvl %d beacon_intvl %d type %d\n",
726 le16_to_cpu(ev->u.sta.ch), ev->u.sta.bssid,
727 le16_to_cpu(ev->u.sta.listen_intvl),
728 le16_to_cpu(ev->u.sta.beacon_intvl),
729 le32_to_cpu(ev->u.sta.nw_type));
726 730
727 /* Start of assoc rsp IEs */ 731 /* Start of assoc rsp IEs */
728 pie = ev->assoc_info + ev->beacon_ie_len + 732 pie = ev->assoc_info + ev->beacon_ie_len +
@@ -822,7 +826,7 @@ static void ath6kl_wmi_regdomain_event(struct wmi *wmi, u8 *datap, int len)
822 826
823 regpair = ath6kl_get_regpair((u16) reg_code); 827 regpair = ath6kl_get_regpair((u16) reg_code);
824 country = ath6kl_regd_find_country_by_rd((u16) reg_code); 828 country = ath6kl_regd_find_country_by_rd((u16) reg_code);
825 ath6kl_dbg(ATH6KL_DBG_WMI, "ath6kl: Regpair used: 0x%0x\n", 829 ath6kl_dbg(ATH6KL_DBG_WMI, "Regpair used: 0x%0x\n",
826 regpair->regDmnEnum); 830 regpair->regDmnEnum);
827 } 831 }
828 832
@@ -832,7 +836,7 @@ static void ath6kl_wmi_regdomain_event(struct wmi *wmi, u8 *datap, int len)
832 836
833 regulatory_hint(wmi->parent_dev->wdev->wiphy, alpha2); 837 regulatory_hint(wmi->parent_dev->wdev->wiphy, alpha2);
834 838
835 ath6kl_dbg(ATH6KL_DBG_WMI, "ath6kl: Country alpha2 being used: %c%c\n", 839 ath6kl_dbg(ATH6KL_DBG_WMI, "Country alpha2 being used: %c%c\n",
836 alpha2[0], alpha2[1]); 840 alpha2[0], alpha2[1]);
837 } 841 }
838} 842}
@@ -847,6 +851,11 @@ static int ath6kl_wmi_disconnect_event_rx(struct wmi *wmi, u8 *datap, int len)
847 851
848 ev = (struct wmi_disconnect_event *) datap; 852 ev = (struct wmi_disconnect_event *) datap;
849 853
854 ath6kl_dbg(ATH6KL_DBG_WMI,
855 "wmi event disconnect proto_reason %d bssid %pM wmi_reason %d assoc_resp_len %d\n",
856 le16_to_cpu(ev->proto_reason_status), ev->bssid,
857 ev->disconn_reason, ev->assoc_resp_len);
858
850 wmi->is_wmm_enabled = false; 859 wmi->is_wmm_enabled = false;
851 wmi->pair_crypto_type = NONE_CRYPT; 860 wmi->pair_crypto_type = NONE_CRYPT;
852 wmi->grp_crypto_type = NONE_CRYPT; 861 wmi->grp_crypto_type = NONE_CRYPT;
@@ -1526,11 +1535,14 @@ int ath6kl_wmi_cmd_send(struct wmi *wmi, struct sk_buff *skb,
1526 enum htc_endpoint_id ep_id = wmi->ep_id; 1535 enum htc_endpoint_id ep_id = wmi->ep_id;
1527 int ret; 1536 int ret;
1528 1537
1529 ath6kl_dbg(ATH6KL_DBG_WMI, "%s: cmd_id=%d\n", __func__, cmd_id);
1530
1531 if (WARN_ON(skb == NULL)) 1538 if (WARN_ON(skb == NULL))
1532 return -EINVAL; 1539 return -EINVAL;
1533 1540
1541 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi tx id %d len %d flag %d\n",
1542 cmd_id, skb->len, sync_flag);
1543 ath6kl_dbg_dump(ATH6KL_DBG_WMI_DUMP, NULL, "wmi tx ",
1544 skb->data, skb->len);
1545
1534 if (sync_flag >= END_WMIFLAG) { 1546 if (sync_flag >= END_WMIFLAG) {
1535 dev_kfree_skb(skb); 1547 dev_kfree_skb(skb);
1536 return -EINVAL; 1548 return -EINVAL;
@@ -1589,6 +1601,13 @@ int ath6kl_wmi_connect_cmd(struct wmi *wmi, enum network_type nw_type,
1589 struct wmi_connect_cmd *cc; 1601 struct wmi_connect_cmd *cc;
1590 int ret; 1602 int ret;
1591 1603
1604 ath6kl_dbg(ATH6KL_DBG_WMI,
1605 "wmi connect bssid %pM freq %d flags 0x%x ssid_len %d "
1606 "type %d dot11_auth %d auth %d pairwise %d group %d\n",
1607 bssid, channel, ctrl_flags, ssid_len, nw_type,
1608 dot11_auth_mode, auth_mode, pairwise_crypto, group_crypto);
1609 ath6kl_dbg_dump(ATH6KL_DBG_WMI, NULL, "ssid ", ssid, ssid_len);
1610
1592 wmi->traffic_class = 100; 1611 wmi->traffic_class = 100;
1593 1612
1594 if ((pairwise_crypto == NONE_CRYPT) && (group_crypto != NONE_CRYPT)) 1613 if ((pairwise_crypto == NONE_CRYPT) && (group_crypto != NONE_CRYPT))
@@ -1634,6 +1653,9 @@ int ath6kl_wmi_reconnect_cmd(struct wmi *wmi, u8 *bssid, u16 channel)
1634 struct wmi_reconnect_cmd *cc; 1653 struct wmi_reconnect_cmd *cc;
1635 int ret; 1654 int ret;
1636 1655
1656 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi reconnect bssid %pM freq %d\n",
1657 bssid, channel);
1658
1637 wmi->traffic_class = 100; 1659 wmi->traffic_class = 100;
1638 1660
1639 skb = ath6kl_wmi_get_new_buf(sizeof(struct wmi_reconnect_cmd)); 1661 skb = ath6kl_wmi_get_new_buf(sizeof(struct wmi_reconnect_cmd));
@@ -1656,6 +1678,8 @@ int ath6kl_wmi_disconnect_cmd(struct wmi *wmi)
1656{ 1678{
1657 int ret; 1679 int ret;
1658 1680
1681 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi disconnect\n");
1682
1659 wmi->traffic_class = 100; 1683 wmi->traffic_class = 100;
1660 1684
1661 /* Disconnect command does not need to do a SYNC before. */ 1685 /* Disconnect command does not need to do a SYNC before. */
@@ -2808,12 +2832,14 @@ static int ath6kl_wmi_control_rx_xtnd(struct wmi *wmi, struct sk_buff *skb)
2808 2832
2809 switch (id) { 2833 switch (id) {
2810 case WMIX_HB_CHALLENGE_RESP_EVENTID: 2834 case WMIX_HB_CHALLENGE_RESP_EVENTID:
2835 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi event hb challenge resp\n");
2811 break; 2836 break;
2812 case WMIX_DBGLOG_EVENTID: 2837 case WMIX_DBGLOG_EVENTID:
2838 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi event dbglog len %d\n", len);
2813 ath6kl_debug_fwlog_event(wmi->parent_dev, datap, len); 2839 ath6kl_debug_fwlog_event(wmi->parent_dev, datap, len);
2814 break; 2840 break;
2815 default: 2841 default:
2816 ath6kl_err("unknown cmd id 0x%x\n", id); 2842 ath6kl_warn("unknown cmd id 0x%x\n", id);
2817 wmi->stat.cmd_id_err++; 2843 wmi->stat.cmd_id_err++;
2818 ret = -EINVAL; 2844 ret = -EINVAL;
2819 break; 2845 break;
@@ -2849,8 +2875,8 @@ int ath6kl_wmi_control_rx(struct wmi *wmi, struct sk_buff *skb)
2849 datap = skb->data; 2875 datap = skb->data;
2850 len = skb->len; 2876 len = skb->len;
2851 2877
2852 ath6kl_dbg(ATH6KL_DBG_WMI, "%s: wmi id: %d\n", __func__, id); 2878 ath6kl_dbg(ATH6KL_DBG_WMI, "wmi rx id %d len %d\n", id, len);
2853 ath6kl_dbg_dump(ATH6KL_DBG_RAW_BYTES, "msg payload ", "wmi rx ", 2879 ath6kl_dbg_dump(ATH6KL_DBG_WMI_DUMP, NULL, "wmi rx ",
2854 datap, len); 2880 datap, len);
2855 2881
2856 switch (id) { 2882 switch (id) {