diff options
author | Hante Meuleman <meuleman@broadcom.com> | 2012-11-05 19:22:31 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-11-14 14:56:04 -0500 |
commit | cb8b73da65af3d3b058f9bfc90e40217fa2226e8 (patch) | |
tree | 47f9ed3b2ffdea12b092dcf18c37e22d4743cd0e | |
parent | 817b178c83e339f908b9f215ad884834e8710963 (diff) |
brcmfmac: add dedicated USB log level.
Add USB log level and update and add log messages in usb module.
Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Franky Lin <frankyl@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmfmac/usb.c | 81 |
2 files changed, 53 insertions, 29 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h b/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h index 55a47382981..a0e18a1ceb4 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h +++ b/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h | |||
@@ -31,6 +31,7 @@ | |||
31 | #define BRCMF_EVENT_VAL 0x0400 | 31 | #define BRCMF_EVENT_VAL 0x0400 |
32 | #define BRCMF_BTA_VAL 0x0800 | 32 | #define BRCMF_BTA_VAL 0x0800 |
33 | #define BRCMF_FIL_VAL 0x1000 | 33 | #define BRCMF_FIL_VAL 0x1000 |
34 | #define BRCMF_USB_VAL 0x2000 | ||
34 | 35 | ||
35 | #if defined(DEBUG) | 36 | #if defined(DEBUG) |
36 | 37 | ||
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/usb.c b/drivers/net/wireless/brcm80211/brcmfmac/usb.c index 484a6e4f23a..15070b61b16 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/usb.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/usb.c | |||
@@ -170,6 +170,7 @@ static void brcmf_usb_ioctl_resp_wake(struct brcmf_usbdev_info *devinfo) | |||
170 | static void | 170 | static void |
171 | brcmf_usb_ctl_complete(struct brcmf_usbdev_info *devinfo, int type, int status) | 171 | brcmf_usb_ctl_complete(struct brcmf_usbdev_info *devinfo, int type, int status) |
172 | { | 172 | { |
173 | brcmf_dbg(USB, "Enter, status=%d\n", status); | ||
173 | 174 | ||
174 | if (unlikely(devinfo == NULL)) | 175 | if (unlikely(devinfo == NULL)) |
175 | return; | 176 | return; |
@@ -197,6 +198,7 @@ brcmf_usb_ctlread_complete(struct urb *urb) | |||
197 | struct brcmf_usbdev_info *devinfo = | 198 | struct brcmf_usbdev_info *devinfo = |
198 | (struct brcmf_usbdev_info *)urb->context; | 199 | (struct brcmf_usbdev_info *)urb->context; |
199 | 200 | ||
201 | brcmf_dbg(USB, "Enter\n"); | ||
200 | devinfo->ctl_urb_actual_length = urb->actual_length; | 202 | devinfo->ctl_urb_actual_length = urb->actual_length; |
201 | brcmf_usb_ctl_complete(devinfo, BRCMF_USB_CBCTL_READ, | 203 | brcmf_usb_ctl_complete(devinfo, BRCMF_USB_CBCTL_READ, |
202 | urb->status); | 204 | urb->status); |
@@ -208,6 +210,7 @@ brcmf_usb_ctlwrite_complete(struct urb *urb) | |||
208 | struct brcmf_usbdev_info *devinfo = | 210 | struct brcmf_usbdev_info *devinfo = |
209 | (struct brcmf_usbdev_info *)urb->context; | 211 | (struct brcmf_usbdev_info *)urb->context; |
210 | 212 | ||
213 | brcmf_dbg(USB, "Enter\n"); | ||
211 | brcmf_usb_ctl_complete(devinfo, BRCMF_USB_CBCTL_WRITE, | 214 | brcmf_usb_ctl_complete(devinfo, BRCMF_USB_CBCTL_WRITE, |
212 | urb->status); | 215 | urb->status); |
213 | } | 216 | } |
@@ -223,6 +226,7 @@ brcmf_usb_send_ctl(struct brcmf_usbdev_info *devinfo, u8 *buf, int len) | |||
223 | int ret; | 226 | int ret; |
224 | u16 size; | 227 | u16 size; |
225 | 228 | ||
229 | brcmf_dbg(USB, "Enter\n"); | ||
226 | if (devinfo == NULL || buf == NULL || | 230 | if (devinfo == NULL || buf == NULL || |
227 | len == 0 || devinfo->ctl_urb == NULL) | 231 | len == 0 || devinfo->ctl_urb == NULL) |
228 | return -EINVAL; | 232 | return -EINVAL; |
@@ -262,6 +266,7 @@ brcmf_usb_recv_ctl(struct brcmf_usbdev_info *devinfo, u8 *buf, int len) | |||
262 | int ret; | 266 | int ret; |
263 | u16 size; | 267 | u16 size; |
264 | 268 | ||
269 | brcmf_dbg(USB, "Enter\n"); | ||
265 | if ((devinfo == NULL) || (buf == NULL) || (len == 0) | 270 | if ((devinfo == NULL) || (buf == NULL) || (len == 0) |
266 | || (devinfo->ctl_urb == NULL)) | 271 | || (devinfo->ctl_urb == NULL)) |
267 | return -EINVAL; | 272 | return -EINVAL; |
@@ -295,6 +300,7 @@ static int brcmf_usb_tx_ctlpkt(struct device *dev, u8 *buf, u32 len) | |||
295 | int timeout = 0; | 300 | int timeout = 0; |
296 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); | 301 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); |
297 | 302 | ||
303 | brcmf_dbg(USB, "Enter\n"); | ||
298 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { | 304 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { |
299 | /* TODO: handle suspend/resume */ | 305 | /* TODO: handle suspend/resume */ |
300 | return -EIO; | 306 | return -EIO; |
@@ -325,6 +331,7 @@ static int brcmf_usb_rx_ctlpkt(struct device *dev, u8 *buf, u32 len) | |||
325 | int timeout = 0; | 331 | int timeout = 0; |
326 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); | 332 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); |
327 | 333 | ||
334 | brcmf_dbg(USB, "Enter\n"); | ||
328 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { | 335 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { |
329 | /* TODO: handle suspend/resume */ | 336 | /* TODO: handle suspend/resume */ |
330 | return -EIO; | 337 | return -EIO; |
@@ -453,6 +460,8 @@ static void brcmf_usb_tx_complete(struct urb *urb) | |||
453 | struct brcmf_usbreq *req = (struct brcmf_usbreq *)urb->context; | 460 | struct brcmf_usbreq *req = (struct brcmf_usbreq *)urb->context; |
454 | struct brcmf_usbdev_info *devinfo = req->devinfo; | 461 | struct brcmf_usbdev_info *devinfo = req->devinfo; |
455 | 462 | ||
463 | brcmf_dbg(USB, "Enter, urb->status=%d, skb=%p\n", urb->status, | ||
464 | req->skb); | ||
456 | brcmf_usb_del_fromq(devinfo, req); | 465 | brcmf_usb_del_fromq(devinfo, req); |
457 | if (urb->status == 0) | 466 | if (urb->status == 0) |
458 | devinfo->bus_pub.bus->dstats.tx_packets++; | 467 | devinfo->bus_pub.bus->dstats.tx_packets++; |
@@ -478,6 +487,7 @@ static void brcmf_usb_rx_complete(struct urb *urb) | |||
478 | struct sk_buff *skb; | 487 | struct sk_buff *skb; |
479 | int ifidx = 0; | 488 | int ifidx = 0; |
480 | 489 | ||
490 | brcmf_dbg(USB, "Enter, urb->status=%d\n", urb->status); | ||
481 | brcmf_usb_del_fromq(devinfo, req); | 491 | brcmf_usb_del_fromq(devinfo, req); |
482 | skb = req->skb; | 492 | skb = req->skb; |
483 | req->skb = NULL; | 493 | req->skb = NULL; |
@@ -558,13 +568,13 @@ brcmf_usb_state_change(struct brcmf_usbdev_info *devinfo, int state) | |||
558 | struct brcmf_bus *bcmf_bus = devinfo->bus_pub.bus; | 568 | struct brcmf_bus *bcmf_bus = devinfo->bus_pub.bus; |
559 | int old_state; | 569 | int old_state; |
560 | 570 | ||
571 | brcmf_dbg(USB, "Enter, current state=%d, new state=%d\n", | ||
572 | devinfo->bus_pub.state, state); | ||
561 | 573 | ||
562 | if (devinfo->bus_pub.state == state) | 574 | if (devinfo->bus_pub.state == state) |
563 | return; | 575 | return; |
564 | 576 | ||
565 | old_state = devinfo->bus_pub.state; | 577 | old_state = devinfo->bus_pub.state; |
566 | brcmf_dbg(TRACE, "dbus state change from %d to to %d\n", | ||
567 | old_state, state); | ||
568 | 578 | ||
569 | /* Don't update state if it's PnP firmware re-download */ | 579 | /* Don't update state if it's PnP firmware re-download */ |
570 | if (state != BCMFMAC_USB_STATE_PNP_FWDL) /* TODO */ | 580 | if (state != BCMFMAC_USB_STATE_PNP_FWDL) /* TODO */ |
@@ -577,10 +587,10 @@ brcmf_usb_state_change(struct brcmf_usbdev_info *devinfo, int state) | |||
577 | 587 | ||
578 | /* update state of upper layer */ | 588 | /* update state of upper layer */ |
579 | if (state == BCMFMAC_USB_STATE_DOWN) { | 589 | if (state == BCMFMAC_USB_STATE_DOWN) { |
580 | brcmf_dbg(INFO, "DBUS is down\n"); | 590 | brcmf_dbg(USB, "DBUS is down\n"); |
581 | bcmf_bus->state = BRCMF_BUS_DOWN; | 591 | bcmf_bus->state = BRCMF_BUS_DOWN; |
582 | } else { | 592 | } else { |
583 | brcmf_dbg(INFO, "DBUS current state=%d\n", state); | 593 | brcmf_dbg(USB, "DBUS current state=%d\n", state); |
584 | } | 594 | } |
585 | } | 595 | } |
586 | 596 | ||
@@ -591,6 +601,8 @@ brcmf_usb_intr_complete(struct urb *urb) | |||
591 | (struct brcmf_usbdev_info *)urb->context; | 601 | (struct brcmf_usbdev_info *)urb->context; |
592 | bool killed; | 602 | bool killed; |
593 | 603 | ||
604 | brcmf_dbg(USB, "Enter, urb->status=%d\n", urb->status); | ||
605 | |||
594 | if (devinfo == NULL) | 606 | if (devinfo == NULL) |
595 | return; | 607 | return; |
596 | 608 | ||
@@ -621,6 +633,7 @@ static int brcmf_usb_tx(struct device *dev, struct sk_buff *skb) | |||
621 | struct brcmf_usbreq *req; | 633 | struct brcmf_usbreq *req; |
622 | int ret; | 634 | int ret; |
623 | 635 | ||
636 | brcmf_dbg(USB, "Enter, skb=%p\n", skb); | ||
624 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { | 637 | if (devinfo->bus_pub.state != BCMFMAC_USB_STATE_UP) { |
625 | /* TODO: handle suspend/resume */ | 638 | /* TODO: handle suspend/resume */ |
626 | return -EIO; | 639 | return -EIO; |
@@ -665,6 +678,7 @@ static int brcmf_usb_up(struct device *dev) | |||
665 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); | 678 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); |
666 | u16 ifnum; | 679 | u16 ifnum; |
667 | 680 | ||
681 | brcmf_dbg(USB, "Enter\n"); | ||
668 | if (devinfo->bus_pub.state == BCMFMAC_USB_STATE_UP) | 682 | if (devinfo->bus_pub.state == BCMFMAC_USB_STATE_UP) |
669 | return 0; | 683 | return 0; |
670 | 684 | ||
@@ -727,10 +741,10 @@ static void brcmf_usb_down(struct device *dev) | |||
727 | { | 741 | { |
728 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); | 742 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(dev); |
729 | 743 | ||
744 | brcmf_dbg(USB, "Enter\n"); | ||
730 | if (devinfo == NULL) | 745 | if (devinfo == NULL) |
731 | return; | 746 | return; |
732 | 747 | ||
733 | brcmf_dbg(TRACE, "enter\n"); | ||
734 | if (devinfo->bus_pub.state == BCMFMAC_USB_STATE_DOWN) | 748 | if (devinfo->bus_pub.state == BCMFMAC_USB_STATE_DOWN) |
735 | return; | 749 | return; |
736 | 750 | ||
@@ -808,7 +822,7 @@ brcmf_usb_dlneeded(struct brcmf_usbdev_info *devinfo) | |||
808 | struct bootrom_id_le id; | 822 | struct bootrom_id_le id; |
809 | u32 chipid, chiprev; | 823 | u32 chipid, chiprev; |
810 | 824 | ||
811 | brcmf_dbg(TRACE, "enter\n"); | 825 | brcmf_dbg(USB, "Enter\n"); |
812 | 826 | ||
813 | if (devinfo == NULL) | 827 | if (devinfo == NULL) |
814 | return false; | 828 | return false; |
@@ -822,11 +836,11 @@ brcmf_usb_dlneeded(struct brcmf_usbdev_info *devinfo) | |||
822 | chiprev = le32_to_cpu(id.chiprev); | 836 | chiprev = le32_to_cpu(id.chiprev); |
823 | 837 | ||
824 | if ((chipid & 0x4300) == 0x4300) | 838 | if ((chipid & 0x4300) == 0x4300) |
825 | brcmf_dbg(INFO, "chip %x rev 0x%x\n", chipid, chiprev); | 839 | brcmf_dbg(USB, "chip %x rev 0x%x\n", chipid, chiprev); |
826 | else | 840 | else |
827 | brcmf_dbg(INFO, "chip %d rev 0x%x\n", chipid, chiprev); | 841 | brcmf_dbg(USB, "chip %d rev 0x%x\n", chipid, chiprev); |
828 | if (chipid == BRCMF_POSTBOOT_ID) { | 842 | if (chipid == BRCMF_POSTBOOT_ID) { |
829 | brcmf_dbg(INFO, "firmware already downloaded\n"); | 843 | brcmf_dbg(USB, "firmware already downloaded\n"); |
830 | brcmf_usb_dl_cmd(devinfo, DL_RESETCFG, &id, | 844 | brcmf_usb_dl_cmd(devinfo, DL_RESETCFG, &id, |
831 | sizeof(struct bootrom_id_le)); | 845 | sizeof(struct bootrom_id_le)); |
832 | return false; | 846 | return false; |
@@ -843,7 +857,7 @@ brcmf_usb_resetcfg(struct brcmf_usbdev_info *devinfo) | |||
843 | struct bootrom_id_le id; | 857 | struct bootrom_id_le id; |
844 | u16 wait = 0, wait_time; | 858 | u16 wait = 0, wait_time; |
845 | 859 | ||
846 | brcmf_dbg(TRACE, "enter\n"); | 860 | brcmf_dbg(USB, "Enter\n"); |
847 | 861 | ||
848 | if (devinfo == NULL) | 862 | if (devinfo == NULL) |
849 | return -EINVAL; | 863 | return -EINVAL; |
@@ -861,7 +875,7 @@ brcmf_usb_resetcfg(struct brcmf_usbdev_info *devinfo) | |||
861 | } | 875 | } |
862 | 876 | ||
863 | if (id.chip == cpu_to_le32(BRCMF_POSTBOOT_ID)) { | 877 | if (id.chip == cpu_to_le32(BRCMF_POSTBOOT_ID)) { |
864 | brcmf_dbg(INFO, "download done %d ms postboot chip 0x%x/rev 0x%x\n", | 878 | brcmf_dbg(USB, "download done %d ms postboot chip 0x%x/rev 0x%x\n", |
865 | wait, le32_to_cpu(id.chip), le32_to_cpu(id.chiprev)); | 879 | wait, le32_to_cpu(id.chip), le32_to_cpu(id.chiprev)); |
866 | 880 | ||
867 | brcmf_usb_dl_cmd(devinfo, DL_RESETCFG, &id, | 881 | brcmf_usb_dl_cmd(devinfo, DL_RESETCFG, &id, |
@@ -911,7 +925,8 @@ brcmf_usb_dl_writeimage(struct brcmf_usbdev_info *devinfo, u8 *fw, int fwlen) | |||
911 | struct rdl_state_le state; | 925 | struct rdl_state_le state; |
912 | u32 rdlstate, rdlbytes; | 926 | u32 rdlstate, rdlbytes; |
913 | int err = 0; | 927 | int err = 0; |
914 | brcmf_dbg(TRACE, "fw %p, len %d\n", fw, fwlen); | 928 | |
929 | brcmf_dbg(USB, "Enter, fw %p, len %d\n", fw, fwlen); | ||
915 | 930 | ||
916 | bulkchunk = kmalloc(RDL_CHUNK, GFP_ATOMIC); | 931 | bulkchunk = kmalloc(RDL_CHUNK, GFP_ATOMIC); |
917 | if (bulkchunk == NULL) { | 932 | if (bulkchunk == NULL) { |
@@ -986,7 +1001,7 @@ brcmf_usb_dl_writeimage(struct brcmf_usbdev_info *devinfo, u8 *fw, int fwlen) | |||
986 | 1001 | ||
987 | fail: | 1002 | fail: |
988 | kfree(bulkchunk); | 1003 | kfree(bulkchunk); |
989 | brcmf_dbg(TRACE, "err=%d\n", err); | 1004 | brcmf_dbg(USB, "Exit, err=%d\n", err); |
990 | return err; | 1005 | return err; |
991 | } | 1006 | } |
992 | 1007 | ||
@@ -994,7 +1009,7 @@ static int brcmf_usb_dlstart(struct brcmf_usbdev_info *devinfo, u8 *fw, int len) | |||
994 | { | 1009 | { |
995 | int err; | 1010 | int err; |
996 | 1011 | ||
997 | brcmf_dbg(TRACE, "enter\n"); | 1012 | brcmf_dbg(USB, "Enter\n"); |
998 | 1013 | ||
999 | if (devinfo == NULL) | 1014 | if (devinfo == NULL) |
1000 | return -EINVAL; | 1015 | return -EINVAL; |
@@ -1007,7 +1022,7 @@ static int brcmf_usb_dlstart(struct brcmf_usbdev_info *devinfo, u8 *fw, int len) | |||
1007 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DL_DONE; | 1022 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DL_DONE; |
1008 | else | 1023 | else |
1009 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DL_PENDING; | 1024 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DL_PENDING; |
1010 | brcmf_dbg(TRACE, "exit: err=%d\n", err); | 1025 | brcmf_dbg(USB, "Exit, err=%d\n", err); |
1011 | 1026 | ||
1012 | return err; | 1027 | return err; |
1013 | } | 1028 | } |
@@ -1016,7 +1031,7 @@ static int brcmf_usb_dlrun(struct brcmf_usbdev_info *devinfo) | |||
1016 | { | 1031 | { |
1017 | struct rdl_state_le state; | 1032 | struct rdl_state_le state; |
1018 | 1033 | ||
1019 | brcmf_dbg(TRACE, "enter\n"); | 1034 | brcmf_dbg(USB, "Enter\n"); |
1020 | if (!devinfo) | 1035 | if (!devinfo) |
1021 | return -EINVAL; | 1036 | return -EINVAL; |
1022 | 1037 | ||
@@ -1039,7 +1054,7 @@ static int brcmf_usb_dlrun(struct brcmf_usbdev_info *devinfo) | |||
1039 | brcmf_dbg(ERROR, "Dongle not runnable\n"); | 1054 | brcmf_dbg(ERROR, "Dongle not runnable\n"); |
1040 | return -EINVAL; | 1055 | return -EINVAL; |
1041 | } | 1056 | } |
1042 | brcmf_dbg(TRACE, "exit\n"); | 1057 | brcmf_dbg(USB, "Exit\n"); |
1043 | return 0; | 1058 | return 0; |
1044 | } | 1059 | } |
1045 | 1060 | ||
@@ -1066,7 +1081,7 @@ brcmf_usb_fw_download(struct brcmf_usbdev_info *devinfo) | |||
1066 | int devid, chiprev; | 1081 | int devid, chiprev; |
1067 | int err; | 1082 | int err; |
1068 | 1083 | ||
1069 | brcmf_dbg(TRACE, "enter\n"); | 1084 | brcmf_dbg(USB, "Enter\n"); |
1070 | if (devinfo == NULL) | 1085 | if (devinfo == NULL) |
1071 | return -ENODEV; | 1086 | return -ENODEV; |
1072 | 1087 | ||
@@ -1094,7 +1109,7 @@ brcmf_usb_fw_download(struct brcmf_usbdev_info *devinfo) | |||
1094 | 1109 | ||
1095 | static void brcmf_usb_detach(struct brcmf_usbdev_info *devinfo) | 1110 | static void brcmf_usb_detach(struct brcmf_usbdev_info *devinfo) |
1096 | { | 1111 | { |
1097 | brcmf_dbg(TRACE, "devinfo %p\n", devinfo); | 1112 | brcmf_dbg(USB, "Enter, devinfo %p\n", devinfo); |
1098 | 1113 | ||
1099 | /* free the URBS */ | 1114 | /* free the URBS */ |
1100 | brcmf_usb_free_q(&devinfo->rx_freeq, false); | 1115 | brcmf_usb_free_q(&devinfo->rx_freeq, false); |
@@ -1129,6 +1144,7 @@ static int check_file(const u8 *headers) | |||
1129 | struct trx_header_le *trx; | 1144 | struct trx_header_le *trx; |
1130 | int actual_len = -1; | 1145 | int actual_len = -1; |
1131 | 1146 | ||
1147 | brcmf_dbg(USB, "Enter\n"); | ||
1132 | /* Extract trx header */ | 1148 | /* Extract trx header */ |
1133 | trx = (struct trx_header_le *) headers; | 1149 | trx = (struct trx_header_le *) headers; |
1134 | if (trx->magic != cpu_to_le32(TRX_MAGIC)) | 1150 | if (trx->magic != cpu_to_le32(TRX_MAGIC)) |
@@ -1150,6 +1166,7 @@ static int brcmf_usb_get_fw(struct brcmf_usbdev_info *devinfo) | |||
1150 | struct brcmf_usb_image *fw_image; | 1166 | struct brcmf_usb_image *fw_image; |
1151 | int err; | 1167 | int err; |
1152 | 1168 | ||
1169 | brcmf_dbg(USB, "Enter\n"); | ||
1153 | switch (devinfo->bus_pub.devid) { | 1170 | switch (devinfo->bus_pub.devid) { |
1154 | case 43143: | 1171 | case 43143: |
1155 | fwname = BRCMF_USB_43143_FW_NAME; | 1172 | fwname = BRCMF_USB_43143_FW_NAME; |
@@ -1166,7 +1183,7 @@ static int brcmf_usb_get_fw(struct brcmf_usbdev_info *devinfo) | |||
1166 | return -EINVAL; | 1183 | return -EINVAL; |
1167 | break; | 1184 | break; |
1168 | } | 1185 | } |
1169 | 1186 | brcmf_dbg(USB, "Loading FW %s\n", fwname); | |
1170 | list_for_each_entry(fw_image, &fw_image_list, list) { | 1187 | list_for_each_entry(fw_image, &fw_image_list, list) { |
1171 | if (fw_image->fwname == fwname) { | 1188 | if (fw_image->fwname == fwname) { |
1172 | devinfo->image = fw_image->image; | 1189 | devinfo->image = fw_image->image; |
@@ -1211,6 +1228,8 @@ static | |||
1211 | struct brcmf_usbdev *brcmf_usb_attach(struct brcmf_usbdev_info *devinfo, | 1228 | struct brcmf_usbdev *brcmf_usb_attach(struct brcmf_usbdev_info *devinfo, |
1212 | int nrxq, int ntxq) | 1229 | int nrxq, int ntxq) |
1213 | { | 1230 | { |
1231 | brcmf_dbg(USB, "Enter\n"); | ||
1232 | |||
1214 | devinfo->bus_pub.nrxq = nrxq; | 1233 | devinfo->bus_pub.nrxq = nrxq; |
1215 | devinfo->rx_low_watermark = nrxq / 2; | 1234 | devinfo->rx_low_watermark = nrxq / 2; |
1216 | devinfo->bus_pub.devinfo = devinfo; | 1235 | devinfo->bus_pub.devinfo = devinfo; |
@@ -1263,7 +1282,7 @@ struct brcmf_usbdev *brcmf_usb_attach(struct brcmf_usbdev_info *devinfo, | |||
1263 | if (!brcmf_usb_dlneeded(devinfo)) | 1282 | if (!brcmf_usb_dlneeded(devinfo)) |
1264 | return &devinfo->bus_pub; | 1283 | return &devinfo->bus_pub; |
1265 | 1284 | ||
1266 | brcmf_dbg(TRACE, "start fw downloading\n"); | 1285 | brcmf_dbg(USB, "Start fw downloading\n"); |
1267 | if (brcmf_usb_get_fw(devinfo)) | 1286 | if (brcmf_usb_get_fw(devinfo)) |
1268 | goto error; | 1287 | goto error; |
1269 | 1288 | ||
@@ -1286,6 +1305,7 @@ static int brcmf_usb_probe_cb(struct brcmf_usbdev_info *devinfo, | |||
1286 | int ret; | 1305 | int ret; |
1287 | struct device *dev = devinfo->dev; | 1306 | struct device *dev = devinfo->dev; |
1288 | 1307 | ||
1308 | brcmf_dbg(USB, "Enter\n"); | ||
1289 | bus_pub = brcmf_usb_attach(devinfo, BRCMF_USB_NRXQ, BRCMF_USB_NTXQ); | 1309 | bus_pub = brcmf_usb_attach(devinfo, BRCMF_USB_NRXQ, BRCMF_USB_NTXQ); |
1290 | if (!bus_pub) | 1310 | if (!bus_pub) |
1291 | return -ENODEV; | 1311 | return -ENODEV; |
@@ -1309,7 +1329,7 @@ static int brcmf_usb_probe_cb(struct brcmf_usbdev_info *devinfo, | |||
1309 | /* Attach to the common driver interface */ | 1329 | /* Attach to the common driver interface */ |
1310 | ret = brcmf_attach(hdrlen, dev); | 1330 | ret = brcmf_attach(hdrlen, dev); |
1311 | if (ret) { | 1331 | if (ret) { |
1312 | brcmf_dbg(ERROR, "dhd_attach failed\n"); | 1332 | brcmf_dbg(ERROR, "brcmf_attach failed\n"); |
1313 | goto fail; | 1333 | goto fail; |
1314 | } | 1334 | } |
1315 | 1335 | ||
@@ -1333,7 +1353,7 @@ brcmf_usb_disconnect_cb(struct brcmf_usbdev_info *devinfo) | |||
1333 | { | 1353 | { |
1334 | if (!devinfo) | 1354 | if (!devinfo) |
1335 | return; | 1355 | return; |
1336 | brcmf_dbg(TRACE, "enter: bus_pub %p\n", devinfo); | 1356 | brcmf_dbg(USB, "Enter, bus_pub %p\n", devinfo); |
1337 | 1357 | ||
1338 | brcmf_detach(devinfo->dev); | 1358 | brcmf_detach(devinfo->dev); |
1339 | kfree(devinfo->bus_pub.bus); | 1359 | kfree(devinfo->bus_pub.bus); |
@@ -1351,7 +1371,7 @@ brcmf_usb_probe(struct usb_interface *intf, const struct usb_device_id *id) | |||
1351 | u8 endpoint_num; | 1371 | u8 endpoint_num; |
1352 | struct brcmf_usbdev_info *devinfo; | 1372 | struct brcmf_usbdev_info *devinfo; |
1353 | 1373 | ||
1354 | brcmf_dbg(TRACE, "enter\n"); | 1374 | brcmf_dbg(USB, "Enter\n"); |
1355 | 1375 | ||
1356 | devinfo = kzalloc(sizeof(*devinfo), GFP_ATOMIC); | 1376 | devinfo = kzalloc(sizeof(*devinfo), GFP_ATOMIC); |
1357 | if (devinfo == NULL) | 1377 | if (devinfo == NULL) |
@@ -1452,9 +1472,9 @@ brcmf_usb_probe(struct usb_interface *intf, const struct usb_device_id *id) | |||
1452 | devinfo->interval = IFEPDESC(usb, CONTROL_IF, 0).bInterval; | 1472 | devinfo->interval = IFEPDESC(usb, CONTROL_IF, 0).bInterval; |
1453 | 1473 | ||
1454 | if (usb->speed == USB_SPEED_HIGH) | 1474 | if (usb->speed == USB_SPEED_HIGH) |
1455 | brcmf_dbg(INFO, "Broadcom high speed USB wireless device detected\n"); | 1475 | brcmf_dbg(USB, "Broadcom high speed USB wireless device detected\n"); |
1456 | else | 1476 | else |
1457 | brcmf_dbg(INFO, "Broadcom full speed USB wireless device detected\n"); | 1477 | brcmf_dbg(USB, "Broadcom full speed USB wireless device detected\n"); |
1458 | 1478 | ||
1459 | ret = brcmf_usb_probe_cb(devinfo, "", USB_BUS, 0); | 1479 | ret = brcmf_usb_probe_cb(devinfo, "", USB_BUS, 0); |
1460 | if (ret) | 1480 | if (ret) |
@@ -1476,10 +1496,11 @@ brcmf_usb_disconnect(struct usb_interface *intf) | |||
1476 | { | 1496 | { |
1477 | struct brcmf_usbdev_info *devinfo; | 1497 | struct brcmf_usbdev_info *devinfo; |
1478 | 1498 | ||
1479 | brcmf_dbg(TRACE, "enter\n"); | 1499 | brcmf_dbg(USB, "Enter\n"); |
1480 | devinfo = (struct brcmf_usbdev_info *)usb_get_intfdata(intf); | 1500 | devinfo = (struct brcmf_usbdev_info *)usb_get_intfdata(intf); |
1481 | brcmf_usb_disconnect_cb(devinfo); | 1501 | brcmf_usb_disconnect_cb(devinfo); |
1482 | kfree(devinfo); | 1502 | kfree(devinfo); |
1503 | brcmf_dbg(USB, "Exit\n"); | ||
1483 | } | 1504 | } |
1484 | 1505 | ||
1485 | /* | 1506 | /* |
@@ -1490,7 +1511,7 @@ static int brcmf_usb_suspend(struct usb_interface *intf, pm_message_t state) | |||
1490 | struct usb_device *usb = interface_to_usbdev(intf); | 1511 | struct usb_device *usb = interface_to_usbdev(intf); |
1491 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(&usb->dev); | 1512 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(&usb->dev); |
1492 | 1513 | ||
1493 | brcmf_dbg(TRACE, "enter\n"); | 1514 | brcmf_dbg(USB, "Enter\n"); |
1494 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DOWN; | 1515 | devinfo->bus_pub.state = BCMFMAC_USB_STATE_DOWN; |
1495 | devinfo->suspend_state = USBOS_SUSPEND_STATE_SUSPENDED; | 1516 | devinfo->suspend_state = USBOS_SUSPEND_STATE_SUSPENDED; |
1496 | return 0; | 1517 | return 0; |
@@ -1504,7 +1525,7 @@ static int brcmf_usb_resume(struct usb_interface *intf) | |||
1504 | struct usb_device *usb = interface_to_usbdev(intf); | 1525 | struct usb_device *usb = interface_to_usbdev(intf); |
1505 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(&usb->dev); | 1526 | struct brcmf_usbdev_info *devinfo = brcmf_usb_get_businfo(&usb->dev); |
1506 | 1527 | ||
1507 | brcmf_dbg(TRACE, "enter\n"); | 1528 | brcmf_dbg(USB, "Enter\n"); |
1508 | devinfo->suspend_state = USBOS_SUSPEND_STATE_DEVICE_ACTIVE; | 1529 | devinfo->suspend_state = USBOS_SUSPEND_STATE_DEVICE_ACTIVE; |
1509 | brcmf_bus_start(&usb->dev); | 1530 | brcmf_bus_start(&usb->dev); |
1510 | return 0; | 1531 | return 0; |
@@ -1554,12 +1575,14 @@ static void brcmf_release_fw(struct list_head *q) | |||
1554 | 1575 | ||
1555 | void brcmf_usb_exit(void) | 1576 | void brcmf_usb_exit(void) |
1556 | { | 1577 | { |
1578 | brcmf_dbg(USB, "Enter\n"); | ||
1557 | usb_deregister(&brcmf_usbdrvr); | 1579 | usb_deregister(&brcmf_usbdrvr); |
1558 | brcmf_release_fw(&fw_image_list); | 1580 | brcmf_release_fw(&fw_image_list); |
1559 | } | 1581 | } |
1560 | 1582 | ||
1561 | void brcmf_usb_init(void) | 1583 | void brcmf_usb_init(void) |
1562 | { | 1584 | { |
1585 | brcmf_dbg(USB, "Enter\n"); | ||
1563 | INIT_LIST_HEAD(&fw_image_list); | 1586 | INIT_LIST_HEAD(&fw_image_list); |
1564 | usb_register(&brcmf_usbdrvr); | 1587 | usb_register(&brcmf_usbdrvr); |
1565 | } | 1588 | } |