/* 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 _MONITOR_H_ #define _MONITOR_H_ // Auto generated by dtools(see dtools.txt for its version). // Don't edit it manually! #define REG_MONITOR_BASE (0x51502000) typedef volatile struct { uint32_t mon_sel0; // 0x00000000 uint32_t mon_sel1; // 0x00000004 uint32_t mon_sel2; // 0x00000008 uint32_t mon_sel3; // 0x0000000c uint32_t mon_sel4; // 0x00000010 uint32_t mon_sel5; // 0x00000014 uint32_t mon_sel6; // 0x00000018 uint32_t mon_sel7; // 0x0000001c uint32_t mon_con0; // 0x00000020 uint32_t mon_con1; // 0x00000024 uint32_t mon_con2; // 0x00000028 uint32_t mon_con3; // 0x0000002c uint32_t mon_con4; // 0x00000030 uint32_t mon_con5; // 0x00000034 uint32_t mon_con6; // 0x00000038 uint32_t mon_con7; // 0x0000003c uint32_t mon_enable; // 0x00000040 uint32_t monitor_o; // 0x00000044 } HWP_MONITOR_T; #define hwp_monitor ((HWP_MONITOR_T *)REG_ACCESS_ADDRESS(REG_MONITOR_BASE)) // mon_sel0 typedef union { uint32_t v; struct { uint32_t mon_sel0 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL0_T; // mon_sel1 typedef union { uint32_t v; struct { uint32_t mon_sel1 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL1_T; // mon_sel2 typedef union { uint32_t v; struct { uint32_t mon_sel2 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL2_T; // mon_sel3 typedef union { uint32_t v; struct { uint32_t mon_sel3 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL3_T; // mon_sel4 typedef union { uint32_t v; struct { uint32_t mon_sel4 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL4_T; // mon_sel5 typedef union { uint32_t v; struct { uint32_t mon_sel5 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL5_T; // mon_sel6 typedef union { uint32_t v; struct { uint32_t mon_sel6 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL6_T; // mon_sel7 typedef union { uint32_t v; struct { uint32_t mon_sel7 : 11; // [10:0] uint32_t __31_11 : 21; // [31:11] } b; } REG_MONITOR_MON_SEL7_T; // mon_con0 typedef union { uint32_t v; struct { uint32_t mon_con0 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON0_T; // mon_con1 typedef union { uint32_t v; struct { uint32_t mon_con1 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON1_T; // mon_con2 typedef union { uint32_t v; struct { uint32_t mon_con2 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON2_T; // mon_con3 typedef union { uint32_t v; struct { uint32_t mon_con3 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON3_T; // mon_con4 typedef union { uint32_t v; struct { uint32_t mon_con4 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON4_T; // mon_con5 typedef union { uint32_t v; struct { uint32_t mon_con5 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON5_T; // mon_con6 typedef union { uint32_t v; struct { uint32_t mon_con6 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON6_T; // mon_con7 typedef union { uint32_t v; struct { uint32_t mon_con7 : 3; // [2:0] uint32_t __31_3 : 29; // [31:3] } b; } REG_MONITOR_MON_CON7_T; // mon_enable typedef union { uint32_t v; struct { uint32_t mon_enable : 1; // [0] uint32_t __31_1 : 31; // [31:1] } b; } REG_MONITOR_MON_ENABLE_T; // monitor_o typedef union { uint32_t v; struct { uint32_t monitor_signal : 8; // [7:0], read only uint32_t __31_8 : 24; // [31:8] } b; } REG_MONITOR_MONITOR_O_T; // mon_sel0 #define MONITOR_MON_SEL0(n) (((n)&0x7ff) << 0) // mon_sel1 #define MONITOR_MON_SEL1(n) (((n)&0x7ff) << 0) // mon_sel2 #define MONITOR_MON_SEL2(n) (((n)&0x7ff) << 0) // mon_sel3 #define MONITOR_MON_SEL3(n) (((n)&0x7ff) << 0) // mon_sel4 #define MONITOR_MON_SEL4(n) (((n)&0x7ff) << 0) // mon_sel5 #define MONITOR_MON_SEL5(n) (((n)&0x7ff) << 0) // mon_sel6 #define MONITOR_MON_SEL6(n) (((n)&0x7ff) << 0) // mon_sel7 #define MONITOR_MON_SEL7(n) (((n)&0x7ff) << 0) // mon_con0 #define MONITOR_MON_CON0(n) (((n)&0x7) << 0) // mon_con1 #define MONITOR_MON_CON1(n) (((n)&0x7) << 0) // mon_con2 #define MONITOR_MON_CON2(n) (((n)&0x7) << 0) // mon_con3 #define MONITOR_MON_CON3(n) (((n)&0x7) << 0) // mon_con4 #define MONITOR_MON_CON4(n) (((n)&0x7) << 0) // mon_con5 #define MONITOR_MON_CON5(n) (((n)&0x7) << 0) // mon_con6 #define MONITOR_MON_CON6(n) (((n)&0x7) << 0) // mon_con7 #define MONITOR_MON_CON7(n) (((n)&0x7) << 0) // mon_enable #define MONITOR_MON_ENABLE (1 << 0) // monitor_o #define MONITOR_MONITOR_SIGNAL(n) (((n)&0xff) << 0) #endif // _MONITOR_H_