]> git.ipfire.org Git - thirdparty/linux-firmware.git/commitdiff
qca: Add firmware files for BT chip wcn3990.
authorBalakrishna Godavarthi <bgodavar@codeaurora.org>
Tue, 22 Jan 2019 14:11:18 +0000 (19:41 +0530)
committerBalakrishna Godavarthi <bgodavar@codeaurora.org>
Wed, 20 Feb 2019 12:53:46 +0000 (18:23 +0530)
This commit will add required firmware files for wcn3990.
crbtfw21.tlv : RAM FW dump
crnv21.bin : NVM dump.

Updated the Qualcomm Atheros licence file.

Signed-off-by: Balakrishna Godavarthi <bgodavar@codeaurora.org>
WHENCE
qca/NOTICE.txt
qca/crbtfw21.tlv [new file with mode: 0644]
qca/crnv21.bin [new file with mode: 0644]

diff --git a/WHENCE b/WHENCE
index 620295cb0ba44955413a39d0138fa924f413ea78..bceb5d1b00b361676f163e7eb2389d11600d2235 100644 (file)
--- a/WHENCE
+++ b/WHENCE
@@ -3639,6 +3639,8 @@ File: qca/rampatch_usb_00000300.bin
 File: qca/rampatch_usb_00000302.bin
 File: qca/rampatch_00130300.bin
 File: qca/rampatch_00130302.bin
 File: qca/rampatch_usb_00000302.bin
 File: qca/rampatch_00130300.bin
 File: qca/rampatch_00130302.bin
+File: qca/crbtfw21.tlv
+File: qca/crnv21.bin
 
 Licence: Redistributable. See LICENSE.QualcommAtheros_ath10k and qca/NOTICE.txt for details
 
 
 Licence: Redistributable. See LICENSE.QualcommAtheros_ath10k and qca/NOTICE.txt for details
 
index 3e17645817859308ec84d278c025c79cebfbcb09..931302076c7966057ce197da4725dd419b8ece40 100644 (file)
@@ -1,22 +1,21 @@
 
 This Notice.txt file contains certain notices of software components included
 with the software that Qualcomm Atheros, Inc. ("Qualcomm Atheros") is required
 
 This Notice.txt file contains certain notices of software components included
 with the software that Qualcomm Atheros, Inc. ("Qualcomm Atheros") is required
-to provide you. Notwithstanding anything in the notices in this file, your use
-of these software components together with the Qualcomm Atheros software
-(Qualcomm Atheros software hereinafter referred to as "Software") is subject to
-the terms of your license from Qualcomm Atheros. Compliance with all copyright
-laws and software license agreements included in the notice section of this
-file are the responsibility of the user. Except as may be granted by separate
-express written agreement, this file provides no license to any Qualcomm
-Atheros patents, trademarks, copyrights, or other intellectual property.
-
-Copyright (c) 2014 Qualcomm Atheros, Inc.  All rights reserved.
-
-Qualcomm is a trademark of Qualcomm Incorporated, registered in the United
-States and other countries.  All Qualcomm Incorporated trademarks are used with
-permission. Atheros is a trademark of Qualcomm Atheros, Inc., registered in the
-United States and other countries.  Other products and brand names may be
-trademarks or registered trademarks of their respective owners.
+to provide you. Except where prohibited by the open source license, the content
+of this notices file is only provided to satisfy Qualcomm Atheros's attribution
+and notice requirement; your use of these software components together with the
+Qualcomm Atheros software (Qualcomm Atheros software hereinafter referred to
+as "Software") is subject to the terms of your agreement from Qualcomm Atheros.
+Compliance with all copyright laws and software license agreements included in
+the notice section of this file are the responsibility of the user. Except as
+may be granted by separate express written agreement, this file provides no
+license to any patents, trademarks, copyrights, or other intellectual property
+of Qualcomm Incorporated or any of its subsidiaries.
+
+Qualcomm is a trademark of Qualcomm Incorporated, registered in the United States
+and other countries. All Qualcomm Incorporated trademarks are used with permission.
+Other products and brand names may be trademarks or registered trademarks of their
+respective owners.
 
 NOTICES:
 
 
 NOTICES:
 
