Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d776d01a authored by Venkateswara Naralasetty's avatar Venkateswara Naralasetty Committed by Madan Koyyalamudi
Browse files

fw-api: Add HW header files for WCN6450

Add the HW header files for WCN6450 and cleanup the header files,
1. Remove comments.
2. Add appropriate copyright header.
3. Remove references to HW sensitive IP (structs, macros and etc).

Change-Id: I9c80242a8b9fb4937685174d8892997e3e632982
CRs-Fixed: 3417793
parent 572bedee
Loading
Loading
Loading
Loading
+53 −0
Original line number Diff line number Diff line

/*
 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or 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.
 */

#ifndef HAL_COMDEF_H
#define HAL_COMDEF_H

#ifndef _ARM_ASM_

#ifdef __cplusplus
extern "C" {
#endif

#include "com_dtypes.h"

#ifndef _BOOL32_DEFINED
typedef  unsigned long int  bool32;
#define _BOOL32_DEFINED
#endif

#define HAL_ENUM_32BITS(x) HAL_##x##_FORCE32BITS = 0x7FFFFFFF

  #define inp(port)         (*((volatile byte *) (port)))
  #define inpw(port)        (*((volatile word *) (port)))
  #define inpdw(port)       (*((volatile dword *)(port)))

  #define outp(port, val)   (*((volatile byte *) (port)) = ((byte) (val)))
  #define outpw(port, val)  (*((volatile word *) (port)) = ((word) (val)))
  #define outpdw(port, val) (*((volatile dword *) (port)) = ((dword) (val)))

#ifdef __cplusplus
}
#endif

#endif

#endif
+424 −0

File added.

Preview size limit exceeded, changes collapsed.

+52 −0
Original line number Diff line number Diff line

/*
 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or 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.
 */



#ifndef _BUFFER_ADDR_INFO_H_
#define _BUFFER_ADDR_INFO_H_
#if !defined(__ASSEMBLER__)
#endif

#define NUM_OF_DWORDS_BUFFER_ADDR_INFO 2

struct buffer_addr_info {
             uint32_t buffer_addr_31_0                : 32;
             uint32_t buffer_addr_39_32               :  8,
                      return_buffer_manager           :  3,
                      sw_buffer_cookie                : 21;
};

#define BUFFER_ADDR_INFO_0_BUFFER_ADDR_31_0_OFFSET                   0x00000000
#define BUFFER_ADDR_INFO_0_BUFFER_ADDR_31_0_LSB                      0
#define BUFFER_ADDR_INFO_0_BUFFER_ADDR_31_0_MASK                     0xffffffff

#define BUFFER_ADDR_INFO_1_BUFFER_ADDR_39_32_OFFSET                  0x00000004
#define BUFFER_ADDR_INFO_1_BUFFER_ADDR_39_32_LSB                     0
#define BUFFER_ADDR_INFO_1_BUFFER_ADDR_39_32_MASK                    0x000000ff

#define BUFFER_ADDR_INFO_1_RETURN_BUFFER_MANAGER_OFFSET              0x00000004
#define BUFFER_ADDR_INFO_1_RETURN_BUFFER_MANAGER_LSB                 8
#define BUFFER_ADDR_INFO_1_RETURN_BUFFER_MANAGER_MASK                0x00000700

#define BUFFER_ADDR_INFO_1_SW_BUFFER_COOKIE_OFFSET                   0x00000004
#define BUFFER_ADDR_INFO_1_SW_BUFFER_COOKIE_LSB                      11
#define BUFFER_ADDR_INFO_1_SW_BUFFER_COOKIE_MASK                     0xfffff800

#endif
+97 −0
Original line number Diff line number Diff line

/*
 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or 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.
 */



#ifndef _CE_SRC_DESC_H_
#define _CE_SRC_DESC_H_
#if !defined(__ASSEMBLER__)
#endif

#define NUM_OF_DWORDS_CE_SRC_DESC 4

