| /******************************************************************************** |
| * Marvell GPL License Option |
| * |
| * If you received this File from Marvell, you may opt to use, redistribute and/or |
| * modify this File in accordance with the terms and conditions of the General |
| * Public License Version 2, June 1991 (the "GPL License"), a copy of which is |
| * available along with the File in the license.txt file or by writing to the Free |
| * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or |
| * on the worldwide web at http://www.gnu.org/licenses/gpl.txt. |
| * |
| * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED |
| * WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY |
| * DISCLAIMED. The GPL License provides additional details about this warranty |
| * disclaimer. |
| ******************************************************************************/ |
| |
| #ifndef performance_counter_h
|
| #define performance_counter_h
|
|
|
| #define w32Perc_Config0 { \
|
| UNSG32 uConfig_pc_event_sel0 : 6; \
|
| UNSG32 rsvd0 : 1; \
|
| UNSG32 uConfig_pc_reg_en0 : 1; \
|
| UNSG32 uConfig_pc_event_sel1 : 6; \
|
| UNSG32 rsvd1 : 1; \
|
| UNSG32 uConfig_pc_reg_en1 : 1; \
|
| UNSG32 uConfig_pc_event_sel2 : 6; \
|
| UNSG32 rsvd2 : 1; \
|
| UNSG32 uConfig_pc_reg_en2 : 1; \
|
| UNSG32 uConfig_pc_event_sel3 : 6; \
|
| UNSG32 rsvd3 : 1; \
|
| UNSG32 uConfig_pc_reg_en3 : 1; \
|
| }
|
|
|
| #define w32Perc_Config1 { \
|
| UNSG32 uConfig_pc_event_sel4 : 6; \
|
| UNSG32 rsvd0 : 1; \
|
| UNSG32 uConfig_pc_reg_en4 : 1; \
|
| UNSG32 uConfig_pc_event_sel5 : 6; \
|
| UNSG32 rsvd1 : 1; \
|
| UNSG32 uConfig_pc_reg_en5 : 1; \
|
| UNSG32 uConfig_pc_event_sel6 : 6; \
|
| UNSG32 rsvd2 : 1; \
|
| UNSG32 uConfig_pc_reg_en6 : 1; \
|
| UNSG32 uConfig_pc_event_sel7 : 6; \
|
| UNSG32 rsvd3 : 1; \
|
| UNSG32 uConfig_pc_reg_en7 : 1; \
|
| }
|
|
|
| #define w32Perc_Status { \
|
| UNSG32 uStatus_pc_overflow0 : 1; \
|
| UNSG32 uStatus_pc_overflow1 : 1; \
|
| UNSG32 uStatus_pc_overflow2 : 1; \
|
| UNSG32 uStatus_pc_overflow3 : 1; \
|
| UNSG32 uStatus_pc_overflow4 : 1; \
|
| UNSG32 uStatus_pc_overflow5 : 1; \
|
| UNSG32 uStatus_pc_overflow6 : 1; \
|
| UNSG32 uStatus_pc_overflow7 : 1; \
|
| UNSG32 rsvd0 : 24; \
|
| }
|
|
|
| #define w32Perc_Control { \
|
| UNSG32 uControl_pc_start_cond : 1; \
|
| UNSG32 rsvd0 : 3; \
|
| UNSG32 uControl_pc_stop_cond : 1; \
|
| UNSG32 rsvd1 : 11; \
|
| UNSG32 uControl_pc_clk_div : 3; \
|
| UNSG32 rsvd2 : 13; \
|
| }
|
|
|
| typedef union T32Perc_Config
|
| { UNSG32 u32[2];
|
| struct {
|
| struct w32Perc_Config0;
|
| struct w32Perc_Config1;
|
| };
|
| } T32Perc_Config;
|
|
|
| typedef union
|
| { UNSG32 u32;
|
| struct w32Perc_Config;
|
| } ;
|
|
|
| typedef union T32Perc_Status
|
| { UNSG32 u32;
|
| struct w32Perc_Status;
|
| } T32Perc_Status;
|
|
|
| typedef union T32Perc_Control
|
| { UNSG32 u32;
|
| struct w32Perc_Control;
|
| } T32Perc_Control;
|
|
|
| /*
|
| Port0: CPU
|
| Port1: vppDhub
|
| Port2: agDhub + vipDhub | AVIF
|
| Port3: GC4K[gfx3dM0]
|
| Port4: PxBar
|
| ##Ethernet1
|
| ##gmac
|
| ##USB3 && USB2
|
| ##ZSP
|
| ##SDIO0, SDIO1, SDIO2
|
| ##pBridge(NAND Flash)
|
| ##USB0, ##USB1
|
| ## TSP
|
| ##drmDmx
|
| ##Smart Card
|
| ## CI
|
| ## PCIE
|
| ## Sata
|
| Port5: GC420 [gfx2D]
|
| Port6: VMeta
|
| Port7: GC4K[gfx3D] M1
|
| */
|
| #define w32port_Priority_Control { \
|
| UNSG32 priority_p0 : 2; \
|
| UNSG32 priority_p1 : 2; \
|
| UNSG32 priority_p2 : 2; \
|
| UNSG32 priority_p3 : 2; \
|
| UNSG32 priority_p4 : 2; \
|
| UNSG32 priority_p5 : 2; \
|
| UNSG32 priority_p6 : 2; \
|
| UNSG32 priority_p7 : 2; \
|
| UNSG32 rsvd1 : 8; \
|
| UNSG32 port_priority_en : 8; \
|
| }
|
|
|
| typedef union T32port_Priority_Control
|
| { UNSG32 u32;
|
| struct w32port_Priority_Control;
|
| } T32port_Priority_Control;
|
|
|
| #endif
|
|
|