@@ -250,128 +249,6 @@ when       who     what, where, why
 
    Dr B. R. Gladman <brg@gladman.uk.net> 1st June 2001.
 
 
    Dr B. R. Gladman <brg@gladman.uk.net> 1st June 2001.
 
-   This is an implementation of the AES encryption algorithm (Rijndael)
-   designed by Joan Daemen and Vincent Rijmen. This version is designed
-   to provide both fixed and dynamic block and key lengths and can also
-   run with either big or little endian internal byte order.
-
-   NOTE: Input block and key lengths are given in terms of the lengths of
-   the byte arrays involved, the legal values being 16, 24 and 32.
-
-   A. THE CIPHER INTERFACE
-
-   byte                    (an unsigned 8-bit type)
-   word                    (an unsigned 32-bit type)
-   aes_ret:                (a signed 16 bit type for function return values)
-        aes_good            (value != 0, a good return)
-        aes_bad             (value == 0, an error return)
-   enum aes_key:           (encryption direction)
-        enc                 (set key for encryption)
-        dec                 (set key for decryption)
-        both                (set key for both)
-   class or struct aes     (structure for context)
-
-   C subroutine calls:
-
-   aes_ret set_blk(const word block_length, aes *cx)  (variable block size)
-   aes_ret set_key(const byte key[], const word key_length,
-                   const enum aes_key direction, aes *cx)
-   aes_ret encrypt(const byte input_blk[], byte output_blk[], const aes *cx)
-   aes_ret decrypt(const byte input_blk[], byte output_blk[], const aes *cx)
-
-   IMPORTANT NOTE: If you are using this C interface and your compiler does
-   not set the memory used for objects to zero before use, you will need to
-   ensure that cx.mode is set to zero before using the C subroutine calls.
-
-   C++ aes class subroutines:
-
-   aes_ret set_blk(const word block_length)  (variable block size)
-   aes_ret set_key(const byte key[], const word key_length,
-                   const aes_key direction)
-   aes_ret encrypt(const byte input_blk[], byte output_blk[]) const
-   aes_ret decrypt(const byte input_blk[], byte output_blk[]) const
-
-   The block length inputs to set_block and set_key are in numbers of
-   BYTES, not bits.  The calls to subroutines must be made in the above
-   order but multiple calls can be made without repeating earlier calls
-   if their parameters have not changed. If the cipher block length is
-   variable but set_blk has not been called before cipher operations a
-   value of 16 is assumed (that is, the AES block size). In contrast to
-   earlier versions the block and key length parameters are now checked
-   for correctness and the encryption and decryption routines check to
-   ensure that an appropriate key has been set before they are called.
-
-   B. BYTE ORDER WITHIN 32 BIT WORDS
-
-   The fundamental data processing units in Rijndael are 8-bit bytes. The
-   input, the output and the key input are all enumerated arrays of bytes
-   in which bytes are numbered starting at zero and increasing to one less
-   than the number of bytes in the array in question.  When these inputs
-   and outputs are considered as bit sequences, the n'th byte contains
-   bits 8n to 8n+7 of the sequence with the lower numbered bit mapped to
-   the most significant bit within the  byte (i.e. that having a numeric
-   value of 128).  However, Rijndael can be implemented more efficiently
-   using 32-bit words to process 4 bytes at a time provided that the order
-   of bytes within words is known.  This order is called big-endian if the
-   lowest numbered bytes in words have the highest numeric significance
-   and little-endian if the opposite applies. This code can work in either
-   order irrespective of the native order of the machine on which it runs.
-   The byte order used internally is set by defining INTERNAL_BYTE_ORDER
-   whereas the order for all inputs and outputs is specified by defining
-   EXTERNAL_BYTE_ORDER, the only purpose of the latter being to determine
-   if a byte order change is needed immediately after input and immediately
-   before output to account for the use of a different internal byte order.
-   In almost all situations both of these defines will be set to the native
-   order of the processor on which the code is to run but other settings
-   may somtimes be useful in special circumstances.
-
-#define INTERNAL_BYTE_ORDER LITTLE_ENDIAN
-#define EXTERNAL_BYTE_ORDER LITTLE_ENDIAN
-
-   C. COMPILATION
-
-   To compile AES (Rijndael) for use in C code
-    a. Exclude the AES_DLL define in aes.h
-    b. Exclude the AES_IN_CPP define in aes.h
-
-   To compile AES (Rijndael) for use in in C++ code
-    a. Exclude the AES_DLL define in aes.h
-    b. Include the AES_IN_CPP define in aes.h
-
-   To compile AES (Rijndael) in C as a Dynamic Link Library
-    a. Include the AES_DLL define in aes.h
-    b. Compile the DLL.  If using the test files, exclude aes.c from
-       the test build project and compile it with the same defines
-       as used for the DLL (ensure that the DLL path is correct)
-
-   D. CONFIGURATION OPTIONS (see also aes.c)
-
-   1. define BLOCK_SIZE to set the cipher block size (16, 24 or 32) or
-      leave this undefined for dynamically variable block size (this will
-      result in much slower code).
-   2. set AES_IN_CPP to use the code from C++ rather than C
-   3. set AES_DLL if AES (Rijndael) is to be compiled to a DLL
-   4. set INTERNAL_BYTE_ORDER to one of the above constants to set the
-      internal byte order (the order used within the algorithm code)
-   5. set EXTERNAL_BYTE_ORDER to one of the above constants to set the byte
-      order used at the external interfaces for the input, output and key
-      byte arrays.
-
-   IMPORTANT NOTE: BLOCK_SIZE is in BYTES: 16, 24, 32 or undefined for aes.c
-   and 16, 20, 24, 28, 32 or undefined for aes++.c.  If left undefined a
-   slower version providing variable block length is compiled
-
-#define BLOCK_SIZE  16
-
-   Define AES_IN_CPP if you intend to use the AES C++ class rather than the
-   C code directly.
-
-#define AES_IN_CPP
-
-   Define AES_DLL if you wish to compile the code to produce a Windows DLL
-
-#define AES_DLL
-
 */
 File: aes.h
 
 */
 File: aes.h
 