struct ce_src_desc {
             uint32_t src_buffer_low                  : 32;
             uint32_t src_buffer_high                 :  8,
                      toeplitz_en                     :  1,
                      src_swap                        :  1,
                      dest_swap                       :  1,
                      gather                          :  1,
                      ce_res_0                        :  4,
                      length                          : 16;
             uint32_t fw_metadata                     : 16,
                      ce_res_1                        : 16;
             uint32_t ce_res_2                        : 20,
                      ring_id                         :  8,
                      looping_count                   :  4;
};

#define CE_SRC_DESC_0_SRC_BUFFER_LOW_OFFSET                          0x00000000
#define CE_SRC_DESC_0_SRC_BUFFER_LOW_LSB                             0
#define CE_SRC_DESC_0_SRC_BUFFER_LOW_MASK                            0xffffffff

#define CE_SRC_DESC_1_SRC_BUFFER_HIGH_OFFSET                         0x00000004
#define CE_SRC_DESC_1_SRC_BUFFER_HIGH_LSB                            0
#define CE_SRC_DESC_1_SRC_BUFFER_HIGH_MASK                           0x000000ff

#define CE_SRC_DESC_1_TOEPLITZ_EN_OFFSET                             0x00000004
#define CE_SRC_DESC_1_TOEPLITZ_EN_LSB                                8
#define CE_SRC_DESC_1_TOEPLITZ_EN_MASK                               0x00000100

#define CE_SRC_DESC_1_SRC_SWAP_OFFSET                                0x00000004
#define CE_SRC_DESC_1_SRC_SWAP_LSB                                   9
#define CE_SRC_DESC_1_SRC_SWAP_MASK                                  0x00000200

#define CE_SRC_DESC_1_DEST_SWAP_OFFSET                               0x00000004
#define CE_SRC_DESC_1_DEST_SWAP_LSB                                  10
#define CE_SRC_DESC_1_DEST_SWAP_MASK                                 0x00000400

#define CE_SRC_DESC_1_GATHER_OFFSET                                  0x00000004
#define CE_SRC_DESC_1_GATHER_LSB                                     11
#define CE_SRC_DESC_1_GATHER_MASK                                    0x00000800

#define CE_SRC_DESC_1_CE_RES_0_OFFSET                                0x00000004
#define CE_SRC_DESC_1_CE_RES_0_LSB                                   12
#define CE_SRC_DESC_1_CE_RES_0_MASK                                  0x0000f000

#define CE_SRC_DESC_1_LENGTH_OFFSET                                  0x00000004
#define CE_SRC_DESC_1_LENGTH_LSB                                     16
#define CE_SRC_DESC_1_LENGTH_MASK                                    0xffff0000

#define CE_SRC_DESC_2_FW_METADATA_OFFSET                             0x00000008
#define CE_SRC_DESC_2_FW_METADATA_LSB                                0
#define CE_SRC_DESC_2_FW_METADATA_MASK                               0x0000ffff

#define CE_SRC_DESC_2_CE_RES_1_OFFSET                                0x00000008
#define CE_SRC_DESC_2_CE_RES_1_LSB                                   16
#define CE_SRC_DESC_2_CE_RES_1_MASK                                  0xffff0000

#define CE_SRC_DESC_3_CE_RES_2_OFFSET                                0x0000000c
#define CE_SRC_DESC_3_CE_RES_2_LSB                                   0
#define CE_SRC_DESC_3_CE_RES_2_MASK                                  0x000fffff

#define CE_SRC_DESC_3_RING_ID_OFFSET                                 0x0000000c
#define CE_SRC_DESC_3_RING_ID_LSB                                    20
#define CE_SRC_DESC_3_RING_ID_MASK                                   0x0ff00000

#define CE_SRC_DESC_3_LOOPING_COUNT_OFFSET                           0x0000000c
#define CE_SRC_DESC_3_LOOPING_COUNT_LSB                              28
#define CE_SRC_DESC_3_LOOPING_COUNT_MASK                             0xf0000000

#endif
+97 −0
Original line number Diff line number Diff line

/*
 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or 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.
 */



#ifndef _CE_STAT_DESC_H_
#define _CE_STAT_DESC_H_
#if !defined(__ASSEMBLER__)
#endif

