QNX Technical Articles
Cypress (Broadcom) BCM4359 Wireless Driver for QNX® SDP 7.0 (Build ID 1072): Release Notes
Date of this edition: January 28, 2019
Target OS: This release is compatible with targets that are running the QNX® Neutrino® RTOS 7.0, including x86 32-bit, x86 64-bit, ARMv7 32-bit, and ARMv8 64-bit targets.
Host OS: You can install this release onto a development host that has an installation of the QNX® Software Development Platform (SDP) 7.0 and runs one of the following operating systems:
- Microsoft Windows 10 Pro 64-bit, Windows 8.1 Pro 64-bit, or Windows 7 Professional 64-bit
- macOS version 10.10, 10.11, 10.12
- Linux Red Hat Enterprise Linux 7 64-bit, or Ubuntu Desktop 16.04 LTS 64-bit
![]() |
|
Contents
Throughout this document, you may see reference keys or reference numbers associated with particular issues, changes, etc. When corresponding with our Technical Support staff about a given issue, please quote the relevant key or number. You might also find the keys and numbers useful for tracking issues as they become fixed.
What's in this release?
This release includes the packages listed below, which you'll find in the indicated areas in the QNX Software Center.
Under
:- QNX SDP7.0 wireless driver for the Broadcom BCM4359:
- com.qnx.sdp.target.driver.broadcom_bcm4359 (7.0.1072.S201811091903)
- QNX SDP7.0 wireless driver for the Broadcom BCM4359 (Debug Symbols):
- com.qnx.sdp.target.driver.broadcom_bcm4359.dbg (7.0.1072.S201811091903)
Under
:- QNX SDP7.0 Networking - WPA/WPA2/IEEE 802.1x Supplicant:
- com.qnx.sdp.target.net.wpa_supplicant (7.0.1072.S201811091903)
- QNX SDP7.0 Networking - WPA/WPA2/IEEE 802.1x Supplicant (Debug Symbols):
- com.qnx.sdp.target.net.wpa_supplicant.dbg (7.0.1072.S201811091903)
To see a list of the contents of a package, right-click it in the QNX Software Center, choose Properties, and then click Package Contents.
Overview
This release provides an updated wireless driver for the Broadcom 4359 Wi-Fi chip. The updated version addresses a vulnerability, described in CVE-2018-14526, in which the integrity of EAPOL-Key messages is not checked, allowing an attacker within range of the Access Point and client to recover sensitive information.
The driver supports the Wi-Fi chip using a PCIe physical interface, and works with the common wpa_supplicant and hostapd utilities provided with QNX SDP 7.0. The driver uses a QNX Wi-Fi Driver Integration (QWDI) shim layer, which enables the common wpa_supplicant to be used for multiple Wi-Fi drivers.
A newer version of firmware for the Broadcom 4359 chipset is included: firmware.bcm4359.bcm.default.bin version 9.40.94.16. Notably, the new firmware addresses the elevation of privilege vulnerability described in CVE-2017-0786 and CVE-2017-0791. For more firmware details, please refer to your Cypress contact.
Files included in this release are installed in the target area of your QNX SDP 7.0 installation, $QNX_TARGET/.
Binaries and utilities
This release contains the following library files and utilities:
- target/qnx7/ARCH/lib/dll/devnp-qwdi-2.5_bcm4359.so
- target/qnx7/ARCH/usr/sbin/dhd-bcm4359
- target/qnx7/ARCH/usr/sbin/wl-bcm4359
- target/qnx7/etc/firmware/4359.default.clm_blob
- target/qnx7/etc/firmware/bcm_firmware_pkg.tar
- target/qnx7/etc/firmware/firmware.bcm4359.bcm.default.bin
- target/qnx7/etc/firmware/nvram-murata-bcm989359_Type1FD_160307.txt
- target/qnx7/etc/firmware/nvram.bcm4359.bcm.default.txt
where ARCH refers to the supported architecture variants for the target board, which are: x86, x86_64, aarch64le, or armle-v7.
This release uses the following QNX SDP 7.0 library files and utilities:
- target/qnx7/ARCH/usr/sbin/wpa_supplicant-2.5
- target/qnx7/ARCH/usr/sbin/wpa_passphrase-2.5
- target/qnx7/ARCH/usr/sbin/wpa_cli-2.5
- target/qnx7/ARCH/usr/sbin/hostapd_cli-2.5
- target/qnx7/ARCH/usr/sbin/hostapd-2.5
- target/qnx7/ARCH/usr/random (required for WPA/WPA2 security)
- target/qnx7/ARCH/sbin/brconfig (required for AP mode)
This release uses the following library files and utilities from the Board Support Package (BSP) for the specific host:
- target/qnx7/ARCH/sbin/pci-server (BSP-specific PCI server version 2.0)
Sample startup commands
Prior to mounting the Wi-Fi driver, you must ensure that the PCIe server is running. You can start the server with this command:
sbin/pci-server --aspace-enable
Now you can mount the Wi-Fi driver. The driver is "added" to io-pkt, the QNX Neutrino TCP/IP stack. For most hardware boards, you can use this command:
mount -T io-pkt -o fw=/etc/firmware/firmware.bcm4359.bcm.default.bin,nvram=/etc/firmware/nvram.bcm4359.bcm.default.txt,qwdi_clm_path=/etc/firmware/4359.default.clm_blob,qwdi_dbg_level=3,dhd_msg_level=0x1 /lib/dll/devnp-qwdi-2.5_bcm4359.so
The qwdi_clm_path=/etc/firmware/4359.default.clm_blob setting is used for country frequency regulatory requirements.
For ARMv8 64-bit boards, you need to add the qwdi_below4g=1 parameter:
mount -T io-pkt -o qwdi_below4g=1,fw=/etc/firmware/firmware.bcm4359.bcm.default.bin,nvram=/etc/firmware/nvram.bcm4359.bcm.default.txt,qwdi_clm_path=/etc/firmware/4359.default.clm_blob,qwdi_dbg_level=3,dhd_msg_level=0x1 /lib/dll/devnp-qwdi-2.5_bcm4359.so
You can run ifconfig to display the interfaces that this startup code creates. For example:
AP only: bcm0 STA only: bcm0 2AP + STA: bcm0 and bcm1 are AP bcm2 is STA STA + P2P: bcm0 is STA bcm_p2pdev0 is p2p_dev bcm2 is p2p_grp
Fixed issues
This release contains updates and fixes for several Broadcom driver and firmware issues, which are listed below.
Issue key | Issue number | Summary | Resolution |
---|---|---|---|
COREOS-109218 | 1597035 | Broadcom 4359 & WTS test case 5.2.53 test case fails because IP layer is not established after association | Fixed / Completed |
HW-15046 | 1685243 | Broadcom 4359 fails sniffer check on optional test 5.2.16 EAPOL_Request Present | Fixed / Completed |
HW-15647 | 2207549 | Broadcom 4359 fails Optional P2P WFA test 5.1.11 | Fixed / Completed |
HW-15648 | 2207555 | Broadcom 4359 fails Optional P2P WFA test 7.1.5 | Fixed / Completed |
HW-15649 | 2207569 | Broadcom4359 with FW 9_40_38 | AP Mode Test 4.2.8 fails due to low throughput Optional testcase | Fixed / Completed |
HW-15650 | 2207591 | Broadcom4359 with FW 9_40_38 | AP Mode Test 4.2.10-WPA2PSK fails DTIM Sniffer Check Mandatory testcase | Fixed / Completed |
HW-15651 | 2207615 | Broadcom4359 with FW 9_40_38 | AP Mode Test 4.2.35_1SS fails 0 RX throughput from Intel STA Optional testcase | Fixed / Completed |
HW-15652 | 2207616 | Broadcom4359 with FW 9_40_38 | AP Mode Test 4.2.35_2SS fails 0 RX throughput from Intel STA Optional testcase | Fixed / Completed |
HW-15866 | 2234015 | N-5.2.8 Optional test case fails for Broadcom 4359 fails because throughput rates are low in DT2 phase | Fixed / Completed |
HW-15868 | 2234267 | N-4.2.20 WMM Mandatory Test Case for Broadcom 4359 Fails in step 5 throughput | Fixed / Completed |
HW-15869 | 2234275 | N-4.2.21 WMM Mandatory Test Case for Broadcom 4359 Fails in step 4 Phase 2 throughput | Fixed / Completed |
HW-15875 | 2235564 | N-4.2.22 WMM Mandatory Test Case for Broadcom 4359 Fails in step 5, 8, 10 throughput | Cannot Reproduce |
HW-15876 | 2235582 | N-4.2.23 WMM Mandatory Test Case for Broadcom 4359 Fails in step 4, 5 throughput | Fixed / Completed |
HW-15877 | 2235613 | Broadcom 4359 N-4.2.27_AGN (Mandatory) test case Fails because 20/40mhz bandwidth setting is not enabled | Fixed / Completed |
HW-16107 | 2369027 | Use bcm1 and bcm2 for AP+AP mode | Fixed / Completed |
HW-16392 | 2514664 | BCM4359: Need to call interface_remove when hostapd on bcm1 is slayed | Fixed / Completed |
HW-16446 | 2519936 | Update Firmware folder contents to include TAR file of all variations of firmware provided by Cypress | Fixed / Completed |
HW-16547 | 2527406 | BCM4359: If p2p negotiation failed, running p2p_connect again will return FAIL | Fixed / Completed |
HW-16565 | 2529127 | BCM4359: AGO+AGO+STA: If two AGOs are removed, can't scan on STA interface | Fixed / Completed |
Known issues
Wi-Fi Alliance Test Suite compliance
Wi-Fi Alliance pre-certification testing passes at an acceptable rate:
- 95% pass rate for the test cases in the 11n-STA, 11n-AP, P2P, WPSv2, and WMMPS Wi-Fi Alliance test suites
The following table provides details for test cases that did not pass:
Issue key | Issue number | Summary | Previous or new issue |
---|---|---|---|
COREOS-111396 | 2219293 | Add DISABLEand ENABLEto wpa_supplicant control interface |
Previous |
HW-15638 | 2206249 | BCM4359-Murata: 2G AP and 2G AGO does not have any beacon | Previous |
HW-15770 | 2221808 | bcm4359-qwdi-driver: examine code, identify and fix buffer overflow issue | Previous |
HW-15937 | 2245295 | BCM4359: AGO: match hostapd config parameters | Previous |
HW-16266 | 2497367 | wpa_cli-2.5 scan ssid hexstring will start an active scan to find network with SSID=hexstring. This is useful to display the hidden SSID. | Previous |
HW-16960 | 2581541 | BCM4359: System Test 2 AP with 1 STA, TXFAIL failure on BCM2 interface | Previous |
HW-17527 | 2645676 | Add pthread id for bcm4359 dhd print | New |
HW-17541 | 2646392 | BCM4359: escan results: do not reallocate memory if the reported Bssid has already been found | New |
HW-17660 | 2650219 | BC4359: Repeating the Wifi scenario AP+AP -> AGO+AGO without remounting the driver fails | New |
HW-17663 | 2650865 | Broadcom 4359 fails mandatory AP mode test N-4.2.22, low throughput step 6 | New |
HW-17748 | 2655741 | BCM4350: Failed to set vendor IE with the IE length EF and FF | New |
Technical support
To obtain technical support for any QNX product, visit the Support area on our website (www.qnx.com). You'll find a wide range of support options, including community forums.