15ba3f846SDaniel Machon /* SPDX-License-Identifier: GPL-2.0+ */ 25ba3f846SDaniel Machon /* Microchip Sparx5 Switch driver 35ba3f846SDaniel Machon * 45ba3f846SDaniel Machon * Copyright (c) 2024 Microchip Technology Inc. 55ba3f846SDaniel Machon */ 65ba3f846SDaniel Machon 7*69b61425SDaniel Machon /* This file is autogenerated by cml-utils 2024-09-30 11:48:29 +0200. 85ba3f846SDaniel Machon * Commit ID: 9d07b8d19363f3cd3590ddb3f7a2e2768e16524b 95ba3f846SDaniel Machon */ 105ba3f846SDaniel Machon 115ba3f846SDaniel Machon #ifndef _SPARX5_REGS_H_ 125ba3f846SDaniel Machon #define _SPARX5_REGS_H_ 135ba3f846SDaniel Machon 145ba3f846SDaniel Machon /* These enumerated values are used to index the platform specific structs 155ba3f846SDaniel Machon * containing the addresses, counts, size and positions, of register groups, 165ba3f846SDaniel Machon * registers and fields. 175ba3f846SDaniel Machon */ 185ba3f846SDaniel Machon 195ba3f846SDaniel Machon enum sparx5_tsize_enum { 205ba3f846SDaniel Machon TC_DEV10G, 215ba3f846SDaniel Machon TC_DEV2G5, 225ba3f846SDaniel Machon TC_DEV5G, 235ba3f846SDaniel Machon TC_PCS10G_BR, 245ba3f846SDaniel Machon TC_PCS5G_BR, 255ba3f846SDaniel Machon TSIZE_LAST, 265ba3f846SDaniel Machon }; 275ba3f846SDaniel Machon 285ba3f846SDaniel Machon enum sparx5_raddr_enum { 295ba3f846SDaniel Machon RA_CPU_PROC_CTRL, 305ba3f846SDaniel Machon RA_GCB_SOFT_RST, 315ba3f846SDaniel Machon RA_GCB_HW_SGPIO_TO_SD_MAP_CFG, 325ba3f846SDaniel Machon RADDR_LAST, 335ba3f846SDaniel Machon }; 345ba3f846SDaniel Machon 355ba3f846SDaniel Machon enum sparx5_rcnt_enum { 365ba3f846SDaniel Machon RC_ANA_AC_OWN_UPSID, 375ba3f846SDaniel Machon RC_ANA_ACL_VCAP_S2_CFG, 385ba3f846SDaniel Machon RC_ANA_ACL_OWN_UPSID, 395ba3f846SDaniel Machon RC_ANA_CL_OWN_UPSID, 405ba3f846SDaniel Machon RC_ANA_L2_OWN_UPSID, 415ba3f846SDaniel Machon RC_ASM_PORT_CFG, 425ba3f846SDaniel Machon RC_DSM_BUF_CFG, 435ba3f846SDaniel Machon RC_DSM_DEV_TX_STOP_WM_CFG, 445ba3f846SDaniel Machon RC_DSM_RX_PAUSE_CFG, 455ba3f846SDaniel Machon RC_DSM_MAC_CFG, 465ba3f846SDaniel Machon RC_DSM_MAC_ADDR_BASE_HIGH_CFG, 475ba3f846SDaniel Machon RC_DSM_MAC_ADDR_BASE_LOW_CFG, 485ba3f846SDaniel Machon RC_DSM_TAXI_CAL_CFG, 495ba3f846SDaniel Machon RC_GCB_HW_SGPIO_TO_SD_MAP_CFG, 505ba3f846SDaniel Machon RC_HSCH_PORT_MODE, 515ba3f846SDaniel Machon RC_QFWD_SWITCH_PORT_MODE, 525ba3f846SDaniel Machon RC_QSYS_PAUSE_CFG, 535ba3f846SDaniel Machon RC_QSYS_ATOP, 545ba3f846SDaniel Machon RC_QSYS_FWD_PRESSURE, 555ba3f846SDaniel Machon RC_QSYS_CAL_AUTO, 565ba3f846SDaniel Machon RC_REW_OWN_UPSID, 575ba3f846SDaniel Machon RC_REW_RTAG_ETAG_CTRL, 585ba3f846SDaniel Machon RCNT_LAST, 595ba3f846SDaniel Machon }; 605ba3f846SDaniel Machon 615ba3f846SDaniel Machon enum sparx5_gaddr_enum { 625ba3f846SDaniel Machon GA_ANA_AC_RAM_CTRL, 635ba3f846SDaniel Machon GA_ANA_AC_PS_COMMON, 645ba3f846SDaniel Machon GA_ANA_AC_MIRROR_PROBE, 655ba3f846SDaniel Machon GA_ANA_AC_SRC, 665ba3f846SDaniel Machon GA_ANA_AC_PGID, 675ba3f846SDaniel Machon GA_ANA_AC_TSN_SF, 685ba3f846SDaniel Machon GA_ANA_AC_TSN_SF_CFG, 695ba3f846SDaniel Machon GA_ANA_AC_TSN_SF_STATUS, 705ba3f846SDaniel Machon GA_ANA_AC_SG_ACCESS, 715ba3f846SDaniel Machon GA_ANA_AC_SG_CONFIG, 725ba3f846SDaniel Machon GA_ANA_AC_SG_STATUS, 735ba3f846SDaniel Machon GA_ANA_AC_SG_STATUS_STICKY, 745ba3f846SDaniel Machon GA_ANA_AC_STAT_GLOBAL_CFG_PORT, 755ba3f846SDaniel Machon GA_ANA_AC_STAT_CNT_CFG_PORT, 765ba3f846SDaniel Machon GA_ANA_AC_STAT_GLOBAL_CFG_ACL, 775ba3f846SDaniel Machon GA_ANA_ACL_COMMON, 785ba3f846SDaniel Machon GA_ANA_ACL_KEY_SEL, 795ba3f846SDaniel Machon GA_ANA_ACL_CNT_B, 805ba3f846SDaniel Machon GA_ANA_ACL_STICKY, 815ba3f846SDaniel Machon GA_ANA_AC_POL_POL_ALL_CFG, 825ba3f846SDaniel Machon GA_ANA_AC_POL_COMMON_BDLB, 835ba3f846SDaniel Machon GA_ANA_AC_POL_COMMON_BUM_SLB, 845ba3f846SDaniel Machon GA_ANA_AC_SDLB_LBGRP_TBL, 855ba3f846SDaniel Machon GA_ANA_CL_PORT, 865ba3f846SDaniel Machon GA_ANA_CL_COMMON, 875ba3f846SDaniel Machon GA_ANA_L2_COMMON, 885ba3f846SDaniel Machon GA_ANA_L3_COMMON, 895ba3f846SDaniel Machon GA_ANA_L3_VLAN_ARP_L3MC_STICKY, 905ba3f846SDaniel Machon GA_ASM_CFG, 915ba3f846SDaniel Machon GA_ASM_PFC_TIMER_CFG, 925ba3f846SDaniel Machon GA_ASM_LBK_WM_CFG, 935ba3f846SDaniel Machon GA_ASM_LBK_MISC_CFG, 945ba3f846SDaniel Machon GA_ASM_RAM_CTRL, 955ba3f846SDaniel Machon GA_EACL_ES2_KEY_SELECT_PROFILE, 965ba3f846SDaniel Machon GA_EACL_CNT_TBL, 975ba3f846SDaniel Machon GA_EACL_POL_CFG, 985ba3f846SDaniel Machon GA_EACL_ES2_STICKY, 995ba3f846SDaniel Machon GA_EACL_RAM_CTRL, 1005ba3f846SDaniel Machon GA_GCB_SIO_CTRL, 1015ba3f846SDaniel Machon GA_HSCH_HSCH_DWRR, 1025ba3f846SDaniel Machon GA_HSCH_HSCH_MISC, 1035ba3f846SDaniel Machon GA_HSCH_HSCH_LEAK_LISTS, 1045ba3f846SDaniel Machon GA_HSCH_SYSTEM, 1055ba3f846SDaniel Machon GA_HSCH_MMGT, 1065ba3f846SDaniel Machon GA_HSCH_TAS_CONFIG, 1075ba3f846SDaniel Machon GA_PTP_PTP_CFG, 1085ba3f846SDaniel Machon GA_PTP_PTP_TOD_DOMAINS, 1095ba3f846SDaniel Machon GA_PTP_PHASE_DETECTOR_CTRL, 1105ba3f846SDaniel Machon GA_QSYS_CALCFG, 1115ba3f846SDaniel Machon GA_QSYS_RAM_CTRL, 1125ba3f846SDaniel Machon GA_REW_COMMON, 1135ba3f846SDaniel Machon GA_REW_PORT, 1145ba3f846SDaniel Machon GA_REW_VOE_PORT_LM_CNT, 1155ba3f846SDaniel Machon GA_REW_RAM_CTRL, 1165ba3f846SDaniel Machon GA_VOP_RAM_CTRL, 1175ba3f846SDaniel Machon GA_XQS_SYSTEM, 1185ba3f846SDaniel Machon GA_XQS_QLIMIT_SHR, 1195ba3f846SDaniel Machon GADDR_LAST, 1205ba3f846SDaniel Machon }; 1215ba3f846SDaniel Machon 1225ba3f846SDaniel Machon enum sparx5_gcnt_enum { 1235ba3f846SDaniel Machon GC_ANA_AC_SRC, 1245ba3f846SDaniel Machon GC_ANA_AC_PGID, 1255ba3f846SDaniel Machon GC_ANA_AC_TSN_SF_CFG, 1265ba3f846SDaniel Machon GC_ANA_AC_STAT_CNT_CFG_PORT, 1275ba3f846SDaniel Machon GC_ANA_ACL_KEY_SEL, 1285ba3f846SDaniel Machon GC_ANA_ACL_CNT_A, 1295ba3f846SDaniel Machon GC_ANA_ACL_CNT_B, 1305ba3f846SDaniel Machon GC_ANA_AC_SDLB_LBGRP_TBL, 1315ba3f846SDaniel Machon GC_ANA_AC_SDLB_LBSET_TBL, 1325ba3f846SDaniel Machon GC_ANA_CL_PORT, 1335ba3f846SDaniel Machon GC_ANA_L2_ISDX_LIMIT, 1345ba3f846SDaniel Machon GC_ANA_L2_ISDX, 1355ba3f846SDaniel Machon GC_ANA_L3_VLAN, 1365ba3f846SDaniel Machon GC_ASM_DEV_STATISTICS, 1375ba3f846SDaniel Machon GC_EACL_ES2_KEY_SELECT_PROFILE, 1385ba3f846SDaniel Machon GC_EACL_CNT_TBL, 1395ba3f846SDaniel Machon GC_GCB_SIO_CTRL, 1405ba3f846SDaniel Machon GC_HSCH_HSCH_CFG, 1415ba3f846SDaniel Machon GC_HSCH_HSCH_DWRR, 1425ba3f846SDaniel Machon GC_PTP_PTP_PINS, 1435ba3f846SDaniel Machon GC_PTP_PHASE_DETECTOR_CTRL, 1445ba3f846SDaniel Machon GC_REW_PORT, 1455ba3f846SDaniel Machon GC_REW_VOE_PORT_LM_CNT, 1465ba3f846SDaniel Machon GCNT_LAST, 1475ba3f846SDaniel Machon }; 1485ba3f846SDaniel Machon 1495ba3f846SDaniel Machon enum sparx5_gsize_enum { 1505ba3f846SDaniel Machon GW_ANA_AC_SRC, 1515ba3f846SDaniel Machon GW_ANA_L2_COMMON, 1525ba3f846SDaniel Machon GW_ASM_CFG, 1535ba3f846SDaniel Machon GW_CPU_CPU_REGS, 154*69b61425SDaniel Machon GW_DEV2G5_PHASE_DETECTOR_CTRL, 1555ba3f846SDaniel Machon GW_FDMA_FDMA, 1565ba3f846SDaniel Machon GW_GCB_CHIP_REGS, 1575ba3f846SDaniel Machon GW_HSCH_TAS_CONFIG, 1585ba3f846SDaniel Machon GW_PTP_PHASE_DETECTOR_CTRL, 1595ba3f846SDaniel Machon GW_QSYS_PAUSE_CFG, 1605ba3f846SDaniel Machon GSIZE_LAST, 1615ba3f846SDaniel Machon }; 1625ba3f846SDaniel Machon 1635ba3f846SDaniel Machon enum sparx5_fpos_enum { 1645ba3f846SDaniel Machon FP_CPU_PROC_CTRL_AARCH64_MODE_ENA, 1655ba3f846SDaniel Machon FP_CPU_PROC_CTRL_L2_RST_INVALIDATE_DIS, 1665ba3f846SDaniel Machon FP_CPU_PROC_CTRL_L1_RST_INVALIDATE_DIS, 1675ba3f846SDaniel Machon FP_CPU_PROC_CTRL_BE_EXCEP_MODE, 1685ba3f846SDaniel Machon FP_CPU_PROC_CTRL_VINITHI, 1695ba3f846SDaniel Machon FP_CPU_PROC_CTRL_CFGTE, 1705ba3f846SDaniel Machon FP_CPU_PROC_CTRL_CP15S_DISABLE, 1715ba3f846SDaniel Machon FP_CPU_PROC_CTRL_PROC_CRYPTO_DISABLE, 1725ba3f846SDaniel Machon FP_CPU_PROC_CTRL_L2_FLUSH_REQ, 173*69b61425SDaniel Machon FP_DEV2G5_PHAD_CTRL_PHAD_ENA, 174*69b61425SDaniel Machon FP_DEV2G5_PHAD_CTRL_PHAD_FAILED, 1755ba3f846SDaniel Machon FP_FDMA_CH_CFG_CH_XTR_STATUS_MODE, 1765ba3f846SDaniel Machon FP_FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY, 1775ba3f846SDaniel Machon FP_FDMA_CH_CFG_CH_INJ_PORT, 1785ba3f846SDaniel Machon FP_PTP_PTP_PIN_CFG_PTP_PIN_ACTION, 1795ba3f846SDaniel Machon FP_PTP_PTP_PIN_CFG_PTP_PIN_SYNC, 1805ba3f846SDaniel Machon FP_PTP_PTP_PIN_CFG_PTP_PIN_INV_POL, 1815ba3f846SDaniel Machon FP_PTP_PHAD_CTRL_PHAD_ENA, 1825ba3f846SDaniel Machon FP_PTP_PHAD_CTRL_PHAD_FAILED, 1835ba3f846SDaniel Machon FPOS_LAST, 1845ba3f846SDaniel Machon }; 1855ba3f846SDaniel Machon 1865ba3f846SDaniel Machon enum sparx5_fsize_enum { 1875ba3f846SDaniel Machon FW_ANA_AC_PROBE_PORT_CFG_PROBE_PORT_MASK, 1885ba3f846SDaniel Machon FW_ANA_AC_SRC_CFG_PORT_MASK, 1895ba3f846SDaniel Machon FW_ANA_AC_PGID_CFG_PORT_MASK, 1905ba3f846SDaniel Machon FW_ANA_AC_TSN_SF_PORT_NUM, 1915ba3f846SDaniel Machon FW_ANA_AC_TSN_SF_CFG_TSN_SGID, 1925ba3f846SDaniel Machon FW_ANA_AC_TSN_SF_STATUS_TSN_SFID, 1935ba3f846SDaniel Machon FW_ANA_AC_SG_ACCESS_CTRL_SGID, 1945ba3f846SDaniel Machon FW_ANA_AC_PORT_SGE_CFG_MASK, 1955ba3f846SDaniel Machon FW_ANA_AC_SDLB_XLB_START_LBSET_START, 1965ba3f846SDaniel Machon FW_ANA_AC_SDLB_LBGRP_MISC_THRES_SHIFT, 1975ba3f846SDaniel Machon FW_ANA_AC_SDLB_LBGRP_STATE_TBL_PUP_LBSET_NEXT, 1985ba3f846SDaniel Machon FW_ANA_AC_SDLB_XLB_NEXT_LBSET_NEXT, 1995ba3f846SDaniel Machon FW_ANA_AC_SDLB_XLB_NEXT_LBGRP, 2005ba3f846SDaniel Machon FW_ANA_AC_SDLB_INH_LBSET_ADDR_INH_LBSET_ADDR, 2015ba3f846SDaniel Machon FW_ANA_L2_AUTO_LRN_CFG_AUTO_LRN_ENA, 2025ba3f846SDaniel Machon FW_ANA_L2_DLB_CFG_DLB_IDX, 2035ba3f846SDaniel Machon FW_ANA_L2_TSN_CFG_TSN_SFID, 2045ba3f846SDaniel Machon FW_ANA_L3_VLAN_MASK_CFG_VLAN_PORT_MASK, 2055ba3f846SDaniel Machon FW_FDMA_CH_CFG_CH_DCB_DB_CNT, 2065ba3f846SDaniel Machon FW_GCB_HW_SGPIO_TO_SD_MAP_CFG_SGPIO_TO_SD_SEL, 2075ba3f846SDaniel Machon FW_HSCH_SE_CFG_SE_DWRR_CNT, 2085ba3f846SDaniel Machon FW_HSCH_SE_CONNECT_SE_LEAK_LINK, 2095ba3f846SDaniel Machon FW_HSCH_SE_DLB_SENSE_SE_DLB_DPORT, 2105ba3f846SDaniel Machon FW_HSCH_HSCH_CFG_CFG_CFG_SE_IDX, 2115ba3f846SDaniel Machon FW_HSCH_HSCH_LEAK_CFG_LEAK_FIRST, 2125ba3f846SDaniel Machon FW_HSCH_FLUSH_CTRL_FLUSH_PORT, 2135ba3f846SDaniel Machon FW_HSCH_FLUSH_CTRL_FLUSH_HIER, 2145ba3f846SDaniel Machon FW_LRN_COMMON_ACCESS_CTRL_CPU_ACCESS_DIRECT_ROW, 2155ba3f846SDaniel Machon FW_LRN_MAC_ACCESS_CFG_3_MAC_ENTRY_ISDX_LIMIT_IDX, 2165ba3f846SDaniel Machon FW_LRN_AUTOAGE_CFG_2_NEXT_ROW, 2175ba3f846SDaniel Machon FW_PTP_PTP_PIN_INTR_INTR_PTP, 2185ba3f846SDaniel Machon FW_PTP_PTP_PIN_INTR_ENA_INTR_PTP_ENA, 2195ba3f846SDaniel Machon FW_PTP_PTP_INTR_IDENT_INTR_PTP_IDENT, 2205ba3f846SDaniel Machon FW_PTP_PTP_PIN_CFG_PTP_PIN_SELECT, 2215ba3f846SDaniel Machon FW_QFWD_FRAME_COPY_CFG_FRMC_PORT_VAL, 2225ba3f846SDaniel Machon FW_QRES_RES_CFG_WM_HIGH, 2235ba3f846SDaniel Machon FW_QRES_RES_STAT_MAXUSE, 2245ba3f846SDaniel Machon FW_QRES_RES_STAT_CUR_INUSE, 2255ba3f846SDaniel Machon FW_QSYS_PAUSE_CFG_PAUSE_START, 2265ba3f846SDaniel Machon FW_QSYS_PAUSE_CFG_PAUSE_STOP, 2275ba3f846SDaniel Machon FW_QSYS_ATOP_ATOP, 2285ba3f846SDaniel Machon FW_QSYS_ATOP_TOT_CFG_ATOP_TOT, 2295ba3f846SDaniel Machon FW_REW_RTAG_ETAG_CTRL_IPE_TBL, 2305ba3f846SDaniel Machon FW_XQS_STAT_CFG_STAT_VIEW, 2315ba3f846SDaniel Machon FW_XQS_QLIMIT_SHR_TOP_CFG_QLIMIT_SHR_TOP, 2325ba3f846SDaniel Machon FW_XQS_QLIMIT_SHR_ATOP_CFG_QLIMIT_SHR_ATOP, 2335ba3f846SDaniel Machon FW_XQS_QLIMIT_SHR_CTOP_CFG_QLIMIT_SHR_CTOP, 2345ba3f846SDaniel Machon FW_XQS_QLIMIT_SHR_QLIM_CFG_QLIMIT_SHR_QLIM, 2355ba3f846SDaniel Machon FSIZE_LAST, 2365ba3f846SDaniel Machon }; 2375ba3f846SDaniel Machon 2385ba3f846SDaniel Machon extern const unsigned int sparx5_tsize[TSIZE_LAST]; 2395ba3f846SDaniel Machon extern const unsigned int sparx5_raddr[RADDR_LAST]; 2405ba3f846SDaniel Machon extern const unsigned int sparx5_rcnt[RCNT_LAST]; 2415ba3f846SDaniel Machon extern const unsigned int sparx5_gaddr[GADDR_LAST]; 2425ba3f846SDaniel Machon extern const unsigned int sparx5_gcnt[GCNT_LAST]; 2435ba3f846SDaniel Machon extern const unsigned int sparx5_gsize[GSIZE_LAST]; 2445ba3f846SDaniel Machon extern const unsigned int sparx5_fpos[FPOS_LAST]; 2455ba3f846SDaniel Machon extern const unsigned int sparx5_fsize[FSIZE_LAST]; 2465ba3f846SDaniel Machon 2475ba3f846SDaniel Machon #endif /* _SPARX5_REGS_H_ */ 248