123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385 |
- /* Copyright (C) 2018 RDA Technologies Limited and/or its affiliates("RDA").
- * All rights reserved.
- *
- * This software is supplied "AS IS" without any warranties.
- * RDA assumes no responsibility or liability for the use of the software,
- * conveys no license or title under any patent, copyright, or mask work
- * right to the product. RDA reserves the right to make changes in the
- * software without notification. RDA also make no representation or
- * warranty that such application will be suitable for the specified use
- * without further testing or modification.
- */
- #ifndef _SLV_FW_AP_IFC_H_
- #define _SLV_FW_AP_IFC_H_
- // Auto generated by dtools(see dtools.txt for its version).
- // Don't edit it manually!
- #define REG_SLV_FW_AP_IFC_BASE (0x51321000)
- typedef volatile struct
- {
- uint32_t port0_default_address_0; // 0x00000000
- uint32_t port_int_en; // 0x00000004
- uint32_t port_int_clr; // 0x00000008
- uint32_t port_int_raw; // 0x0000000c
- uint32_t port_int_fin; // 0x00000010
- uint32_t rd_sec_0; // 0x00000014
- uint32_t wr_sec_0; // 0x00000018
- uint32_t id0_first_addr_0; // 0x0000001c
- uint32_t id0_last_addr_0; // 0x00000020
- uint32_t id0_mstid_0; // 0x00000024
- uint32_t id0_mstid_1; // 0x00000028
- uint32_t id0_mstid_2; // 0x0000002c
- uint32_t id0_mstid_3; // 0x00000030
- uint32_t id0_mstid_4; // 0x00000034
- uint32_t id0_mstid_5; // 0x00000038
- uint32_t id0_mstid_6; // 0x0000003c
- uint32_t id0_mstid_7; // 0x00000040
- uint32_t id1_first_addr_0; // 0x00000044
- uint32_t id1_last_addr_0; // 0x00000048
- uint32_t id1_mstid_0; // 0x0000004c
- uint32_t id1_mstid_1; // 0x00000050
- uint32_t id1_mstid_2; // 0x00000054
- uint32_t id1_mstid_3; // 0x00000058
- uint32_t id1_mstid_4; // 0x0000005c
- uint32_t id1_mstid_5; // 0x00000060
- uint32_t id1_mstid_6; // 0x00000064
- uint32_t id1_mstid_7; // 0x00000068
- uint32_t id2_first_addr_0; // 0x0000006c
- uint32_t id2_last_addr_0; // 0x00000070
- uint32_t id2_mstid_0; // 0x00000074
- uint32_t id2_mstid_1; // 0x00000078
- uint32_t id2_mstid_2; // 0x0000007c
- uint32_t id2_mstid_3; // 0x00000080
- uint32_t id2_mstid_4; // 0x00000084
- uint32_t id2_mstid_5; // 0x00000088
- uint32_t id2_mstid_6; // 0x0000008c
- uint32_t id2_mstid_7; // 0x00000090
- uint32_t id3_first_addr_0; // 0x00000094
- uint32_t id3_last_addr_0; // 0x00000098
- uint32_t id3_mstid_0; // 0x0000009c
- uint32_t id3_mstid_1; // 0x000000a0
- uint32_t id3_mstid_2; // 0x000000a4
- uint32_t id3_mstid_3; // 0x000000a8
- uint32_t id3_mstid_4; // 0x000000ac
- uint32_t id3_mstid_5; // 0x000000b0
- uint32_t id3_mstid_6; // 0x000000b4
- uint32_t id3_mstid_7; // 0x000000b8
- uint32_t id4_first_addr_0; // 0x000000bc
- uint32_t id4_last_addr_0; // 0x000000c0
- uint32_t id4_mstid_0; // 0x000000c4
- uint32_t id4_mstid_1; // 0x000000c8
- uint32_t id4_mstid_2; // 0x000000cc
- uint32_t id4_mstid_3; // 0x000000d0
- uint32_t id4_mstid_4; // 0x000000d4
- uint32_t id4_mstid_5; // 0x000000d8
- uint32_t id4_mstid_6; // 0x000000dc
- uint32_t id4_mstid_7; // 0x000000e0
- uint32_t id5_first_addr_0; // 0x000000e4
- uint32_t id5_last_addr_0; // 0x000000e8
- uint32_t id5_mstid_0; // 0x000000ec
- uint32_t id5_mstid_1; // 0x000000f0
- uint32_t id5_mstid_2; // 0x000000f4
- uint32_t id5_mstid_3; // 0x000000f8
- uint32_t id5_mstid_4; // 0x000000fc
- uint32_t id5_mstid_5; // 0x00000100
- uint32_t id5_mstid_6; // 0x00000104
- uint32_t id5_mstid_7; // 0x00000108
- uint32_t clk_gate_bypass; // 0x0000010c
- } HWP_SLV_FW_AP_IFC_T;
- #define hwp_slvFwApIfc ((HWP_SLV_FW_AP_IFC_T *)REG_ACCESS_ADDRESS(REG_SLV_FW_AP_IFC_BASE))
- // port0_default_address_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t port0_default_address_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_PORT0_DEFAULT_ADDRESS_0_T;
- // port_int_en
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t port_0_w_en : 1; // [0]
- uint32_t port_0_r_en : 1; // [1]
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_SLV_FW_AP_IFC_PORT_INT_EN_T;
- // port_int_clr
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t port_0_w_clr : 1; // [0], write clear
- uint32_t port_0_r_clr : 1; // [1], write clear
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_SLV_FW_AP_IFC_PORT_INT_CLR_T;
- // port_int_raw
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t port_0_w_raw : 1; // [0], read only
- uint32_t port_0_r_raw : 1; // [1], read only
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_SLV_FW_AP_IFC_PORT_INT_RAW_T;
- // port_int_fin
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t port_0_w_fin : 1; // [0], read only
- uint32_t port_0_r_fin : 1; // [1], read only
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_SLV_FW_AP_IFC_PORT_INT_FIN_T;
- // rd_sec_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t ap_ifc_rd_sec : 2; // [1:0]
- uint32_t camera_rd_sec : 2; // [3:2]
- uint32_t sdmmc_rd_sec : 2; // [5:4]
- uint32_t uart6_rd_sec : 2; // [7:6]
- uint32_t uart5_rd_sec : 2; // [9:8]
- uint32_t uart4_rd_sec : 2; // [11:10]
- uint32_t __31_12 : 20; // [31:12]
- } b;
- } REG_SLV_FW_AP_IFC_RD_SEC_0_T;
- // wr_sec_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t ap_ifc_wr_sec : 2; // [1:0]
- uint32_t camera_wr_sec : 2; // [3:2]
- uint32_t sdmmc_wr_sec : 2; // [5:4]
- uint32_t uart6_wr_sec : 2; // [7:6]
- uint32_t uart5_wr_sec : 2; // [9:8]
- uint32_t uart4_wr_sec : 2; // [11:10]
- uint32_t __31_12 : 20; // [31:12]
- } b;
- } REG_SLV_FW_AP_IFC_WR_SEC_0_T;
- // id0_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID0_FIRST_ADDR_0_T;
- // id0_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID0_LAST_ADDR_0_T;
- // id1_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID1_FIRST_ADDR_0_T;
- // id1_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID1_LAST_ADDR_0_T;
- // id2_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID2_FIRST_ADDR_0_T;
- // id2_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID2_LAST_ADDR_0_T;
- // id3_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID3_FIRST_ADDR_0_T;
- // id3_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID3_LAST_ADDR_0_T;
- // id4_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID4_FIRST_ADDR_0_T;
- // id4_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID4_LAST_ADDR_0_T;
- // id5_first_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t first_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID5_FIRST_ADDR_0_T;
- // id5_last_addr_0
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t last_addr_0 : 16; // [15:0]
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_SLV_FW_AP_IFC_ID5_LAST_ADDR_0_T;
- // clk_gate_bypass
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t clk_gate_bypass : 1; // [0]
- uint32_t fw_resp_en : 1; // [1]
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_SLV_FW_AP_IFC_CLK_GATE_BYPASS_T;
- // port0_default_address_0
- #define SLV_FW_AP_IFC_PORT0_DEFAULT_ADDRESS_0(n) (((n)&0xffff) << 0)
- // port_int_en
- #define SLV_FW_AP_IFC_PORT_0_W_EN (1 << 0)
- #define SLV_FW_AP_IFC_PORT_0_R_EN (1 << 1)
- // port_int_clr
- #define SLV_FW_AP_IFC_PORT_0_W_CLR (1 << 0)
- #define SLV_FW_AP_IFC_PORT_0_R_CLR (1 << 1)
- // port_int_raw
- #define SLV_FW_AP_IFC_PORT_0_W_RAW (1 << 0)
- #define SLV_FW_AP_IFC_PORT_0_R_RAW (1 << 1)
- // port_int_fin
- #define SLV_FW_AP_IFC_PORT_0_W_FIN (1 << 0)
- #define SLV_FW_AP_IFC_PORT_0_R_FIN (1 << 1)
- // rd_sec_0
- #define SLV_FW_AP_IFC_AP_IFC_RD_SEC(n) (((n)&0x3) << 0)
- #define SLV_FW_AP_IFC_CAMERA_RD_SEC(n) (((n)&0x3) << 2)
- #define SLV_FW_AP_IFC_SDMMC_RD_SEC(n) (((n)&0x3) << 4)
- #define SLV_FW_AP_IFC_UART6_RD_SEC(n) (((n)&0x3) << 6)
- #define SLV_FW_AP_IFC_UART5_RD_SEC(n) (((n)&0x3) << 8)
- #define SLV_FW_AP_IFC_UART4_RD_SEC(n) (((n)&0x3) << 10)
- // wr_sec_0
- #define SLV_FW_AP_IFC_AP_IFC_WR_SEC(n) (((n)&0x3) << 0)
- #define SLV_FW_AP_IFC_CAMERA_WR_SEC(n) (((n)&0x3) << 2)
- #define SLV_FW_AP_IFC_SDMMC_WR_SEC(n) (((n)&0x3) << 4)
- #define SLV_FW_AP_IFC_UART6_WR_SEC(n) (((n)&0x3) << 6)
- #define SLV_FW_AP_IFC_UART5_WR_SEC(n) (((n)&0x3) << 8)
- #define SLV_FW_AP_IFC_UART4_WR_SEC(n) (((n)&0x3) << 10)
- // id0_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id0_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // id1_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id1_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // id2_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id2_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // id3_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id3_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // id4_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id4_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // id5_first_addr_0
- #define SLV_FW_AP_IFC_FIRST_ADDR_0(n) (((n)&0xffff) << 0)
- // id5_last_addr_0
- #define SLV_FW_AP_IFC_LAST_ADDR_0(n) (((n)&0xffff) << 0)
- // clk_gate_bypass
- #define SLV_FW_AP_IFC_CLK_GATE_BYPASS (1 << 0)
- #define SLV_FW_AP_IFC_FW_RESP_EN (1 << 1)
- #endif // _SLV_FW_AP_IFC_H_
|