From ef44a0d652ff4577cfbac6adc04d0132ca5f352a1d32838ab55928c3399c2e60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 30 Aug 2018 14:05:28 +0000 Subject: [PATCH] Accepting request 632337 from home:favogt:branches:hardware - Add bluetooth firmware for RPi 3 B+ (bsc#1103587) - Update brcmfmac43430-sdio.txt and brcmfmac43455-sdio.txt: * Improved brcmfmac BT coexistence parameters - Switch BCM43430A1.hcd to official source: * No changelog available - Use %license - Run spec-cleaner OBS-URL: https://build.opensuse.org/request/show/632337 OBS-URL: https://build.opensuse.org/package/show/hardware/bcm43xx-firmware?expand=0&rev=19 --- .gitattributes | 1 + BCM43430A1.hcd | 4 +- BCM4345C0.hcd | 3 + LICENCE.cypress | 138 +++++++++++++++++++++++++++ bcm43xx-firmware.changes | 11 +++ bcm43xx-firmware.spec | 24 ++--- brcmfmac43430-sdio-raspberrypi3b.txt | 5 + brcmfmac43455-sdio-raspberrypi3b.txt | 5 + 8 files changed, 178 insertions(+), 13 deletions(-) create mode 100644 BCM4345C0.hcd create mode 100644 LICENCE.cypress diff --git a/.gitattributes b/.gitattributes index bd2728d..a978aff 100644 --- a/.gitattributes +++ b/.gitattributes @@ -23,3 +23,4 @@ *.zst filter=lfs diff=lfs merge=lfs -text ## Specific LFS patterns BCM43430A1.hcd filter=lfs diff=lfs merge=lfs -text +BCM4345C0.hcd filter=lfs diff=lfs merge=lfs -text diff --git a/BCM43430A1.hcd b/BCM43430A1.hcd index a1a8b06..b3c57e0 100644 --- a/BCM43430A1.hcd +++ b/BCM43430A1.hcd @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:591b2279e01f462a09c113e4b9ea80236c5d26d3b1b109aa189838b2bc6004ae -size 35976 +oid sha256:8dd70b9003d39cb6175b4f3cd509666dad66ad23d3be1a68385817fb814c8930 +size 36264 diff --git a/BCM4345C0.hcd b/BCM4345C0.hcd new file mode 100644 index 0000000..44f93db --- /dev/null +++ b/BCM4345C0.hcd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:042a8c234beaa9abb8d6156430e44af983f861036e1d54ffe8cabcc0dab76a43 +size 59237 diff --git a/LICENCE.cypress b/LICENCE.cypress new file mode 100644 index 0000000..a9d9a8b --- /dev/null +++ b/LICENCE.cypress @@ -0,0 +1,138 @@ +### CYPRESS WIRELESS CONNECTIVITY DEVICES +### DRIVER END USER LICENSE AGREEMENT (SOURCE AND BINARY DISTRIBUTION) + +PLEASE READ THIS END USER LICENSE AGREEMENT ("Agreement") CAREFULLY BEFORE +DOWNLOADING, INSTALLING, OR USING THIS SOFTWARE, ANY ACCOMPANYING +DOCUMENTATION, OR ANY UPDATES PROVIDED BY CYPRESS ("Software"). BY +DOWNLOADING, INSTALLING, OR USING THE SOFTWARE, YOU ARE AGREEING TO BE BOUND +BY THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS +AGREEMENT, PROMPTLY RETURN AND DO NOT USE THE SOFTWARE. IF YOU HAVE +PURCHASED THE SOFTWARE, YOUR RIGHT TO RETURN THE SOFTWARE EXPIRES 30 DAYS +AFTER YOUR PURCHASE AND APPLIES ONLY TO THE ORIGINAL PURCHASER. + +Software Provided in Binary Code Form. This paragraph applies to any Software +provided in binary code form. Subject to the terms and conditions of this +Agreement, Cypress Semiconductor Corporation ("Cypress") grants you a +non-exclusive, non-transferable license under its copyright rights in the +Software to reproduce and distribute the Software in object code form only, +solely for use in connection with Cypress integrated circuit products +("Purpose"). + +Software Provided in Source Code Form. This paragraph applies to any Software +provided in source code form ("Cypress Source Code"). Subject to the terms and +conditions of this Agreement, Cypress grants you a non-exclusive, +non-transferable license under its copyright rights in the Cypress Source Code +to reproduce, modify, compile, and distribute the Cypress Source Code (whether +in source code form or as compiled into binary code form) solely for the +Purpose. Cypress retains ownership of the Cypress Source Code and any compiled +version thereof. Subject to Cypress' ownership of the underlying Cypress +Source Code, you retain ownership of any modifications you make to the +Cypress Source Code. You agree not to remove any Cypress copyright or other +notices from the Cypress Source Code and any modifications thereof. Any +reproduction, modification, translation, compilation, or representation of +the Cypress Source Code except as permitted in this paragraph is prohibited +without the express written permission of Cypress. + +Free and Open Source Software. Portions of the Software may be licensed under +free and/or open source licenses such as the GNU General Public License +("FOSS"). FOSS is subject to the applicable license agreement and not this +Agreement. If you are entitled to receive the source code from Cypress for any +FOSS included with the Software, either the source code will be included with +the Software or you may obtain the source code at no charge from +. The applicable license terms will +accompany each source code package. To review the license terms applicable to +any FOSS for which Cypress is not required to provide you with source code, +please see the Software's installation directory on your computer. + +Proprietary Rights. The Software, including all intellectual property rights +therein, is and will remain the sole and exclusive property of Cypress or its +suppliers. Except as otherwise expressly provided in this Agreement, you may +not: (i) modify, adapt, or create derivative works based upon the Software; +(ii) copy the Software; (iii) except and only to the extent explicitly +permitted by applicable law despite this limitation, decompile, translate, +reverse engineer, disassemble or otherwise reduce the Software to +human-readable form; or (iv) use the Software other than for the Purpose. + +No Support. Cypress may, but is not required to, provide technical support for +the Software. + +Term and Termination. This Agreement is effective until terminated. This +Agreement and Your license rights will terminate immediately without notice +from Cypress if you fail to comply with any provision of this Agreement. Upon +termination, you must destroy all copies of Software in your possession or +control. Termination of this Agreement will not affect any licenses validly +granted as of the termination date to any end users of the Software. The +following paragraphs shall survive any termination of this Agreement: "Free and +Open Source Software," "Proprietary Rights," "Compliance With Law," +"Disclaimer," "Limitation of Liability," and "General." + +Compliance With Law. Each party agrees to comply with all applicable laws, +rules and regulations in connection with its activities under this Agreement. +Without limiting the foregoing, the Software may be subject to export control +laws and regulations of the United States and other countries. You agree to +comply strictly with all such laws and regulations and acknowledge that you +have the responsibility to obtain licenses to export, re-export, or import +the Software. + +Disclaimer. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, CYPRESS MAKES +NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THE SOFTWARE, +INCLUDING, BUT NOT LIMITED TO, INFRINGEMENT AND THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the +right to make changes to the Software without notice. Cypress does not assume +any liability arising out of the application or use of Software or any +product or circuit described in the Software. Cypress does not authorize its +products for use as critical components in life-support systems where a +malfunction or failure may reasonably be expected to result in significant +injury to the user. The inclusion of Cypress' product in a life-support +system or application implies that the manufacturer of such system or +application assumes all risk of such use and in doing so indemnifies Cypress +against all charges. + +Limitation of Liability. IN NO EVENT WILL CYPRESS OR ITS SUPPLIERS, +RESELLERS, OR DISTRIBUTORS BE LIABLE FOR ANY LOST REVENUE, PROFIT, OR DATA, +OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL, OR PUNITIVE DAMAGES +HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE +USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF CYPRESS OR ITS SUPPLIERS, +RESELLERS, OR DISTRIBUTORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. IN NO EVENT SHALL CYPRESS' OR ITS SUPPLIERS' RESELLERS', OR +DISTRIBUTORS' TOTAL LIABILITY TO YOU, WHETHER IN CONTRACT, TORT (INCLUDING +NEGLIGENCE), OR OTHERWISE, EXCEED THE PRICE PAID BY YOU FOR THE SOFTWARE. +THE FOREGOING LIMITATIONS SHALL APPLY EVEN IF THE ABOVE-STATED WARRANTY FAILS +OF ITS ESSENTIAL PURPOSE. BECAUSE SOME STATES OR JURISDICTIONS DO NOT ALLOW +LIMITATION OR EXCLUSION OF CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE +LIMITATION MAY NOT APPLY TO YOU. + +Restricted Rights. The Software under this Agreement is commercial computer +software as that term is described in 48 C.F.R. 252.227-7014(a)(1). If +acquired by or on behalf of a civilian agency, the U.S. Government acquires +this commercial computer software and/or commercial computer software +documentation subject to the terms of this Agreement as specified in 48 +C.F.R. 12.212 (Computer Software) and 12.211 (Technical Data) of the Federal +Acquisition Regulations ("FAR") and its successors. If acquired by or on +behalf of any agency within the Department of Defense ("DOD"), the U.S. +Government acquires this commercial computer software and/or commercial +computer software documentation subject to the terms of this Agreement as +specified in 48 C.F.R. 227.7202-3 of the DOD FAR Supplement ("DFAR") and its +successors. + +General. This Agreement will bind and inure to the benefit of each party's +successors and assigns, provided that you may not assign or transfer this +Agreement, in whole or in part, without Cypress' written consent. This +Agreement shall be governed by and construed in accordance with the laws of +the State of California, United States of America, as if performed wholly +within the state and without giving effect to the principles of conflict of +law. The parties consent to personal and exclusive jurisdiction of and venue +in, the state and federal courts within Santa Clara County, California; +provided however, that nothing in this Agreement will limit Cypress' right to +bring legal action in any venue in order to protect or enforce its +intellectual property rights. No failure of either party to exercise or +enforce any of its rights under this Agreement will act as a waiver of such +rights. If any portion hereof is found to be void or unenforceable, the +remaining provisions of this Agreement shall remain in full force and +effect. This Agreement is the complete and exclusive agreement between the +parties with respect to the subject matter hereof, superseding and replacing +any and all prior agreements, communications, and understandings (both +written and oral) regarding such subject matter. Any notice to Cypress will +be deemed effective when actually received and must be sent to Cypress +Semiconductor Corporation, ATTN: Chief Legal Officer, 198 Champion Court, San +Jose, CA 95134 USA. diff --git a/bcm43xx-firmware.changes b/bcm43xx-firmware.changes index 14e772d..8f893ff 100644 --- a/bcm43xx-firmware.changes +++ b/bcm43xx-firmware.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Thu Aug 30 12:06:49 UTC 2018 - fvogt@suse.com + +- Add bluetooth firmware for RPi 3 B+ (bsc#1103587) +- Update brcmfmac43430-sdio.txt and brcmfmac43455-sdio.txt: + * Improved brcmfmac BT coexistence parameters +- Switch BCM43430A1.hcd to official source: + * No changelog available +- Use %license +- Run spec-cleaner + ------------------------------------------------------------------- Tue Jun 26 17:53:48 CEST 2018 - tiwai@suse.de diff --git a/bcm43xx-firmware.spec b/bcm43xx-firmware.spec index 50663c7..af6a2f2 100644 --- a/bcm43xx-firmware.spec +++ b/bcm43xx-firmware.spec @@ -22,13 +22,15 @@ Release: 0 Summary: Firmware for the Broadcom/Cypress BCM43xx chipset family License: SUSE-Firmware Group: System/Kernel -Url: https://community.cypress.com/community/linux +URL: https://community.cypress.com/community/linux # From https://github.com/raspberrypi/linux/issues/1325#issuecomment-195560582 # Phil Elwell (Raspberry Pi Foundation) wrote: "Broadcom have said that # the firmware files for the BCM43438 are covered under this licence:" Source0: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/LICENCE.broadcom_bcm43xx Source1: 50-brcmfmac.conf Source2: install-brcmfmac.sh +# The BCM43XXXX.hcd files are under this license +Source3: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/LICENCE.cypress #BCM4329 Source291: https://raw.githubusercontent.com/SolidRun/meta-solidrun-arm-imx6/fido/recipes-bsp/broadcom-nvram-config/files/solidrun-imx6/brcmfmac4329-sdio.txt#/brcmfmac4329-sdio-cubox-i.txt #BCM4330 @@ -41,23 +43,23 @@ Source3622: https://github.com/Bananian/bananian/raw/master/deb/u-boot-m2-ba Source3623: https://github.com/Bananian/bananian/raw/master/deb/u-boot-pro-bananian_armhf/lib/firmware/brcm/brcmfmac43362-sdio.txt#/brcmfmac43362-sdio-bananapi-m1+.txt #BCM43430 Source4301: https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43430-sdio.txt#/brcmfmac43430-sdio-raspberrypi3b.txt -Source4309: http://phelum.net/temp/BCM43430A1.hcd -#BCM43455 -Source4551: https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43455-sdio.txt#/brcmfmac43455-sdio-raspberrypi3b.txt +Source4309: https://github.com/RPi-Distro/bluez-firmware/raw/master/broadcom/BCM43430A1.hcd #brcmfmac4356-pcie.txt is taken from ChromeOS repo # https://chromium.googlesource.com/chromiumos/third_party/linux-firmware/+/f151f016b4fe656399f199e28cabf8d658bcb52b/brcm/brcmfmac4356-pcie.txt Source4356: brcmfmac4356-pcie.txt +#BCM43455 +Source4551: https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43455-sdio.txt#/brcmfmac43455-sdio-raspberrypi3b.txt +Source4559: https://github.com/RPi-Distro/bluez-firmware/raw/master/broadcom/BCM4345C0.hcd # Owns /lib/firmware/brcm and potentially conflicts BuildRequires: kernel-firmware # Owns /etc/modprobe.d BuildRequires: suse-module-tools -BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildArch: noarch Requires: kernel-firmware -# Raspberry Pi 3 Model B -Supplements: modalias(sdio:c*v02D0dA9A6*) # BCM4356 PCI Supplements: modalias(pci:v000014E4d000043ECsv*sd*bc*sc*i*) +# Raspberry Pi 3 Model B +Supplements: modalias(sdio:c*v02D0dA9A6*) +BuildArch: noarch %description This package provides the firmware files needed for the @@ -67,7 +69,7 @@ further related chipsets. %prep %setup -q -c -T -cp %{SOURCE0} . +cp %{SOURCE0} %{SOURCE3} . %build @@ -89,10 +91,10 @@ install -c -m 0644 %{SOURCE4551} %{buildroot}/lib/firmware/brcm/ install -c -m 0644 %{SOURCE4356} %{buildroot}/lib/firmware/brcm/ # Used by bluez (hciattach) install -c -m 0644 %{SOURCE4309} %{buildroot}/lib/firmware/ +install -c -m 0644 %{SOURCE4559} %{buildroot}/lib/firmware/ %files -%defattr(-,root,root) -%doc LICENCE.broadcom_bcm43xx +%license LICENCE.broadcom_bcm43xx LICENCE.cypress /lib/firmware/*.hcd /lib/firmware/brcm/*.txt %ghost /lib/firmware/brcm/brcmfmac4329-sdio.txt diff --git a/brcmfmac43430-sdio-raspberrypi3b.txt b/brcmfmac43430-sdio-raspberrypi3b.txt index a77d55f..a653079 100644 --- a/brcmfmac43430-sdio-raspberrypi3b.txt +++ b/brcmfmac43430-sdio-raspberrypi3b.txt @@ -57,3 +57,8 @@ muxenab=0x1 #VCO freq 326.4MHz spurconfig=0x3 + +# Improved Bluetooth coexistence parameters from Cypress +btc_mode=1 +btc_params8=0x4e20 +btc_params1=0x7530 diff --git a/brcmfmac43455-sdio-raspberrypi3b.txt b/brcmfmac43455-sdio-raspberrypi3b.txt index 6fcf7a1..52c44d3 100644 --- a/brcmfmac43455-sdio-raspberrypi3b.txt +++ b/brcmfmac43455-sdio-raspberrypi3b.txt @@ -90,3 +90,8 @@ txpwr5gAdcScale=1 dot11b_opts=0x3aa85 cbfilttype=1 fdsslevel_ch11=6 + +# Improved Bluetooth coexistence parameters from Cypress +btc_mode=1 +btc_params8=0x4e20 +btc_params1=0x7530