18c2ecf20Sopenharmony_ci/***********************license start*************** 28c2ecf20Sopenharmony_ci * Author: Cavium Networks 38c2ecf20Sopenharmony_ci * 48c2ecf20Sopenharmony_ci * Contact: support@caviumnetworks.com 58c2ecf20Sopenharmony_ci * This file is part of the OCTEON SDK 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Copyright (c) 2003-2012 Cavium Networks 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci * This file is free software; you can redistribute it and/or modify 108c2ecf20Sopenharmony_ci * it under the terms of the GNU General Public License, Version 2, as 118c2ecf20Sopenharmony_ci * published by the Free Software Foundation. 128c2ecf20Sopenharmony_ci * 138c2ecf20Sopenharmony_ci * This file is distributed in the hope that it will be useful, but 148c2ecf20Sopenharmony_ci * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 158c2ecf20Sopenharmony_ci * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 168c2ecf20Sopenharmony_ci * NONINFRINGEMENT. See the GNU General Public License for more 178c2ecf20Sopenharmony_ci * details. 188c2ecf20Sopenharmony_ci * 198c2ecf20Sopenharmony_ci * You should have received a copy of the GNU General Public License 208c2ecf20Sopenharmony_ci * along with this file; if not, write to the Free Software 218c2ecf20Sopenharmony_ci * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 228c2ecf20Sopenharmony_ci * or visit http://www.gnu.org/licenses/. 238c2ecf20Sopenharmony_ci * 248c2ecf20Sopenharmony_ci * This file may also be available under a different license from Cavium. 258c2ecf20Sopenharmony_ci * Contact Cavium Networks for more information 268c2ecf20Sopenharmony_ci ***********************license end**************************************/ 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#ifndef __CVMX_MIXX_DEFS_H__ 298c2ecf20Sopenharmony_ci#define __CVMX_MIXX_DEFS_H__ 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci#define CVMX_MIXX_BIST(offset) (CVMX_ADD_IO_SEG(0x0001070000100078ull) + ((offset) & 1) * 2048) 328c2ecf20Sopenharmony_ci#define CVMX_MIXX_CTL(offset) (CVMX_ADD_IO_SEG(0x0001070000100020ull) + ((offset) & 1) * 2048) 338c2ecf20Sopenharmony_ci#define CVMX_MIXX_INTENA(offset) (CVMX_ADD_IO_SEG(0x0001070000100050ull) + ((offset) & 1) * 2048) 348c2ecf20Sopenharmony_ci#define CVMX_MIXX_IRCNT(offset) (CVMX_ADD_IO_SEG(0x0001070000100030ull) + ((offset) & 1) * 2048) 358c2ecf20Sopenharmony_ci#define CVMX_MIXX_IRHWM(offset) (CVMX_ADD_IO_SEG(0x0001070000100028ull) + ((offset) & 1) * 2048) 368c2ecf20Sopenharmony_ci#define CVMX_MIXX_IRING1(offset) (CVMX_ADD_IO_SEG(0x0001070000100010ull) + ((offset) & 1) * 2048) 378c2ecf20Sopenharmony_ci#define CVMX_MIXX_IRING2(offset) (CVMX_ADD_IO_SEG(0x0001070000100018ull) + ((offset) & 1) * 2048) 388c2ecf20Sopenharmony_ci#define CVMX_MIXX_ISR(offset) (CVMX_ADD_IO_SEG(0x0001070000100048ull) + ((offset) & 1) * 2048) 398c2ecf20Sopenharmony_ci#define CVMX_MIXX_ORCNT(offset) (CVMX_ADD_IO_SEG(0x0001070000100040ull) + ((offset) & 1) * 2048) 408c2ecf20Sopenharmony_ci#define CVMX_MIXX_ORHWM(offset) (CVMX_ADD_IO_SEG(0x0001070000100038ull) + ((offset) & 1) * 2048) 418c2ecf20Sopenharmony_ci#define CVMX_MIXX_ORING1(offset) (CVMX_ADD_IO_SEG(0x0001070000100000ull) + ((offset) & 1) * 2048) 428c2ecf20Sopenharmony_ci#define CVMX_MIXX_ORING2(offset) (CVMX_ADD_IO_SEG(0x0001070000100008ull) + ((offset) & 1) * 2048) 438c2ecf20Sopenharmony_ci#define CVMX_MIXX_REMCNT(offset) (CVMX_ADD_IO_SEG(0x0001070000100058ull) + ((offset) & 1) * 2048) 448c2ecf20Sopenharmony_ci#define CVMX_MIXX_TSCTL(offset) (CVMX_ADD_IO_SEG(0x0001070000100068ull) + ((offset) & 1) * 2048) 458c2ecf20Sopenharmony_ci#define CVMX_MIXX_TSTAMP(offset) (CVMX_ADD_IO_SEG(0x0001070000100060ull) + ((offset) & 1) * 2048) 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ciunion cvmx_mixx_bist { 488c2ecf20Sopenharmony_ci uint64_t u64; 498c2ecf20Sopenharmony_ci struct cvmx_mixx_bist_s { 508c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 518c2ecf20Sopenharmony_ci uint64_t reserved_6_63:58; 528c2ecf20Sopenharmony_ci uint64_t opfdat:1; 538c2ecf20Sopenharmony_ci uint64_t mrgdat:1; 548c2ecf20Sopenharmony_ci uint64_t mrqdat:1; 558c2ecf20Sopenharmony_ci uint64_t ipfdat:1; 568c2ecf20Sopenharmony_ci uint64_t irfdat:1; 578c2ecf20Sopenharmony_ci uint64_t orfdat:1; 588c2ecf20Sopenharmony_ci#else 598c2ecf20Sopenharmony_ci uint64_t orfdat:1; 608c2ecf20Sopenharmony_ci uint64_t irfdat:1; 618c2ecf20Sopenharmony_ci uint64_t ipfdat:1; 628c2ecf20Sopenharmony_ci uint64_t mrqdat:1; 638c2ecf20Sopenharmony_ci uint64_t mrgdat:1; 648c2ecf20Sopenharmony_ci uint64_t opfdat:1; 658c2ecf20Sopenharmony_ci uint64_t reserved_6_63:58; 668c2ecf20Sopenharmony_ci#endif 678c2ecf20Sopenharmony_ci } s; 688c2ecf20Sopenharmony_ci struct cvmx_mixx_bist_cn52xx { 698c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 708c2ecf20Sopenharmony_ci uint64_t reserved_4_63:60; 718c2ecf20Sopenharmony_ci uint64_t mrqdat:1; 728c2ecf20Sopenharmony_ci uint64_t ipfdat:1; 738c2ecf20Sopenharmony_ci uint64_t irfdat:1; 748c2ecf20Sopenharmony_ci uint64_t orfdat:1; 758c2ecf20Sopenharmony_ci#else 768c2ecf20Sopenharmony_ci uint64_t orfdat:1; 778c2ecf20Sopenharmony_ci uint64_t irfdat:1; 788c2ecf20Sopenharmony_ci uint64_t ipfdat:1; 798c2ecf20Sopenharmony_ci uint64_t mrqdat:1; 808c2ecf20Sopenharmony_ci uint64_t reserved_4_63:60; 818c2ecf20Sopenharmony_ci#endif 828c2ecf20Sopenharmony_ci } cn52xx; 838c2ecf20Sopenharmony_ci}; 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ciunion cvmx_mixx_ctl { 868c2ecf20Sopenharmony_ci uint64_t u64; 878c2ecf20Sopenharmony_ci struct cvmx_mixx_ctl_s { 888c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 898c2ecf20Sopenharmony_ci uint64_t reserved_12_63:52; 908c2ecf20Sopenharmony_ci uint64_t ts_thresh:4; 918c2ecf20Sopenharmony_ci uint64_t crc_strip:1; 928c2ecf20Sopenharmony_ci uint64_t busy:1; 938c2ecf20Sopenharmony_ci uint64_t en:1; 948c2ecf20Sopenharmony_ci uint64_t reset:1; 958c2ecf20Sopenharmony_ci uint64_t lendian:1; 968c2ecf20Sopenharmony_ci uint64_t nbtarb:1; 978c2ecf20Sopenharmony_ci uint64_t mrq_hwm:2; 988c2ecf20Sopenharmony_ci#else 998c2ecf20Sopenharmony_ci uint64_t mrq_hwm:2; 1008c2ecf20Sopenharmony_ci uint64_t nbtarb:1; 1018c2ecf20Sopenharmony_ci uint64_t lendian:1; 1028c2ecf20Sopenharmony_ci uint64_t reset:1; 1038c2ecf20Sopenharmony_ci uint64_t en:1; 1048c2ecf20Sopenharmony_ci uint64_t busy:1; 1058c2ecf20Sopenharmony_ci uint64_t crc_strip:1; 1068c2ecf20Sopenharmony_ci uint64_t ts_thresh:4; 1078c2ecf20Sopenharmony_ci uint64_t reserved_12_63:52; 1088c2ecf20Sopenharmony_ci#endif 1098c2ecf20Sopenharmony_ci } s; 1108c2ecf20Sopenharmony_ci struct cvmx_mixx_ctl_cn52xx { 1118c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 1128c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 1138c2ecf20Sopenharmony_ci uint64_t crc_strip:1; 1148c2ecf20Sopenharmony_ci uint64_t busy:1; 1158c2ecf20Sopenharmony_ci uint64_t en:1; 1168c2ecf20Sopenharmony_ci uint64_t reset:1; 1178c2ecf20Sopenharmony_ci uint64_t lendian:1; 1188c2ecf20Sopenharmony_ci uint64_t nbtarb:1; 1198c2ecf20Sopenharmony_ci uint64_t mrq_hwm:2; 1208c2ecf20Sopenharmony_ci#else 1218c2ecf20Sopenharmony_ci uint64_t mrq_hwm:2; 1228c2ecf20Sopenharmony_ci uint64_t nbtarb:1; 1238c2ecf20Sopenharmony_ci uint64_t lendian:1; 1248c2ecf20Sopenharmony_ci uint64_t reset:1; 1258c2ecf20Sopenharmony_ci uint64_t en:1; 1268c2ecf20Sopenharmony_ci uint64_t busy:1; 1278c2ecf20Sopenharmony_ci uint64_t crc_strip:1; 1288c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 1298c2ecf20Sopenharmony_ci#endif 1308c2ecf20Sopenharmony_ci } cn52xx; 1318c2ecf20Sopenharmony_ci}; 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ciunion cvmx_mixx_intena { 1348c2ecf20Sopenharmony_ci uint64_t u64; 1358c2ecf20Sopenharmony_ci struct cvmx_mixx_intena_s { 1368c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 1378c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 1388c2ecf20Sopenharmony_ci uint64_t tsena:1; 1398c2ecf20Sopenharmony_ci uint64_t orunena:1; 1408c2ecf20Sopenharmony_ci uint64_t irunena:1; 1418c2ecf20Sopenharmony_ci uint64_t data_drpena:1; 1428c2ecf20Sopenharmony_ci uint64_t ithena:1; 1438c2ecf20Sopenharmony_ci uint64_t othena:1; 1448c2ecf20Sopenharmony_ci uint64_t ivfena:1; 1458c2ecf20Sopenharmony_ci uint64_t ovfena:1; 1468c2ecf20Sopenharmony_ci#else 1478c2ecf20Sopenharmony_ci uint64_t ovfena:1; 1488c2ecf20Sopenharmony_ci uint64_t ivfena:1; 1498c2ecf20Sopenharmony_ci uint64_t othena:1; 1508c2ecf20Sopenharmony_ci uint64_t ithena:1; 1518c2ecf20Sopenharmony_ci uint64_t data_drpena:1; 1528c2ecf20Sopenharmony_ci uint64_t irunena:1; 1538c2ecf20Sopenharmony_ci uint64_t orunena:1; 1548c2ecf20Sopenharmony_ci uint64_t tsena:1; 1558c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 1568c2ecf20Sopenharmony_ci#endif 1578c2ecf20Sopenharmony_ci } s; 1588c2ecf20Sopenharmony_ci struct cvmx_mixx_intena_cn52xx { 1598c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 1608c2ecf20Sopenharmony_ci uint64_t reserved_7_63:57; 1618c2ecf20Sopenharmony_ci uint64_t orunena:1; 1628c2ecf20Sopenharmony_ci uint64_t irunena:1; 1638c2ecf20Sopenharmony_ci uint64_t data_drpena:1; 1648c2ecf20Sopenharmony_ci uint64_t ithena:1; 1658c2ecf20Sopenharmony_ci uint64_t othena:1; 1668c2ecf20Sopenharmony_ci uint64_t ivfena:1; 1678c2ecf20Sopenharmony_ci uint64_t ovfena:1; 1688c2ecf20Sopenharmony_ci#else 1698c2ecf20Sopenharmony_ci uint64_t ovfena:1; 1708c2ecf20Sopenharmony_ci uint64_t ivfena:1; 1718c2ecf20Sopenharmony_ci uint64_t othena:1; 1728c2ecf20Sopenharmony_ci uint64_t ithena:1; 1738c2ecf20Sopenharmony_ci uint64_t data_drpena:1; 1748c2ecf20Sopenharmony_ci uint64_t irunena:1; 1758c2ecf20Sopenharmony_ci uint64_t orunena:1; 1768c2ecf20Sopenharmony_ci uint64_t reserved_7_63:57; 1778c2ecf20Sopenharmony_ci#endif 1788c2ecf20Sopenharmony_ci } cn52xx; 1798c2ecf20Sopenharmony_ci}; 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ciunion cvmx_mixx_ircnt { 1828c2ecf20Sopenharmony_ci uint64_t u64; 1838c2ecf20Sopenharmony_ci struct cvmx_mixx_ircnt_s { 1848c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 1858c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 1868c2ecf20Sopenharmony_ci uint64_t ircnt:20; 1878c2ecf20Sopenharmony_ci#else 1888c2ecf20Sopenharmony_ci uint64_t ircnt:20; 1898c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 1908c2ecf20Sopenharmony_ci#endif 1918c2ecf20Sopenharmony_ci } s; 1928c2ecf20Sopenharmony_ci}; 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_ciunion cvmx_mixx_irhwm { 1958c2ecf20Sopenharmony_ci uint64_t u64; 1968c2ecf20Sopenharmony_ci struct cvmx_mixx_irhwm_s { 1978c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 1988c2ecf20Sopenharmony_ci uint64_t reserved_40_63:24; 1998c2ecf20Sopenharmony_ci uint64_t ibplwm:20; 2008c2ecf20Sopenharmony_ci uint64_t irhwm:20; 2018c2ecf20Sopenharmony_ci#else 2028c2ecf20Sopenharmony_ci uint64_t irhwm:20; 2038c2ecf20Sopenharmony_ci uint64_t ibplwm:20; 2048c2ecf20Sopenharmony_ci uint64_t reserved_40_63:24; 2058c2ecf20Sopenharmony_ci#endif 2068c2ecf20Sopenharmony_ci } s; 2078c2ecf20Sopenharmony_ci}; 2088c2ecf20Sopenharmony_ci 2098c2ecf20Sopenharmony_ciunion cvmx_mixx_iring1 { 2108c2ecf20Sopenharmony_ci uint64_t u64; 2118c2ecf20Sopenharmony_ci struct cvmx_mixx_iring1_s { 2128c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 2138c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 2148c2ecf20Sopenharmony_ci uint64_t isize:20; 2158c2ecf20Sopenharmony_ci uint64_t ibase:37; 2168c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 2178c2ecf20Sopenharmony_ci#else 2188c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 2198c2ecf20Sopenharmony_ci uint64_t ibase:37; 2208c2ecf20Sopenharmony_ci uint64_t isize:20; 2218c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 2228c2ecf20Sopenharmony_ci#endif 2238c2ecf20Sopenharmony_ci } s; 2248c2ecf20Sopenharmony_ci struct cvmx_mixx_iring1_cn52xx { 2258c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 2268c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 2278c2ecf20Sopenharmony_ci uint64_t isize:20; 2288c2ecf20Sopenharmony_ci uint64_t reserved_36_39:4; 2298c2ecf20Sopenharmony_ci uint64_t ibase:33; 2308c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 2318c2ecf20Sopenharmony_ci#else 2328c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 2338c2ecf20Sopenharmony_ci uint64_t ibase:33; 2348c2ecf20Sopenharmony_ci uint64_t reserved_36_39:4; 2358c2ecf20Sopenharmony_ci uint64_t isize:20; 2368c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 2378c2ecf20Sopenharmony_ci#endif 2388c2ecf20Sopenharmony_ci } cn52xx; 2398c2ecf20Sopenharmony_ci}; 2408c2ecf20Sopenharmony_ci 2418c2ecf20Sopenharmony_ciunion cvmx_mixx_iring2 { 2428c2ecf20Sopenharmony_ci uint64_t u64; 2438c2ecf20Sopenharmony_ci struct cvmx_mixx_iring2_s { 2448c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 2458c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 2468c2ecf20Sopenharmony_ci uint64_t itlptr:20; 2478c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 2488c2ecf20Sopenharmony_ci uint64_t idbell:20; 2498c2ecf20Sopenharmony_ci#else 2508c2ecf20Sopenharmony_ci uint64_t idbell:20; 2518c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 2528c2ecf20Sopenharmony_ci uint64_t itlptr:20; 2538c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 2548c2ecf20Sopenharmony_ci#endif 2558c2ecf20Sopenharmony_ci } s; 2568c2ecf20Sopenharmony_ci}; 2578c2ecf20Sopenharmony_ci 2588c2ecf20Sopenharmony_ciunion cvmx_mixx_isr { 2598c2ecf20Sopenharmony_ci uint64_t u64; 2608c2ecf20Sopenharmony_ci struct cvmx_mixx_isr_s { 2618c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 2628c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 2638c2ecf20Sopenharmony_ci uint64_t ts:1; 2648c2ecf20Sopenharmony_ci uint64_t orun:1; 2658c2ecf20Sopenharmony_ci uint64_t irun:1; 2668c2ecf20Sopenharmony_ci uint64_t data_drp:1; 2678c2ecf20Sopenharmony_ci uint64_t irthresh:1; 2688c2ecf20Sopenharmony_ci uint64_t orthresh:1; 2698c2ecf20Sopenharmony_ci uint64_t idblovf:1; 2708c2ecf20Sopenharmony_ci uint64_t odblovf:1; 2718c2ecf20Sopenharmony_ci#else 2728c2ecf20Sopenharmony_ci uint64_t odblovf:1; 2738c2ecf20Sopenharmony_ci uint64_t idblovf:1; 2748c2ecf20Sopenharmony_ci uint64_t orthresh:1; 2758c2ecf20Sopenharmony_ci uint64_t irthresh:1; 2768c2ecf20Sopenharmony_ci uint64_t data_drp:1; 2778c2ecf20Sopenharmony_ci uint64_t irun:1; 2788c2ecf20Sopenharmony_ci uint64_t orun:1; 2798c2ecf20Sopenharmony_ci uint64_t ts:1; 2808c2ecf20Sopenharmony_ci uint64_t reserved_8_63:56; 2818c2ecf20Sopenharmony_ci#endif 2828c2ecf20Sopenharmony_ci } s; 2838c2ecf20Sopenharmony_ci struct cvmx_mixx_isr_cn52xx { 2848c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 2858c2ecf20Sopenharmony_ci uint64_t reserved_7_63:57; 2868c2ecf20Sopenharmony_ci uint64_t orun:1; 2878c2ecf20Sopenharmony_ci uint64_t irun:1; 2888c2ecf20Sopenharmony_ci uint64_t data_drp:1; 2898c2ecf20Sopenharmony_ci uint64_t irthresh:1; 2908c2ecf20Sopenharmony_ci uint64_t orthresh:1; 2918c2ecf20Sopenharmony_ci uint64_t idblovf:1; 2928c2ecf20Sopenharmony_ci uint64_t odblovf:1; 2938c2ecf20Sopenharmony_ci#else 2948c2ecf20Sopenharmony_ci uint64_t odblovf:1; 2958c2ecf20Sopenharmony_ci uint64_t idblovf:1; 2968c2ecf20Sopenharmony_ci uint64_t orthresh:1; 2978c2ecf20Sopenharmony_ci uint64_t irthresh:1; 2988c2ecf20Sopenharmony_ci uint64_t data_drp:1; 2998c2ecf20Sopenharmony_ci uint64_t irun:1; 3008c2ecf20Sopenharmony_ci uint64_t orun:1; 3018c2ecf20Sopenharmony_ci uint64_t reserved_7_63:57; 3028c2ecf20Sopenharmony_ci#endif 3038c2ecf20Sopenharmony_ci } cn52xx; 3048c2ecf20Sopenharmony_ci}; 3058c2ecf20Sopenharmony_ci 3068c2ecf20Sopenharmony_ciunion cvmx_mixx_orcnt { 3078c2ecf20Sopenharmony_ci uint64_t u64; 3088c2ecf20Sopenharmony_ci struct cvmx_mixx_orcnt_s { 3098c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3108c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 3118c2ecf20Sopenharmony_ci uint64_t orcnt:20; 3128c2ecf20Sopenharmony_ci#else 3138c2ecf20Sopenharmony_ci uint64_t orcnt:20; 3148c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 3158c2ecf20Sopenharmony_ci#endif 3168c2ecf20Sopenharmony_ci } s; 3178c2ecf20Sopenharmony_ci}; 3188c2ecf20Sopenharmony_ci 3198c2ecf20Sopenharmony_ciunion cvmx_mixx_orhwm { 3208c2ecf20Sopenharmony_ci uint64_t u64; 3218c2ecf20Sopenharmony_ci struct cvmx_mixx_orhwm_s { 3228c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3238c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 3248c2ecf20Sopenharmony_ci uint64_t orhwm:20; 3258c2ecf20Sopenharmony_ci#else 3268c2ecf20Sopenharmony_ci uint64_t orhwm:20; 3278c2ecf20Sopenharmony_ci uint64_t reserved_20_63:44; 3288c2ecf20Sopenharmony_ci#endif 3298c2ecf20Sopenharmony_ci } s; 3308c2ecf20Sopenharmony_ci}; 3318c2ecf20Sopenharmony_ci 3328c2ecf20Sopenharmony_ciunion cvmx_mixx_oring1 { 3338c2ecf20Sopenharmony_ci uint64_t u64; 3348c2ecf20Sopenharmony_ci struct cvmx_mixx_oring1_s { 3358c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3368c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 3378c2ecf20Sopenharmony_ci uint64_t osize:20; 3388c2ecf20Sopenharmony_ci uint64_t obase:37; 3398c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 3408c2ecf20Sopenharmony_ci#else 3418c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 3428c2ecf20Sopenharmony_ci uint64_t obase:37; 3438c2ecf20Sopenharmony_ci uint64_t osize:20; 3448c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 3458c2ecf20Sopenharmony_ci#endif 3468c2ecf20Sopenharmony_ci } s; 3478c2ecf20Sopenharmony_ci struct cvmx_mixx_oring1_cn52xx { 3488c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3498c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 3508c2ecf20Sopenharmony_ci uint64_t osize:20; 3518c2ecf20Sopenharmony_ci uint64_t reserved_36_39:4; 3528c2ecf20Sopenharmony_ci uint64_t obase:33; 3538c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 3548c2ecf20Sopenharmony_ci#else 3558c2ecf20Sopenharmony_ci uint64_t reserved_0_2:3; 3568c2ecf20Sopenharmony_ci uint64_t obase:33; 3578c2ecf20Sopenharmony_ci uint64_t reserved_36_39:4; 3588c2ecf20Sopenharmony_ci uint64_t osize:20; 3598c2ecf20Sopenharmony_ci uint64_t reserved_60_63:4; 3608c2ecf20Sopenharmony_ci#endif 3618c2ecf20Sopenharmony_ci } cn52xx; 3628c2ecf20Sopenharmony_ci}; 3638c2ecf20Sopenharmony_ci 3648c2ecf20Sopenharmony_ciunion cvmx_mixx_oring2 { 3658c2ecf20Sopenharmony_ci uint64_t u64; 3668c2ecf20Sopenharmony_ci struct cvmx_mixx_oring2_s { 3678c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3688c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 3698c2ecf20Sopenharmony_ci uint64_t otlptr:20; 3708c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 3718c2ecf20Sopenharmony_ci uint64_t odbell:20; 3728c2ecf20Sopenharmony_ci#else 3738c2ecf20Sopenharmony_ci uint64_t odbell:20; 3748c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 3758c2ecf20Sopenharmony_ci uint64_t otlptr:20; 3768c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 3778c2ecf20Sopenharmony_ci#endif 3788c2ecf20Sopenharmony_ci } s; 3798c2ecf20Sopenharmony_ci}; 3808c2ecf20Sopenharmony_ci 3818c2ecf20Sopenharmony_ciunion cvmx_mixx_remcnt { 3828c2ecf20Sopenharmony_ci uint64_t u64; 3838c2ecf20Sopenharmony_ci struct cvmx_mixx_remcnt_s { 3848c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 3858c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 3868c2ecf20Sopenharmony_ci uint64_t iremcnt:20; 3878c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 3888c2ecf20Sopenharmony_ci uint64_t oremcnt:20; 3898c2ecf20Sopenharmony_ci#else 3908c2ecf20Sopenharmony_ci uint64_t oremcnt:20; 3918c2ecf20Sopenharmony_ci uint64_t reserved_20_31:12; 3928c2ecf20Sopenharmony_ci uint64_t iremcnt:20; 3938c2ecf20Sopenharmony_ci uint64_t reserved_52_63:12; 3948c2ecf20Sopenharmony_ci#endif 3958c2ecf20Sopenharmony_ci } s; 3968c2ecf20Sopenharmony_ci}; 3978c2ecf20Sopenharmony_ci 3988c2ecf20Sopenharmony_ciunion cvmx_mixx_tsctl { 3998c2ecf20Sopenharmony_ci uint64_t u64; 4008c2ecf20Sopenharmony_ci struct cvmx_mixx_tsctl_s { 4018c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 4028c2ecf20Sopenharmony_ci uint64_t reserved_21_63:43; 4038c2ecf20Sopenharmony_ci uint64_t tsavl:5; 4048c2ecf20Sopenharmony_ci uint64_t reserved_13_15:3; 4058c2ecf20Sopenharmony_ci uint64_t tstot:5; 4068c2ecf20Sopenharmony_ci uint64_t reserved_5_7:3; 4078c2ecf20Sopenharmony_ci uint64_t tscnt:5; 4088c2ecf20Sopenharmony_ci#else 4098c2ecf20Sopenharmony_ci uint64_t tscnt:5; 4108c2ecf20Sopenharmony_ci uint64_t reserved_5_7:3; 4118c2ecf20Sopenharmony_ci uint64_t tstot:5; 4128c2ecf20Sopenharmony_ci uint64_t reserved_13_15:3; 4138c2ecf20Sopenharmony_ci uint64_t tsavl:5; 4148c2ecf20Sopenharmony_ci uint64_t reserved_21_63:43; 4158c2ecf20Sopenharmony_ci#endif 4168c2ecf20Sopenharmony_ci } s; 4178c2ecf20Sopenharmony_ci}; 4188c2ecf20Sopenharmony_ci 4198c2ecf20Sopenharmony_ciunion cvmx_mixx_tstamp { 4208c2ecf20Sopenharmony_ci uint64_t u64; 4218c2ecf20Sopenharmony_ci struct cvmx_mixx_tstamp_s { 4228c2ecf20Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 4238c2ecf20Sopenharmony_ci uint64_t tstamp:64; 4248c2ecf20Sopenharmony_ci#else 4258c2ecf20Sopenharmony_ci uint64_t tstamp:64; 4268c2ecf20Sopenharmony_ci#endif 4278c2ecf20Sopenharmony_ci } s; 4288c2ecf20Sopenharmony_ci}; 4298c2ecf20Sopenharmony_ci 4308c2ecf20Sopenharmony_ci#endif 431