#define NUM_OF_DWORDS_CE_STAT_DESC 4

struct ce_stat_desc {
             uint32_t ce_res_5                        :  8,
                      toeplitz_en                     :  1,
                      src_swap                        :  1,
                      dest_swap                       :  1,
                      gather                          :  1,
                      ce_res_6                        :  4,
                      length                          : 16;
             uint32_t toeplitz_hash_0                 : 32;
             uint32_t toeplitz_hash_1                 : 32;
             uint32_t fw_metadata                     : 16,
                      ce_res_7                        :  4,
                      ring_id                         :  8,
                      looping_count                   :  4;
};

#define CE_STAT_DESC_0_CE_RES_5_OFFSET                               0x00000000
#define CE_STAT_DESC_0_CE_RES_5_LSB                                  0
#define CE_STAT_DESC_0_CE_RES_5_MASK                                 0x000000ff

#define CE_STAT_DESC_0_TOEPLITZ_EN_OFFSET                            0x00000000
#define CE_STAT_DESC_0_TOEPLITZ_EN_LSB                               8
#define CE_STAT_DESC_0_TOEPLITZ_EN_MASK                              0x00000100

#define CE_STAT_DESC_0_SRC_SWAP_OFFSET                               0x00000000
#define CE_STAT_DESC_0_SRC_SWAP_LSB                                  9
#define CE_STAT_DESC_0_SRC_SWAP_MASK                                 0x00000200

#define CE_STAT_DESC_0_DEST_SWAP_OFFSET                              0x00000000
#define CE_STAT_DESC_0_DEST_SWAP_LSB                                 10
#define CE_STAT_DESC_0_DEST_SWAP_MASK                                0x00000400

#define CE_STAT_DESC_0_GATHER_OFFSET                                 0x00000000
#define CE_STAT_DESC_0_GATHER_LSB                                    11
#define CE_STAT_DESC_0_GATHER_MASK                                   0x00000800

#define CE_STAT_DESC_0_CE_RES_6_OFFSET                               0x00000000
#define CE_STAT_DESC_0_CE_RES_6_LSB                                  12
#define CE_STAT_DESC_0_CE_RES_6_MASK                                 0x0000f000

#define CE_STAT_DESC_0_LENGTH_OFFSET                                 0x00000000
#define CE_STAT_DESC_0_LENGTH_LSB                                    16
#define CE_STAT_DESC_0_LENGTH_MASK                                   0xffff0000

#define CE_STAT_DESC_1_TOEPLITZ_HASH_0_OFFSET                        0x00000004
#define CE_STAT_DESC_1_TOEPLITZ_HASH_0_LSB                           0
#define CE_STAT_DESC_1_TOEPLITZ_HASH_0_MASK                          0xffffffff

#define CE_STAT_DESC_2_TOEPLITZ_HASH_1_OFFSET                        0x00000008
#define CE_STAT_DESC_2_TOEPLITZ_HASH_1_LSB                           0
#define CE_STAT_DESC_2_TOEPLITZ_HASH_1_MASK                          0xffffffff

#define CE_STAT_DESC_3_FW_METADATA_OFFSET                            0x0000000c
#define CE_STAT_DESC_3_FW_METADATA_LSB                               0
#define CE_STAT_DESC_3_FW_METADATA_MASK                              0x0000ffff

#define CE_STAT_DESC_3_CE_RES_7_OFFSET                               0x0000000c
#define CE_STAT_DESC_3_CE_RES_7_LSB                                  16
#define CE_STAT_DESC_3_CE_RES_7_MASK                                 0x000f0000

#define CE_STAT_DESC_3_RING_ID_OFFSET                                0x0000000c
#define CE_STAT_DESC_3_RING_ID_LSB                                   20
#define CE_STAT_DESC_3_RING_ID_MASK                                  0x0ff00000

#define CE_STAT_DESC_3_LOOPING_COUNT_OFFSET                          0x0000000c
#define CE_STAT_DESC_3_LOOPING_COUNT_LSB                             28
#define CE_STAT_DESC_3_LOOPING_COUNT_MASK                            0xf0000000

#endif
Loading