@@ -431,76 +308,119 @@ File: aes_tab.h
 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
-
 #
 #
-# The purpose of this module is to define how a check is to be performed.
-# Use one of the Check...() functions below.
 #
 #
+===============================================================================
+File: Conftest.py
+
+===============================================================================
+7.
+===============================================================================
+/ ***
+ *
+ * Fowler/Noll/Vo- hash
+ *
+ * The basis of this hash algorithm was taken from an idea sent
+ * as reviewer comments to the IEEE POSIX P1003.2 committee by:
+ *
+ *      Phong Vo (http://www.research.att.com/info/kpv/)
+ *      Glenn Fowler (http://www.research.att.com/~gsf/)
+ *
+ * In a subsequent ballot round:
+ *
+ *      Landon Curt Noll (http://www.isthe.com/chongo/)
+ *
+ * improved on their algorithm.  Some people tried this hash
+ * and found that it worked rather well.  In an EMail message
+ * to Landon, they named it the ``Fowler/Noll/Vo'' or FNV hash.
+ *
+ * FNV hashes are designed to be fast while maintaining a low
+ * collision rate. The FNV speed allows one to quickly hash lots
+ * of data while maintaining a reasonable collision rate.  See:
+ *
+ *      http://www.isthe.com/chongo/tech/comp/fnv/index.html
+ *
+ * for more details as well as other forms of the FNV hash.
+ *
+ *
+ * Please do not copyright this code.  This code is in the public domain.
+ *
+ * LANDON CURT NOLL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO
+ * EVENT SHALL LANDON CURT NOLL BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+ * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+ * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ *
+ * By:
+ *     chongo <Landon Curt Noll> /\oo/\
+ *      http://www.isthe.com/chongo/
+ *
+ * Share and Enjoy!    :-)
+ */
+File: fm_fnv_hash.h, fm_fnv_hash.c
 
 
-#
-# A context class is used that defines functions for carrying out the tests,
-# logging and messages.  The following methods and members must be present:
-#
-# context.Display(msg)  Function called to print messages that are normally
-#                       displayed for the user.  Newlines are explicitly used.
-#                       The text should also be written to the logfile!
-#
-# context.Log(msg)      Function called to write to a log file.
-#
-# context.BuildProg(text, ext)
-#                       Function called to build a program, using "ext" for the
-#                       file extention.  Must return an empty string for
-#                       success, an error message for failure.
-#                       For reliable test results building should be done just
-#                       like an actual program would be build, using the same
-#                       command and arguments (including configure results so
-#                       far).
-#
-# context.CompileProg(text, ext)
-#                       Function called to compile a program, using "ext" for
-#                       the file extention.  Must return an empty string for
-#                       success, an error message for failure.
-#                       For reliable test results compiling should be done just
-#                       like an actual source file would be compiled, using the
-#                       same command and arguments (including configure results
-#                       so far).
-#
-# context.AppendLIBS(lib_name_list)
-#                       Append "lib_name_list" to the value of LIBS.
-#                       "lib_namelist" is a list of strings.
-#                       Return the value of LIBS before changing it (any type
-#                       can be used, it is passed to SetLIBS() later.)
-#
-# context.PrependLIBS(lib_name_list)
-#                       Prepend "lib_name_list" to the value of LIBS.
-#                       "lib_namelist" is a list of strings.
-#                       Return the value of LIBS before changing it (any type
-#                       can be used, it is passed to SetLIBS() later.)
-#
-# context.SetLIBS(value)
-#                       Set LIBS to "value".  The type of "value" is what
-#                       AppendLIBS() returned.
-#                       Return the value of LIBS before changing it (any type
-#                       can be used, it is passed to SetLIBS() later.)
-#
-# context.headerfilename
-#                       Name of file to append configure results to, usually
-#                       "confdefs.h".
-#                       The file must not exist or be empty when starting.
-#                       Empty or None to skip this (some tests will not work!).
-#
-# context.config_h      (may be missing). If present, must be a string, which
-#                       will be filled with the contents of a config_h file.
-#
-# context.vardict       Dictionary holding variables used for the tests and
-#                       stores results from the tests, used for the build
-#                       commands.
-#                       Normally contains "CC", "LIBS", "CPPFLAGS", etc.
-#
-# context.havedict      Dictionary holding results from the tests that are to
-#                       be used inside a program.
-#                       Names often start with "HAVE_".  These are zero
-#                       (feature not present) or one (feature present).  Other
-#                       variables may have any value, e.g., "PERLVERSION" can
-#
 ===============================================================================
 ===============================================================================
+8.
+===============================================================================
+
+/*
+ *  $Header: //source/qcom/qct/core/api/kernel/main/latest/libstd/stringl/stringl.h#13 $
+ *  $DateTime: 2013/07/24 11:35:54 $
+ */
+
+/*     $OpenBSD: string.h,v 1.17 2006/01/06 18:53:04 millert Exp $     */
+/*     $NetBSD: string.h,v 1.6 1994/10/26 00:56:30 cgd Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *     @(#)string.h    5.10 (Berkeley) 3/9/91
+ */
+File: stringl.h
+
+===============================================================================
+9.
+===============================================================================
+/*
+ * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+File: wcslcpy.c, wcslcat.c, wstrlcpy.c, strlcat.c, strlcpy.c, wstrlcat.c
diff --git a/qca/crbtfw21.tlv b/qca/crbtfw21.tlv
new file mode 100644 (file)
index 0000000..2d5ef8d
Binary files /dev/null and b/qca/crbtfw21.tlv differ
diff --git a/qca/crnv21.bin b/qca/crnv21.bin
new file mode 100644 (file)
index 0000000..7f48ef1
Binary files /dev/null and b/qca/crnv21.bin differ