From 9e5fed2b6893581d0ad4face7d716a728687c7c9 Mon Sep 17 00:00:00 2001 From: Prashant Malani Date: Mon, 18 May 2015 13:07:52 -0700 Subject: bcm4343: Add firmware BC4343A1 chip to 7.13.53.1 This is initial firmware for BCM4343A1 chip Note that it needs the DHD version (1.141.64.24) or later. - Initial release - PMF and TDLS function added Bug: 22028689 Change-Id: I993d1943c034ea8eb1e22cc7a5567dad3f730a6b --- bcmdhd/firmware/bcm4343/device-bcm.mk | 17 +++++++++++++++-- bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin | Bin 0 -> 325163 bytes bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin | Bin 0 -> 296948 bytes 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin create mode 100644 bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin diff --git a/bcmdhd/firmware/bcm4343/device-bcm.mk b/bcmdhd/firmware/bcm4343/device-bcm.mk index f3cf3e3..2bacea8 100644 --- a/bcmdhd/firmware/bcm4343/device-bcm.mk +++ b/bcmdhd/firmware/bcm4343/device-bcm.mk @@ -17,6 +17,19 @@ BCM_FW_SRC_FILE_STA := fw_bcm4343.bin BCM_FW_SRC_FILE_AP := fw_bcm4343_apsta.bin +ifneq (,$(WIFI_FW_VER)) +ifneq (,$(filter a0, $(WIFI_FW_VER))) PRODUCT_COPY_FILES += \ - hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_STA):system/vendor/firmware/fw_bcmdhd.bin \ - hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_AP):system/vendor/firmware/fw_bcmdhd_apsta.bin + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_STA):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd.bin \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_AP):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd_apsta.bin +endif +ifneq (,$(filter a1, $(WIFI_FW_VER))) +PRODUCT_COPY_FILES += \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd.bin_a1 \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd_apsta.bin_a1 +endif +else +PRODUCT_COPY_FILES += \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_STA):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd.bin \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4343/$(BCM_FW_SRC_FILE_AP):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd_apsta.bin +endif diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin new file mode 100644 index 0000000..62ac010 Binary files /dev/null and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin differ diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin new file mode 100644 index 0000000..464cef9 Binary files /dev/null and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin differ -- cgit v1.1 From 0f377dc8cb3680524b9b069dc4493b75d8928e0f Mon Sep 17 00:00:00 2001 From: Prashant Malani Date: Fri, 22 May 2015 13:30:32 +0900 Subject: bcm4343: Update firmware BCM4343A1 chip to 7.13.53.2 It has new Country Code rev - XZ/999, BD/1 and MX/44. Change-Id: Ib87268601c6f2963b5c9627d1263809b0f8e5e68 --- bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin | Bin 325163 -> 324689 bytes bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin | Bin 296948 -> 296466 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin index 62ac010..49e501f 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin differ diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin index 464cef9..e3283dd 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin differ -- cgit v1.1 From 2bdea8b234cc07e4de0ad91a58b0180e68ad485d Mon Sep 17 00:00:00 2001 From: Prashant Malani Date: Thu, 15 Oct 2015 13:58:34 +0900 Subject: bcm4343: Update firmware BCM4343A0/BCM4343A1 resolved high current consumption issue after roam failure -BCM4343A0: ver 7.10.226.54.5 -BCM4343A1: ver 7.13.53.4 Change-Id: Ib9853b0289e763f68b6979f8607e92221cf4d61d --- bcmdhd/firmware/bcm4343/fw_bcm4343.bin | Bin 342252 -> 342292 bytes bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin | Bin 324689 -> 325341 bytes bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin | Bin 296466 -> 297097 bytes bcmdhd/firmware/bcm4343/fw_bcm4343_apsta.bin | Bin 313848 -> 313852 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343.bin index c6e8174..949d379 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343.bin differ diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin index 49e501f..efa0ea6 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin differ diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin index e3283dd..0ea4a9a 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin differ diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_apsta.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_apsta.bin index a23e5f5..904cc3d 100644 Binary files a/bcmdhd/firmware/bcm4343/fw_bcm4343_apsta.bin and b/bcmdhd/firmware/bcm4343/fw_bcm4343_apsta.bin differ -- cgit v1.1 From c907db16d1260243ada1baa79c0e3971df219daf Mon Sep 17 00:00:00 2001 From: Zach Jang Date: Tue, 27 Oct 2015 03:03:29 +0000 Subject: Revert "net: wireless: bcmdhd: update bcm4358 FW (7.112.100.41)" This reverts commit 047718e8e7c0c9bb82e5c595b6256f2330a85f66. Change-Id: I0c97502fee0b0c0a93a71b3be9bec8ff1ec4e0cc --- bcmdhd/firmware/bcm4358/fw_bcm4358.bin | Bin 628231 -> 628375 bytes bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin | Bin 557013 -> 557189 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin index 1cb7e0a..7ce4626 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin differ diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin index 28e5902..63d80bd 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin differ -- cgit v1.1 From be0867bc045054d8a6e412576c794f5144a1709a Mon Sep 17 00:00:00 2001 From: Zach Jang Date: Tue, 27 Oct 2015 16:38:04 +0000 Subject: Revert "net: wireless: bcmdhd: update bcm4358 FW (7.112.100.44)" This reverts commit 06a2d34583130aa2c8d923f2f850dce1ffcf3349. Change-Id: I26ea1c34eb20d8ed45cc70c11cca5e9a1549469f --- bcmdhd/firmware/bcm4358/fw_bcm4358.bin | Bin 628473 -> 628231 bytes bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin | Bin 557397 -> 557013 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin index 70ea345..1cb7e0a 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin differ diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin index 50b4fbe..28e5902 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin differ -- cgit v1.1 From 6c751ac0f668a9b70d11f428a52743ff54288172 Mon Sep 17 00:00:00 2001 From: Zach Jang Date: Tue, 27 Oct 2015 16:42:36 +0000 Subject: Revert "Revert "net: wireless: bcmdhd: update bcm4358 FW (7.112.100.41)"" This reverts commit c907db16d1260243ada1baa79c0e3971df219daf. Change-Id: I5305c66916453add2f5ba62a06ad641165e36014 --- bcmdhd/firmware/bcm4358/fw_bcm4358.bin | Bin 628375 -> 628231 bytes bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin | Bin 557189 -> 557013 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin index 7ce4626..1cb7e0a 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin differ diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin index 63d80bd..28e5902 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin differ -- cgit v1.1 From 0bdf1aefc46f6ec807c9fd768353696316b9a4c9 Mon Sep 17 00:00:00 2001 From: Zach Jang Date: Tue, 27 Oct 2015 16:43:33 +0000 Subject: Revert "Revert "net: wireless: bcmdhd: update bcm4358 FW (7.112.100.44)"" This reverts commit be0867bc045054d8a6e412576c794f5144a1709a. Change-Id: Id38e35dea2a6b406df1f34e0fbbd88367598e809 --- bcmdhd/firmware/bcm4358/fw_bcm4358.bin | Bin 628231 -> 628473 bytes bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin | Bin 557013 -> 557397 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin index 1cb7e0a..70ea345 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358.bin differ diff --git a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin index 28e5902..50b4fbe 100644 Binary files a/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin and b/bcmdhd/firmware/bcm4358/fw_bcm4358_ap.bin differ -- cgit v1.1 From 2ce1c4952d871f2baad0bc69dd8500f830f43db4 Mon Sep 17 00:00:00 2001 From: Paul Stewart Date: Wed, 18 Nov 2015 10:28:32 -0800 Subject: Fix use-after-free in wifi_cleanup() Release reference to cmd only after possibly calling getType(). BUG: 25753768 Change-Id: Id2156ce51acec04e8364706cf7eafc7d4adae9eb (cherry picked from commit d7f3cb9915d9ac514393d0ad7767662958054b8f https://googleplex-android-review.git.corp.google.com/#/c/815223) --- bcmdhd/wifi_hal/wifi_hal.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bcmdhd/wifi_hal/wifi_hal.cpp b/bcmdhd/wifi_hal/wifi_hal.cpp index b27bac2..982702a 100644 --- a/bcmdhd/wifi_hal/wifi_hal.cpp +++ b/bcmdhd/wifi_hal/wifi_hal.cpp @@ -310,12 +310,12 @@ void wifi_cleanup(wifi_handle handle, wifi_cleaned_up_handler handler) pthread_mutex_unlock(&info->cb_lock); cmd->cancel(); pthread_mutex_lock(&info->cb_lock); - /* release reference added when command is saved */ - cmd->releaseRef(); if (num_cmd == info->num_cmd) { ALOGE("Cancelling command %p:%s did not work", cmd, cmd->getType()); bad_commands++; } + /* release reference added when command is saved */ + cmd->releaseRef(); } } -- cgit v1.1 From 3a30c034a9f319692c2ba131906e009eaa254817 Mon Sep 17 00:00:00 2001 From: Vinit Deshpande Date: Fri, 11 Dec 2015 13:44:59 -0800 Subject: Fix a potential leak of nl_msg objects It was discovered on other repos that a leak can be caused by repeated usage of create(). Bug: 26116598 Change-Id: Ie6cd318171e58d3ffa1a6c8f58cfa38ea7d78b00 --- bcmdhd/wifi_hal/cpp_bindings.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bcmdhd/wifi_hal/cpp_bindings.cpp b/bcmdhd/wifi_hal/cpp_bindings.cpp index 5b085d8..399199d 100644 --- a/bcmdhd/wifi_hal/cpp_bindings.cpp +++ b/bcmdhd/wifi_hal/cpp_bindings.cpp @@ -538,6 +538,9 @@ int WifiEvent::parse() { } int WifiRequest::create(int family, uint8_t cmd, int flags, int hdrlen) { + + destroy(); + mMsg = nlmsg_alloc(); if (mMsg != NULL) { genlmsg_put(mMsg, /* pid = */ 0, /* seq = */ 0, family, -- cgit v1.1