Linux Audio

Check our new training course

Loading...
v3.1
   1/***********************license start***************
   2 * Author: Cavium Networks
   3 *
   4 * Contact: support@caviumnetworks.com
   5 * This file is part of the OCTEON SDK
   6 *
   7 * Copyright (c) 2003-2010 Cavium Networks
   8 *
   9 * This file is free software; you can redistribute it and/or modify
  10 * it under the terms of the GNU General Public License, Version 2, as
  11 * published by the Free Software Foundation.
  12 *
  13 * This file is distributed in the hope that it will be useful, but
  14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
  15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
  16 * NONINFRINGEMENT.  See the GNU General Public License for more
  17 * details.
  18 *
  19 * You should have received a copy of the GNU General Public License
  20 * along with this file; if not, write to the Free Software
  21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  22 * or visit http://www.gnu.org/licenses/.
  23 *
  24 * This file may also be available under a different license from Cavium.
  25 * Contact Cavium Networks for more information
  26 ***********************license end**************************************/
  27
  28#ifndef __CVMX_NPI_DEFS_H__
  29#define __CVMX_NPI_DEFS_H__
  30
  31#define CVMX_NPI_BASE_ADDR_INPUT0 CVMX_NPI_BASE_ADDR_INPUTX(0)
  32#define CVMX_NPI_BASE_ADDR_INPUT1 CVMX_NPI_BASE_ADDR_INPUTX(1)
  33#define CVMX_NPI_BASE_ADDR_INPUT2 CVMX_NPI_BASE_ADDR_INPUTX(2)
  34#define CVMX_NPI_BASE_ADDR_INPUT3 CVMX_NPI_BASE_ADDR_INPUTX(3)
  35#define CVMX_NPI_BASE_ADDR_INPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000070ull) + ((offset) & 3) * 16)
  36#define CVMX_NPI_BASE_ADDR_OUTPUT0 CVMX_NPI_BASE_ADDR_OUTPUTX(0)
  37#define CVMX_NPI_BASE_ADDR_OUTPUT1 CVMX_NPI_BASE_ADDR_OUTPUTX(1)
  38#define CVMX_NPI_BASE_ADDR_OUTPUT2 CVMX_NPI_BASE_ADDR_OUTPUTX(2)
  39#define CVMX_NPI_BASE_ADDR_OUTPUT3 CVMX_NPI_BASE_ADDR_OUTPUTX(3)
  40#define CVMX_NPI_BASE_ADDR_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F00000000B8ull) + ((offset) & 3) * 8)
  41#define CVMX_NPI_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011F00000003F8ull))
  42#define CVMX_NPI_BUFF_SIZE_OUTPUT0 CVMX_NPI_BUFF_SIZE_OUTPUTX(0)
  43#define CVMX_NPI_BUFF_SIZE_OUTPUT1 CVMX_NPI_BUFF_SIZE_OUTPUTX(1)
  44#define CVMX_NPI_BUFF_SIZE_OUTPUT2 CVMX_NPI_BUFF_SIZE_OUTPUTX(2)
  45#define CVMX_NPI_BUFF_SIZE_OUTPUT3 CVMX_NPI_BUFF_SIZE_OUTPUTX(3)
  46#define CVMX_NPI_BUFF_SIZE_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F00000000E0ull) + ((offset) & 3) * 8)
  47#define CVMX_NPI_COMP_CTL (CVMX_ADD_IO_SEG(0x00011F0000000218ull))
  48#define CVMX_NPI_CTL_STATUS (CVMX_ADD_IO_SEG(0x00011F0000000010ull))
  49#define CVMX_NPI_DBG_SELECT (CVMX_ADD_IO_SEG(0x00011F0000000008ull))
  50#define CVMX_NPI_DMA_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000128ull))
  51#define CVMX_NPI_DMA_HIGHP_COUNTS (CVMX_ADD_IO_SEG(0x00011F0000000148ull))
  52#define CVMX_NPI_DMA_HIGHP_NADDR (CVMX_ADD_IO_SEG(0x00011F0000000158ull))
  53#define CVMX_NPI_DMA_LOWP_COUNTS (CVMX_ADD_IO_SEG(0x00011F0000000140ull))
  54#define CVMX_NPI_DMA_LOWP_NADDR (CVMX_ADD_IO_SEG(0x00011F0000000150ull))
  55#define CVMX_NPI_HIGHP_DBELL (CVMX_ADD_IO_SEG(0x00011F0000000120ull))
  56#define CVMX_NPI_HIGHP_IBUFF_SADDR (CVMX_ADD_IO_SEG(0x00011F0000000110ull))
  57#define CVMX_NPI_INPUT_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000138ull))
  58#define CVMX_NPI_INT_ENB (CVMX_ADD_IO_SEG(0x00011F0000000020ull))
  59#define CVMX_NPI_INT_SUM (CVMX_ADD_IO_SEG(0x00011F0000000018ull))
  60#define CVMX_NPI_LOWP_DBELL (CVMX_ADD_IO_SEG(0x00011F0000000118ull))
  61#define CVMX_NPI_LOWP_IBUFF_SADDR (CVMX_ADD_IO_SEG(0x00011F0000000108ull))
  62#define CVMX_NPI_MEM_ACCESS_SUBID3 CVMX_NPI_MEM_ACCESS_SUBIDX(3)
  63#define CVMX_NPI_MEM_ACCESS_SUBID4 CVMX_NPI_MEM_ACCESS_SUBIDX(4)
  64#define CVMX_NPI_MEM_ACCESS_SUBID5 CVMX_NPI_MEM_ACCESS_SUBIDX(5)
  65#define CVMX_NPI_MEM_ACCESS_SUBID6 CVMX_NPI_MEM_ACCESS_SUBIDX(6)
  66#define CVMX_NPI_MEM_ACCESS_SUBIDX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000028ull) + ((offset) & 7) * 8 - 8*3)
  67#define CVMX_NPI_MSI_RCV (0x0000000000000190ull)
  68#define CVMX_NPI_NPI_MSI_RCV (CVMX_ADD_IO_SEG(0x00011F0000001190ull))
  69#define CVMX_NPI_NUM_DESC_OUTPUT0 CVMX_NPI_NUM_DESC_OUTPUTX(0)
  70#define CVMX_NPI_NUM_DESC_OUTPUT1 CVMX_NPI_NUM_DESC_OUTPUTX(1)
  71#define CVMX_NPI_NUM_DESC_OUTPUT2 CVMX_NPI_NUM_DESC_OUTPUTX(2)
  72#define CVMX_NPI_NUM_DESC_OUTPUT3 CVMX_NPI_NUM_DESC_OUTPUTX(3)
  73#define CVMX_NPI_NUM_DESC_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000050ull) + ((offset) & 3) * 8)
  74#define CVMX_NPI_OUTPUT_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000100ull))
  75#define CVMX_NPI_P0_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(0)
  76#define CVMX_NPI_P0_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(0)
  77#define CVMX_NPI_P0_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(0)
  78#define CVMX_NPI_P0_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(0)
  79#define CVMX_NPI_P1_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(1)
  80#define CVMX_NPI_P1_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(1)
  81#define CVMX_NPI_P1_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(1)
  82#define CVMX_NPI_P1_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(1)
  83#define CVMX_NPI_P2_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(2)
  84#define CVMX_NPI_P2_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(2)
  85#define CVMX_NPI_P2_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(2)
  86#define CVMX_NPI_P2_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(2)
  87#define CVMX_NPI_P3_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(3)
  88#define CVMX_NPI_P3_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(3)
  89#define CVMX_NPI_P3_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(3)
  90#define CVMX_NPI_P3_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(3)
  91#define CVMX_NPI_PCI_BAR1_INDEXX(offset) (CVMX_ADD_IO_SEG(0x00011F0000001100ull) + ((offset) & 31) * 4)
  92#define CVMX_NPI_PCI_BIST_REG (CVMX_ADD_IO_SEG(0x00011F00000011C0ull))
  93#define CVMX_NPI_PCI_BURST_SIZE (CVMX_ADD_IO_SEG(0x00011F00000000D8ull))
  94#define CVMX_NPI_PCI_CFG00 (CVMX_ADD_IO_SEG(0x00011F0000001800ull))
  95#define CVMX_NPI_PCI_CFG01 (CVMX_ADD_IO_SEG(0x00011F0000001804ull))
  96#define CVMX_NPI_PCI_CFG02 (CVMX_ADD_IO_SEG(0x00011F0000001808ull))
  97#define CVMX_NPI_PCI_CFG03 (CVMX_ADD_IO_SEG(0x00011F000000180Cull))
  98#define CVMX_NPI_PCI_CFG04 (CVMX_ADD_IO_SEG(0x00011F0000001810ull))
  99#define CVMX_NPI_PCI_CFG05 (CVMX_ADD_IO_SEG(0x00011F0000001814ull))
 100#define CVMX_NPI_PCI_CFG06 (CVMX_ADD_IO_SEG(0x00011F0000001818ull))
 101#define CVMX_NPI_PCI_CFG07 (CVMX_ADD_IO_SEG(0x00011F000000181Cull))
 102#define CVMX_NPI_PCI_CFG08 (CVMX_ADD_IO_SEG(0x00011F0000001820ull))
 103#define CVMX_NPI_PCI_CFG09 (CVMX_ADD_IO_SEG(0x00011F0000001824ull))
 104#define CVMX_NPI_PCI_CFG10 (CVMX_ADD_IO_SEG(0x00011F0000001828ull))
 105#define CVMX_NPI_PCI_CFG11 (CVMX_ADD_IO_SEG(0x00011F000000182Cull))
 106#define CVMX_NPI_PCI_CFG12 (CVMX_ADD_IO_SEG(0x00011F0000001830ull))
 107#define CVMX_NPI_PCI_CFG13 (CVMX_ADD_IO_SEG(0x00011F0000001834ull))
 108#define CVMX_NPI_PCI_CFG15 (CVMX_ADD_IO_SEG(0x00011F000000183Cull))
 109#define CVMX_NPI_PCI_CFG16 (CVMX_ADD_IO_SEG(0x00011F0000001840ull))
 110#define CVMX_NPI_PCI_CFG17 (CVMX_ADD_IO_SEG(0x00011F0000001844ull))
 111#define CVMX_NPI_PCI_CFG18 (CVMX_ADD_IO_SEG(0x00011F0000001848ull))
 112#define CVMX_NPI_PCI_CFG19 (CVMX_ADD_IO_SEG(0x00011F000000184Cull))
 113#define CVMX_NPI_PCI_CFG20 (CVMX_ADD_IO_SEG(0x00011F0000001850ull))
 114#define CVMX_NPI_PCI_CFG21 (CVMX_ADD_IO_SEG(0x00011F0000001854ull))
 115#define CVMX_NPI_PCI_CFG22 (CVMX_ADD_IO_SEG(0x00011F0000001858ull))
 116#define CVMX_NPI_PCI_CFG56 (CVMX_ADD_IO_SEG(0x00011F00000018E0ull))
 117#define CVMX_NPI_PCI_CFG57 (CVMX_ADD_IO_SEG(0x00011F00000018E4ull))
 118#define CVMX_NPI_PCI_CFG58 (CVMX_ADD_IO_SEG(0x00011F00000018E8ull))
 119#define CVMX_NPI_PCI_CFG59 (CVMX_ADD_IO_SEG(0x00011F00000018ECull))
 120#define CVMX_NPI_PCI_CFG60 (CVMX_ADD_IO_SEG(0x00011F00000018F0ull))
 121#define CVMX_NPI_PCI_CFG61 (CVMX_ADD_IO_SEG(0x00011F00000018F4ull))
 122#define CVMX_NPI_PCI_CFG62 (CVMX_ADD_IO_SEG(0x00011F00000018F8ull))
 123#define CVMX_NPI_PCI_CFG63 (CVMX_ADD_IO_SEG(0x00011F00000018FCull))
 124#define CVMX_NPI_PCI_CNT_REG (CVMX_ADD_IO_SEG(0x00011F00000011B8ull))
 125#define CVMX_NPI_PCI_CTL_STATUS_2 (CVMX_ADD_IO_SEG(0x00011F000000118Cull))
 126#define CVMX_NPI_PCI_INT_ARB_CFG (CVMX_ADD_IO_SEG(0x00011F0000000130ull))
 127#define CVMX_NPI_PCI_INT_ENB2 (CVMX_ADD_IO_SEG(0x00011F00000011A0ull))
 128#define CVMX_NPI_PCI_INT_SUM2 (CVMX_ADD_IO_SEG(0x00011F0000001198ull))
 129#define CVMX_NPI_PCI_READ_CMD (CVMX_ADD_IO_SEG(0x00011F0000000048ull))
 130#define CVMX_NPI_PCI_READ_CMD_6 (CVMX_ADD_IO_SEG(0x00011F0000001180ull))
 131#define CVMX_NPI_PCI_READ_CMD_C (CVMX_ADD_IO_SEG(0x00011F0000001184ull))
 132#define CVMX_NPI_PCI_READ_CMD_E (CVMX_ADD_IO_SEG(0x00011F0000001188ull))
 133#define CVMX_NPI_PCI_SCM_REG (CVMX_ADD_IO_SEG(0x00011F00000011A8ull))
 134#define CVMX_NPI_PCI_TSR_REG (CVMX_ADD_IO_SEG(0x00011F00000011B0ull))
 135#define CVMX_NPI_PORT32_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F00000001F8ull))
 136#define CVMX_NPI_PORT33_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000200ull))
 137#define CVMX_NPI_PORT34_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000208ull))
 138#define CVMX_NPI_PORT35_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000210ull))
 139#define CVMX_NPI_PORT_BP_CONTROL (CVMX_ADD_IO_SEG(0x00011F00000001F0ull))
 140#define CVMX_NPI_PX_DBPAIR_ADDR(offset) (CVMX_ADD_IO_SEG(0x00011F0000000180ull) + ((offset) & 3) * 8)
 141#define CVMX_NPI_PX_INSTR_ADDR(offset) (CVMX_ADD_IO_SEG(0x00011F00000001C0ull) + ((offset) & 3) * 8)
 142#define CVMX_NPI_PX_INSTR_CNTS(offset) (CVMX_ADD_IO_SEG(0x00011F00000001A0ull) + ((offset) & 3) * 8)
 143#define CVMX_NPI_PX_PAIR_CNTS(offset) (CVMX_ADD_IO_SEG(0x00011F0000000160ull) + ((offset) & 3) * 8)
 144#define CVMX_NPI_RSL_INT_BLOCKS (CVMX_ADD_IO_SEG(0x00011F0000000000ull))
 145#define CVMX_NPI_SIZE_INPUT0 CVMX_NPI_SIZE_INPUTX(0)
 146#define CVMX_NPI_SIZE_INPUT1 CVMX_NPI_SIZE_INPUTX(1)
 147#define CVMX_NPI_SIZE_INPUT2 CVMX_NPI_SIZE_INPUTX(2)
 148#define CVMX_NPI_SIZE_INPUT3 CVMX_NPI_SIZE_INPUTX(3)
 149#define CVMX_NPI_SIZE_INPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000078ull) + ((offset) & 3) * 16)
 150#define CVMX_NPI_WIN_READ_TO (CVMX_ADD_IO_SEG(0x00011F00000001E0ull))
 151
 152union cvmx_npi_base_addr_inputx {
 153	uint64_t u64;
 154	struct cvmx_npi_base_addr_inputx_s {
 
 155		uint64_t baddr:61;
 156		uint64_t reserved_0_2:3;
 
 
 
 
 157	} s;
 158	struct cvmx_npi_base_addr_inputx_s cn30xx;
 159	struct cvmx_npi_base_addr_inputx_s cn31xx;
 160	struct cvmx_npi_base_addr_inputx_s cn38xx;
 161	struct cvmx_npi_base_addr_inputx_s cn38xxp2;
 162	struct cvmx_npi_base_addr_inputx_s cn50xx;
 163	struct cvmx_npi_base_addr_inputx_s cn58xx;
 164	struct cvmx_npi_base_addr_inputx_s cn58xxp1;
 165};
 166
 167union cvmx_npi_base_addr_outputx {
 168	uint64_t u64;
 169	struct cvmx_npi_base_addr_outputx_s {
 
 170		uint64_t baddr:61;
 171		uint64_t reserved_0_2:3;
 
 
 
 
 172	} s;
 173	struct cvmx_npi_base_addr_outputx_s cn30xx;
 174	struct cvmx_npi_base_addr_outputx_s cn31xx;
 175	struct cvmx_npi_base_addr_outputx_s cn38xx;
 176	struct cvmx_npi_base_addr_outputx_s cn38xxp2;
 177	struct cvmx_npi_base_addr_outputx_s cn50xx;
 178	struct cvmx_npi_base_addr_outputx_s cn58xx;
 179	struct cvmx_npi_base_addr_outputx_s cn58xxp1;
 180};
 181
 182union cvmx_npi_bist_status {
 183	uint64_t u64;
 184	struct cvmx_npi_bist_status_s {
 
 185		uint64_t reserved_20_63:44;
 186		uint64_t csr_bs:1;
 187		uint64_t dif_bs:1;
 188		uint64_t rdp_bs:1;
 189		uint64_t pcnc_bs:1;
 190		uint64_t pcn_bs:1;
 191		uint64_t rdn_bs:1;
 192		uint64_t pcac_bs:1;
 193		uint64_t pcad_bs:1;
 194		uint64_t rdnl_bs:1;
 195		uint64_t pgf_bs:1;
 196		uint64_t pig_bs:1;
 197		uint64_t pof0_bs:1;
 198		uint64_t pof1_bs:1;
 199		uint64_t pof2_bs:1;
 200		uint64_t pof3_bs:1;
 201		uint64_t pos_bs:1;
 202		uint64_t nus_bs:1;
 203		uint64_t dob_bs:1;
 204		uint64_t pdf_bs:1;
 205		uint64_t dpi_bs:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 206	} s;
 207	struct cvmx_npi_bist_status_cn30xx {
 
 208		uint64_t reserved_20_63:44;
 209		uint64_t csr_bs:1;
 210		uint64_t dif_bs:1;
 211		uint64_t rdp_bs:1;
 212		uint64_t pcnc_bs:1;
 213		uint64_t pcn_bs:1;
 214		uint64_t rdn_bs:1;
 215		uint64_t pcac_bs:1;
 216		uint64_t pcad_bs:1;
 217		uint64_t rdnl_bs:1;
 218		uint64_t pgf_bs:1;
 219		uint64_t pig_bs:1;
 220		uint64_t pof0_bs:1;
 221		uint64_t reserved_5_7:3;
 222		uint64_t pos_bs:1;
 223		uint64_t nus_bs:1;
 224		uint64_t dob_bs:1;
 225		uint64_t pdf_bs:1;
 226		uint64_t dpi_bs:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 227	} cn30xx;
 228	struct cvmx_npi_bist_status_s cn31xx;
 229	struct cvmx_npi_bist_status_s cn38xx;
 230	struct cvmx_npi_bist_status_s cn38xxp2;
 231	struct cvmx_npi_bist_status_cn50xx {
 
 232		uint64_t reserved_20_63:44;
 233		uint64_t csr_bs:1;
 234		uint64_t dif_bs:1;
 235		uint64_t rdp_bs:1;
 236		uint64_t pcnc_bs:1;
 237		uint64_t pcn_bs:1;
 238		uint64_t rdn_bs:1;
 239		uint64_t pcac_bs:1;
 240		uint64_t pcad_bs:1;
 241		uint64_t rdnl_bs:1;
 242		uint64_t pgf_bs:1;
 243		uint64_t pig_bs:1;
 244		uint64_t pof0_bs:1;
 245		uint64_t pof1_bs:1;
 246		uint64_t reserved_5_6:2;
 247		uint64_t pos_bs:1;
 248		uint64_t nus_bs:1;
 249		uint64_t dob_bs:1;
 250		uint64_t pdf_bs:1;
 251		uint64_t dpi_bs:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 252	} cn50xx;
 253	struct cvmx_npi_bist_status_s cn58xx;
 254	struct cvmx_npi_bist_status_s cn58xxp1;
 255};
 256
 257union cvmx_npi_buff_size_outputx {
 258	uint64_t u64;
 259	struct cvmx_npi_buff_size_outputx_s {
 
 260		uint64_t reserved_23_63:41;
 261		uint64_t isize:7;
 262		uint64_t bsize:16;
 
 
 
 
 
 263	} s;
 264	struct cvmx_npi_buff_size_outputx_s cn30xx;
 265	struct cvmx_npi_buff_size_outputx_s cn31xx;
 266	struct cvmx_npi_buff_size_outputx_s cn38xx;
 267	struct cvmx_npi_buff_size_outputx_s cn38xxp2;
 268	struct cvmx_npi_buff_size_outputx_s cn50xx;
 269	struct cvmx_npi_buff_size_outputx_s cn58xx;
 270	struct cvmx_npi_buff_size_outputx_s cn58xxp1;
 271};
 272
 273union cvmx_npi_comp_ctl {
 274	uint64_t u64;
 275	struct cvmx_npi_comp_ctl_s {
 
 276		uint64_t reserved_10_63:54;
 277		uint64_t pctl:5;
 278		uint64_t nctl:5;
 
 
 
 
 
 279	} s;
 280	struct cvmx_npi_comp_ctl_s cn50xx;
 281	struct cvmx_npi_comp_ctl_s cn58xx;
 282	struct cvmx_npi_comp_ctl_s cn58xxp1;
 283};
 284
 285union cvmx_npi_ctl_status {
 286	uint64_t u64;
 287	struct cvmx_npi_ctl_status_s {
 
 288		uint64_t reserved_63_63:1;
 289		uint64_t chip_rev:8;
 290		uint64_t dis_pniw:1;
 291		uint64_t out3_enb:1;
 292		uint64_t out2_enb:1;
 293		uint64_t out1_enb:1;
 294		uint64_t out0_enb:1;
 295		uint64_t ins3_enb:1;
 296		uint64_t ins2_enb:1;
 297		uint64_t ins1_enb:1;
 298		uint64_t ins0_enb:1;
 299		uint64_t ins3_64b:1;
 300		uint64_t ins2_64b:1;
 301		uint64_t ins1_64b:1;
 302		uint64_t ins0_64b:1;
 303		uint64_t pci_wdis:1;
 304		uint64_t wait_com:1;
 305		uint64_t reserved_37_39:3;
 306		uint64_t max_word:5;
 307		uint64_t reserved_10_31:22;
 308		uint64_t timer:10;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 309	} s;
 310	struct cvmx_npi_ctl_status_cn30xx {
 
 311		uint64_t reserved_63_63:1;
 312		uint64_t chip_rev:8;
 313		uint64_t dis_pniw:1;
 314		uint64_t reserved_51_53:3;
 315		uint64_t out0_enb:1;
 316		uint64_t reserved_47_49:3;
 317		uint64_t ins0_enb:1;
 318		uint64_t reserved_43_45:3;
 319		uint64_t ins0_64b:1;
 320		uint64_t pci_wdis:1;
 321		uint64_t wait_com:1;
 322		uint64_t reserved_37_39:3;
 323		uint64_t max_word:5;
 324		uint64_t reserved_10_31:22;
 325		uint64_t timer:10;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 326	} cn30xx;
 327	struct cvmx_npi_ctl_status_cn31xx {
 
 328		uint64_t reserved_63_63:1;
 329		uint64_t chip_rev:8;
 330		uint64_t dis_pniw:1;
 331		uint64_t reserved_52_53:2;
 332		uint64_t out1_enb:1;
 333		uint64_t out0_enb:1;
 334		uint64_t reserved_48_49:2;
 335		uint64_t ins1_enb:1;
 336		uint64_t ins0_enb:1;
 337		uint64_t reserved_44_45:2;
 338		uint64_t ins1_64b:1;
 339		uint64_t ins0_64b:1;
 340		uint64_t pci_wdis:1;
 341		uint64_t wait_com:1;
 342		uint64_t reserved_37_39:3;
 343		uint64_t max_word:5;
 344		uint64_t reserved_10_31:22;
 345		uint64_t timer:10;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 346	} cn31xx;
 347	struct cvmx_npi_ctl_status_s cn38xx;
 348	struct cvmx_npi_ctl_status_s cn38xxp2;
 349	struct cvmx_npi_ctl_status_cn31xx cn50xx;
 350	struct cvmx_npi_ctl_status_s cn58xx;
 351	struct cvmx_npi_ctl_status_s cn58xxp1;
 352};
 353
 354union cvmx_npi_dbg_select {
 355	uint64_t u64;
 356	struct cvmx_npi_dbg_select_s {
 
 357		uint64_t reserved_16_63:48;
 358		uint64_t dbg_sel:16;
 
 
 
 
 359	} s;
 360	struct cvmx_npi_dbg_select_s cn30xx;
 361	struct cvmx_npi_dbg_select_s cn31xx;
 362	struct cvmx_npi_dbg_select_s cn38xx;
 363	struct cvmx_npi_dbg_select_s cn38xxp2;
 364	struct cvmx_npi_dbg_select_s cn50xx;
 365	struct cvmx_npi_dbg_select_s cn58xx;
 366	struct cvmx_npi_dbg_select_s cn58xxp1;
 367};
 368
 369union cvmx_npi_dma_control {
 370	uint64_t u64;
 371	struct cvmx_npi_dma_control_s {
 
 372		uint64_t reserved_36_63:28;
 373		uint64_t b0_lend:1;
 374		uint64_t dwb_denb:1;
 375		uint64_t dwb_ichk:9;
 376		uint64_t fpa_que:3;
 377		uint64_t o_add1:1;
 378		uint64_t o_ro:1;
 379		uint64_t o_ns:1;
 380		uint64_t o_es:2;
 381		uint64_t o_mode:1;
 382		uint64_t hp_enb:1;
 383		uint64_t lp_enb:1;
 384		uint64_t csize:14;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 385	} s;
 386	struct cvmx_npi_dma_control_s cn30xx;
 387	struct cvmx_npi_dma_control_s cn31xx;
 388	struct cvmx_npi_dma_control_s cn38xx;
 389	struct cvmx_npi_dma_control_s cn38xxp2;
 390	struct cvmx_npi_dma_control_s cn50xx;
 391	struct cvmx_npi_dma_control_s cn58xx;
 392	struct cvmx_npi_dma_control_s cn58xxp1;
 393};
 394
 395union cvmx_npi_dma_highp_counts {
 396	uint64_t u64;
 397	struct cvmx_npi_dma_highp_counts_s {
 
 398		uint64_t reserved_39_63:25;
 399		uint64_t fcnt:7;
 400		uint64_t dbell:32;
 
 
 
 
 
 401	} s;
 402	struct cvmx_npi_dma_highp_counts_s cn30xx;
 403	struct cvmx_npi_dma_highp_counts_s cn31xx;
 404	struct cvmx_npi_dma_highp_counts_s cn38xx;
 405	struct cvmx_npi_dma_highp_counts_s cn38xxp2;
 406	struct cvmx_npi_dma_highp_counts_s cn50xx;
 407	struct cvmx_npi_dma_highp_counts_s cn58xx;
 408	struct cvmx_npi_dma_highp_counts_s cn58xxp1;
 409};
 410
 411union cvmx_npi_dma_highp_naddr {
 412	uint64_t u64;
 413	struct cvmx_npi_dma_highp_naddr_s {
 
 414		uint64_t reserved_40_63:24;
 415		uint64_t state:4;
 416		uint64_t addr:36;
 
 
 
 
 
 417	} s;
 418	struct cvmx_npi_dma_highp_naddr_s cn30xx;
 419	struct cvmx_npi_dma_highp_naddr_s cn31xx;
 420	struct cvmx_npi_dma_highp_naddr_s cn38xx;
 421	struct cvmx_npi_dma_highp_naddr_s cn38xxp2;
 422	struct cvmx_npi_dma_highp_naddr_s cn50xx;
 423	struct cvmx_npi_dma_highp_naddr_s cn58xx;
 424	struct cvmx_npi_dma_highp_naddr_s cn58xxp1;
 425};
 426
 427union cvmx_npi_dma_lowp_counts {
 428	uint64_t u64;
 429	struct cvmx_npi_dma_lowp_counts_s {
 
 430		uint64_t reserved_39_63:25;
 431		uint64_t fcnt:7;
 432		uint64_t dbell:32;
 
 
 
 
 
 433	} s;
 434	struct cvmx_npi_dma_lowp_counts_s cn30xx;
 435	struct cvmx_npi_dma_lowp_counts_s cn31xx;
 436	struct cvmx_npi_dma_lowp_counts_s cn38xx;
 437	struct cvmx_npi_dma_lowp_counts_s cn38xxp2;
 438	struct cvmx_npi_dma_lowp_counts_s cn50xx;
 439	struct cvmx_npi_dma_lowp_counts_s cn58xx;
 440	struct cvmx_npi_dma_lowp_counts_s cn58xxp1;
 441};
 442
 443union cvmx_npi_dma_lowp_naddr {
 444	uint64_t u64;
 445	struct cvmx_npi_dma_lowp_naddr_s {
 
 446		uint64_t reserved_40_63:24;
 447		uint64_t state:4;
 448		uint64_t addr:36;
 
 
 
 
 
 449	} s;
 450	struct cvmx_npi_dma_lowp_naddr_s cn30xx;
 451	struct cvmx_npi_dma_lowp_naddr_s cn31xx;
 452	struct cvmx_npi_dma_lowp_naddr_s cn38xx;
 453	struct cvmx_npi_dma_lowp_naddr_s cn38xxp2;
 454	struct cvmx_npi_dma_lowp_naddr_s cn50xx;
 455	struct cvmx_npi_dma_lowp_naddr_s cn58xx;
 456	struct cvmx_npi_dma_lowp_naddr_s cn58xxp1;
 457};
 458
 459union cvmx_npi_highp_dbell {
 460	uint64_t u64;
 461	struct cvmx_npi_highp_dbell_s {
 
 462		uint64_t reserved_16_63:48;
 463		uint64_t dbell:16;
 
 
 
 
 464	} s;
 465	struct cvmx_npi_highp_dbell_s cn30xx;
 466	struct cvmx_npi_highp_dbell_s cn31xx;
 467	struct cvmx_npi_highp_dbell_s cn38xx;
 468	struct cvmx_npi_highp_dbell_s cn38xxp2;
 469	struct cvmx_npi_highp_dbell_s cn50xx;
 470	struct cvmx_npi_highp_dbell_s cn58xx;
 471	struct cvmx_npi_highp_dbell_s cn58xxp1;
 472};
 473
 474union cvmx_npi_highp_ibuff_saddr {
 475	uint64_t u64;
 476	struct cvmx_npi_highp_ibuff_saddr_s {
 
 477		uint64_t reserved_36_63:28;
 478		uint64_t saddr:36;
 
 
 
 
 479	} s;
 480	struct cvmx_npi_highp_ibuff_saddr_s cn30xx;
 481	struct cvmx_npi_highp_ibuff_saddr_s cn31xx;
 482	struct cvmx_npi_highp_ibuff_saddr_s cn38xx;
 483	struct cvmx_npi_highp_ibuff_saddr_s cn38xxp2;
 484	struct cvmx_npi_highp_ibuff_saddr_s cn50xx;
 485	struct cvmx_npi_highp_ibuff_saddr_s cn58xx;
 486	struct cvmx_npi_highp_ibuff_saddr_s cn58xxp1;
 487};
 488
 489union cvmx_npi_input_control {
 490	uint64_t u64;
 491	struct cvmx_npi_input_control_s {
 
 492		uint64_t reserved_23_63:41;
 493		uint64_t pkt_rr:1;
 494		uint64_t pbp_dhi:13;
 495		uint64_t d_nsr:1;
 496		uint64_t d_esr:2;
 497		uint64_t d_ror:1;
 498		uint64_t use_csr:1;
 499		uint64_t nsr:1;
 500		uint64_t esr:2;
 501		uint64_t ror:1;
 
 
 
 
 
 
 
 
 
 
 
 
 502	} s;
 503	struct cvmx_npi_input_control_cn30xx {
 
 504		uint64_t reserved_22_63:42;
 505		uint64_t pbp_dhi:13;
 506		uint64_t d_nsr:1;
 507		uint64_t d_esr:2;
 508		uint64_t d_ror:1;
 509		uint64_t use_csr:1;
 510		uint64_t nsr:1;
 511		uint64_t esr:2;
 512		uint64_t ror:1;
 
 
 
 
 
 
 
 
 
 
 
 513	} cn30xx;
 514	struct cvmx_npi_input_control_cn30xx cn31xx;
 515	struct cvmx_npi_input_control_s cn38xx;
 516	struct cvmx_npi_input_control_cn30xx cn38xxp2;
 517	struct cvmx_npi_input_control_s cn50xx;
 518	struct cvmx_npi_input_control_s cn58xx;
 519	struct cvmx_npi_input_control_s cn58xxp1;
 520};
 521
 522union cvmx_npi_int_enb {
 523	uint64_t u64;
 524	struct cvmx_npi_int_enb_s {
 
 525		uint64_t reserved_62_63:2;
 526		uint64_t q1_a_f:1;
 527		uint64_t q1_s_e:1;
 528		uint64_t pdf_p_f:1;
 529		uint64_t pdf_p_e:1;
 530		uint64_t pcf_p_f:1;
 531		uint64_t pcf_p_e:1;
 532		uint64_t rdx_s_e:1;
 533		uint64_t rwx_s_e:1;
 534		uint64_t pnc_a_f:1;
 535		uint64_t pnc_s_e:1;
 536		uint64_t com_a_f:1;
 537		uint64_t com_s_e:1;
 538		uint64_t q3_a_f:1;
 539		uint64_t q3_s_e:1;
 540		uint64_t q2_a_f:1;
 541		uint64_t q2_s_e:1;
 542		uint64_t pcr_a_f:1;
 543		uint64_t pcr_s_e:1;
 544		uint64_t fcr_a_f:1;
 545		uint64_t fcr_s_e:1;
 546		uint64_t iobdma:1;
 547		uint64_t p_dperr:1;
 548		uint64_t win_rto:1;
 549		uint64_t i3_pperr:1;
 550		uint64_t i2_pperr:1;
 551		uint64_t i1_pperr:1;
 552		uint64_t i0_pperr:1;
 553		uint64_t p3_ptout:1;
 554		uint64_t p2_ptout:1;
 555		uint64_t p1_ptout:1;
 556		uint64_t p0_ptout:1;
 557		uint64_t p3_pperr:1;
 558		uint64_t p2_pperr:1;
 559		uint64_t p1_pperr:1;
 560		uint64_t p0_pperr:1;
 561		uint64_t g3_rtout:1;
 562		uint64_t g2_rtout:1;
 563		uint64_t g1_rtout:1;
 564		uint64_t g0_rtout:1;
 565		uint64_t p3_perr:1;
 566		uint64_t p2_perr:1;
 567		uint64_t p1_perr:1;
 568		uint64_t p0_perr:1;
 569		uint64_t p3_rtout:1;
 570		uint64_t p2_rtout:1;
 571		uint64_t p1_rtout:1;
 572		uint64_t p0_rtout:1;
 573		uint64_t i3_overf:1;
 574		uint64_t i2_overf:1;
 575		uint64_t i1_overf:1;
 576		uint64_t i0_overf:1;
 577		uint64_t i3_rtout:1;
 578		uint64_t i2_rtout:1;
 579		uint64_t i1_rtout:1;
 580		uint64_t i0_rtout:1;
 581		uint64_t po3_2sml:1;
 582		uint64_t po2_2sml:1;
 583		uint64_t po1_2sml:1;
 584		uint64_t po0_2sml:1;
 585		uint64_t pci_rsl:1;
 586		uint64_t rml_wto:1;
 587		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 588	} s;
 589	struct cvmx_npi_int_enb_cn30xx {
 
 590		uint64_t reserved_62_63:2;
 591		uint64_t q1_a_f:1;
 592		uint64_t q1_s_e:1;
 593		uint64_t pdf_p_f:1;
 594		uint64_t pdf_p_e:1;
 595		uint64_t pcf_p_f:1;
 596		uint64_t pcf_p_e:1;
 597		uint64_t rdx_s_e:1;
 598		uint64_t rwx_s_e:1;
 599		uint64_t pnc_a_f:1;
 600		uint64_t pnc_s_e:1;
 601		uint64_t com_a_f:1;
 602		uint64_t com_s_e:1;
 603		uint64_t q3_a_f:1;
 604		uint64_t q3_s_e:1;
 605		uint64_t q2_a_f:1;
 606		uint64_t q2_s_e:1;
 607		uint64_t pcr_a_f:1;
 608		uint64_t pcr_s_e:1;
 609		uint64_t fcr_a_f:1;
 610		uint64_t fcr_s_e:1;
 611		uint64_t iobdma:1;
 612		uint64_t p_dperr:1;
 613		uint64_t win_rto:1;
 614		uint64_t reserved_36_38:3;
 615		uint64_t i0_pperr:1;
 616		uint64_t reserved_32_34:3;
 617		uint64_t p0_ptout:1;
 618		uint64_t reserved_28_30:3;
 619		uint64_t p0_pperr:1;
 620		uint64_t reserved_24_26:3;
 621		uint64_t g0_rtout:1;
 622		uint64_t reserved_20_22:3;
 623		uint64_t p0_perr:1;
 624		uint64_t reserved_16_18:3;
 625		uint64_t p0_rtout:1;
 626		uint64_t reserved_12_14:3;
 627		uint64_t i0_overf:1;
 628		uint64_t reserved_8_10:3;
 629		uint64_t i0_rtout:1;
 630		uint64_t reserved_4_6:3;
 631		uint64_t po0_2sml:1;
 632		uint64_t pci_rsl:1;
 633		uint64_t rml_wto:1;
 634		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 635	} cn30xx;
 636	struct cvmx_npi_int_enb_cn31xx {
 
 637		uint64_t reserved_62_63:2;
 638		uint64_t q1_a_f:1;
 639		uint64_t q1_s_e:1;
 640		uint64_t pdf_p_f:1;
 641		uint64_t pdf_p_e:1;
 642		uint64_t pcf_p_f:1;
 643		uint64_t pcf_p_e:1;
 644		uint64_t rdx_s_e:1;
 645		uint64_t rwx_s_e:1;
 646		uint64_t pnc_a_f:1;
 647		uint64_t pnc_s_e:1;
 648		uint64_t com_a_f:1;
 649		uint64_t com_s_e:1;
 650		uint64_t q3_a_f:1;
 651		uint64_t q3_s_e:1;
 652		uint64_t q2_a_f:1;
 653		uint64_t q2_s_e:1;
 654		uint64_t pcr_a_f:1;
 655		uint64_t pcr_s_e:1;
 656		uint64_t fcr_a_f:1;
 657		uint64_t fcr_s_e:1;
 658		uint64_t iobdma:1;
 659		uint64_t p_dperr:1;
 660		uint64_t win_rto:1;
 661		uint64_t reserved_37_38:2;
 662		uint64_t i1_pperr:1;
 663		uint64_t i0_pperr:1;
 664		uint64_t reserved_33_34:2;
 665		uint64_t p1_ptout:1;
 666		uint64_t p0_ptout:1;
 667		uint64_t reserved_29_30:2;
 668		uint64_t p1_pperr:1;
 669		uint64_t p0_pperr:1;
 670		uint64_t reserved_25_26:2;
 671		uint64_t g1_rtout:1;
 672		uint64_t g0_rtout:1;
 673		uint64_t reserved_21_22:2;
 674		uint64_t p1_perr:1;
 675		uint64_t p0_perr:1;
 676		uint64_t reserved_17_18:2;
 677		uint64_t p1_rtout:1;
 678		uint64_t p0_rtout:1;
 679		uint64_t reserved_13_14:2;
 680		uint64_t i1_overf:1;
 681		uint64_t i0_overf:1;
 682		uint64_t reserved_9_10:2;
 683		uint64_t i1_rtout:1;
 684		uint64_t i0_rtout:1;
 685		uint64_t reserved_5_6:2;
 686		uint64_t po1_2sml:1;
 687		uint64_t po0_2sml:1;
 688		uint64_t pci_rsl:1;
 689		uint64_t rml_wto:1;
 690		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 691	} cn31xx;
 692	struct cvmx_npi_int_enb_s cn38xx;
 693	struct cvmx_npi_int_enb_cn38xxp2 {
 
 694		uint64_t reserved_42_63:22;
 695		uint64_t iobdma:1;
 696		uint64_t p_dperr:1;
 697		uint64_t win_rto:1;
 698		uint64_t i3_pperr:1;
 699		uint64_t i2_pperr:1;
 700		uint64_t i1_pperr:1;
 701		uint64_t i0_pperr:1;
 702		uint64_t p3_ptout:1;
 703		uint64_t p2_ptout:1;
 704		uint64_t p1_ptout:1;
 705		uint64_t p0_ptout:1;
 706		uint64_t p3_pperr:1;
 707		uint64_t p2_pperr:1;
 708		uint64_t p1_pperr:1;
 709		uint64_t p0_pperr:1;
 710		uint64_t g3_rtout:1;
 711		uint64_t g2_rtout:1;
 712		uint64_t g1_rtout:1;
 713		uint64_t g0_rtout:1;
 714		uint64_t p3_perr:1;
 715		uint64_t p2_perr:1;
 716		uint64_t p1_perr:1;
 717		uint64_t p0_perr:1;
 718		uint64_t p3_rtout:1;
 719		uint64_t p2_rtout:1;
 720		uint64_t p1_rtout:1;
 721		uint64_t p0_rtout:1;
 722		uint64_t i3_overf:1;
 723		uint64_t i2_overf:1;
 724		uint64_t i1_overf:1;
 725		uint64_t i0_overf:1;
 726		uint64_t i3_rtout:1;
 727		uint64_t i2_rtout:1;
 728		uint64_t i1_rtout:1;
 729		uint64_t i0_rtout:1;
 730		uint64_t po3_2sml:1;
 731		uint64_t po2_2sml:1;
 732		uint64_t po1_2sml:1;
 733		uint64_t po0_2sml:1;
 734		uint64_t pci_rsl:1;
 735		uint64_t rml_wto:1;
 736		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 737	} cn38xxp2;
 738	struct cvmx_npi_int_enb_cn31xx cn50xx;
 739	struct cvmx_npi_int_enb_s cn58xx;
 740	struct cvmx_npi_int_enb_s cn58xxp1;
 741};
 742
 743union cvmx_npi_int_sum {
 744	uint64_t u64;
 745	struct cvmx_npi_int_sum_s {
 
 746		uint64_t reserved_62_63:2;
 747		uint64_t q1_a_f:1;
 748		uint64_t q1_s_e:1;
 749		uint64_t pdf_p_f:1;
 750		uint64_t pdf_p_e:1;
 751		uint64_t pcf_p_f:1;
 752		uint64_t pcf_p_e:1;
 753		uint64_t rdx_s_e:1;
 754		uint64_t rwx_s_e:1;
 755		uint64_t pnc_a_f:1;
 756		uint64_t pnc_s_e:1;
 757		uint64_t com_a_f:1;
 758		uint64_t com_s_e:1;
 759		uint64_t q3_a_f:1;
 760		uint64_t q3_s_e:1;
 761		uint64_t q2_a_f:1;
 762		uint64_t q2_s_e:1;
 763		uint64_t pcr_a_f:1;
 764		uint64_t pcr_s_e:1;
 765		uint64_t fcr_a_f:1;
 766		uint64_t fcr_s_e:1;
 767		uint64_t iobdma:1;
 768		uint64_t p_dperr:1;
 769		uint64_t win_rto:1;
 770		uint64_t i3_pperr:1;
 771		uint64_t i2_pperr:1;
 772		uint64_t i1_pperr:1;
 773		uint64_t i0_pperr:1;
 774		uint64_t p3_ptout:1;
 775		uint64_t p2_ptout:1;
 776		uint64_t p1_ptout:1;
 777		uint64_t p0_ptout:1;
 778		uint64_t p3_pperr:1;
 779		uint64_t p2_pperr:1;
 780		uint64_t p1_pperr:1;
 781		uint64_t p0_pperr:1;
 782		uint64_t g3_rtout:1;
 783		uint64_t g2_rtout:1;
 784		uint64_t g1_rtout:1;
 785		uint64_t g0_rtout:1;
 786		uint64_t p3_perr:1;
 787		uint64_t p2_perr:1;
 788		uint64_t p1_perr:1;
 789		uint64_t p0_perr:1;
 790		uint64_t p3_rtout:1;
 791		uint64_t p2_rtout:1;
 792		uint64_t p1_rtout:1;
 793		uint64_t p0_rtout:1;
 794		uint64_t i3_overf:1;
 795		uint64_t i2_overf:1;
 796		uint64_t i1_overf:1;
 797		uint64_t i0_overf:1;
 798		uint64_t i3_rtout:1;
 799		uint64_t i2_rtout:1;
 800		uint64_t i1_rtout:1;
 801		uint64_t i0_rtout:1;
 802		uint64_t po3_2sml:1;
 803		uint64_t po2_2sml:1;
 804		uint64_t po1_2sml:1;
 805		uint64_t po0_2sml:1;
 806		uint64_t pci_rsl:1;
 807		uint64_t rml_wto:1;
 808		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 809	} s;
 810	struct cvmx_npi_int_sum_cn30xx {
 
 811		uint64_t reserved_62_63:2;
 812		uint64_t q1_a_f:1;
 813		uint64_t q1_s_e:1;
 814		uint64_t pdf_p_f:1;
 815		uint64_t pdf_p_e:1;
 816		uint64_t pcf_p_f:1;
 817		uint64_t pcf_p_e:1;
 818		uint64_t rdx_s_e:1;
 819		uint64_t rwx_s_e:1;
 820		uint64_t pnc_a_f:1;
 821		uint64_t pnc_s_e:1;
 822		uint64_t com_a_f:1;
 823		uint64_t com_s_e:1;
 824		uint64_t q3_a_f:1;
 825		uint64_t q3_s_e:1;
 826		uint64_t q2_a_f:1;
 827		uint64_t q2_s_e:1;
 828		uint64_t pcr_a_f:1;
 829		uint64_t pcr_s_e:1;
 830		uint64_t fcr_a_f:1;
 831		uint64_t fcr_s_e:1;
 832		uint64_t iobdma:1;
 833		uint64_t p_dperr:1;
 834		uint64_t win_rto:1;
 835		uint64_t reserved_36_38:3;
 836		uint64_t i0_pperr:1;
 837		uint64_t reserved_32_34:3;
 838		uint64_t p0_ptout:1;
 839		uint64_t reserved_28_30:3;
 840		uint64_t p0_pperr:1;
 841		uint64_t reserved_24_26:3;
 842		uint64_t g0_rtout:1;
 843		uint64_t reserved_20_22:3;
 844		uint64_t p0_perr:1;
 845		uint64_t reserved_16_18:3;
 846		uint64_t p0_rtout:1;
 847		uint64_t reserved_12_14:3;
 848		uint64_t i0_overf:1;
 849		uint64_t reserved_8_10:3;
 850		uint64_t i0_rtout:1;
 851		uint64_t reserved_4_6:3;
 852		uint64_t po0_2sml:1;
 853		uint64_t pci_rsl:1;
 854		uint64_t rml_wto:1;
 855		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 856	} cn30xx;
 857	struct cvmx_npi_int_sum_cn31xx {
 
 858		uint64_t reserved_62_63:2;
 859		uint64_t q1_a_f:1;
 860		uint64_t q1_s_e:1;
 861		uint64_t pdf_p_f:1;
 862		uint64_t pdf_p_e:1;
 863		uint64_t pcf_p_f:1;
 864		uint64_t pcf_p_e:1;
 865		uint64_t rdx_s_e:1;
 866		uint64_t rwx_s_e:1;
 867		uint64_t pnc_a_f:1;
 868		uint64_t pnc_s_e:1;
 869		uint64_t com_a_f:1;
 870		uint64_t com_s_e:1;
 871		uint64_t q3_a_f:1;
 872		uint64_t q3_s_e:1;
 873		uint64_t q2_a_f:1;
 874		uint64_t q2_s_e:1;
 875		uint64_t pcr_a_f:1;
 876		uint64_t pcr_s_e:1;
 877		uint64_t fcr_a_f:1;
 878		uint64_t fcr_s_e:1;
 879		uint64_t iobdma:1;
 880		uint64_t p_dperr:1;
 881		uint64_t win_rto:1;
 882		uint64_t reserved_37_38:2;
 883		uint64_t i1_pperr:1;
 884		uint64_t i0_pperr:1;
 885		uint64_t reserved_33_34:2;
 886		uint64_t p1_ptout:1;
 887		uint64_t p0_ptout:1;
 888		uint64_t reserved_29_30:2;
 889		uint64_t p1_pperr:1;
 890		uint64_t p0_pperr:1;
 891		uint64_t reserved_25_26:2;
 892		uint64_t g1_rtout:1;
 893		uint64_t g0_rtout:1;
 894		uint64_t reserved_21_22:2;
 895		uint64_t p1_perr:1;
 896		uint64_t p0_perr:1;
 897		uint64_t reserved_17_18:2;
 898		uint64_t p1_rtout:1;
 899		uint64_t p0_rtout:1;
 900		uint64_t reserved_13_14:2;
 901		uint64_t i1_overf:1;
 902		uint64_t i0_overf:1;
 903		uint64_t reserved_9_10:2;
 904		uint64_t i1_rtout:1;
 905		uint64_t i0_rtout:1;
 906		uint64_t reserved_5_6:2;
 907		uint64_t po1_2sml:1;
 908		uint64_t po0_2sml:1;
 909		uint64_t pci_rsl:1;
 910		uint64_t rml_wto:1;
 911		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 912	} cn31xx;
 913	struct cvmx_npi_int_sum_s cn38xx;
 914	struct cvmx_npi_int_sum_cn38xxp2 {
 
 915		uint64_t reserved_42_63:22;
 916		uint64_t iobdma:1;
 917		uint64_t p_dperr:1;
 918		uint64_t win_rto:1;
 919		uint64_t i3_pperr:1;
 920		uint64_t i2_pperr:1;
 921		uint64_t i1_pperr:1;
 922		uint64_t i0_pperr:1;
 923		uint64_t p3_ptout:1;
 924		uint64_t p2_ptout:1;
 925		uint64_t p1_ptout:1;
 926		uint64_t p0_ptout:1;
 927		uint64_t p3_pperr:1;
 928		uint64_t p2_pperr:1;
 929		uint64_t p1_pperr:1;
 930		uint64_t p0_pperr:1;
 931		uint64_t g3_rtout:1;
 932		uint64_t g2_rtout:1;
 933		uint64_t g1_rtout:1;
 934		uint64_t g0_rtout:1;
 935		uint64_t p3_perr:1;
 936		uint64_t p2_perr:1;
 937		uint64_t p1_perr:1;
 938		uint64_t p0_perr:1;
 939		uint64_t p3_rtout:1;
 940		uint64_t p2_rtout:1;
 941		uint64_t p1_rtout:1;
 942		uint64_t p0_rtout:1;
 943		uint64_t i3_overf:1;
 944		uint64_t i2_overf:1;
 945		uint64_t i1_overf:1;
 946		uint64_t i0_overf:1;
 947		uint64_t i3_rtout:1;
 948		uint64_t i2_rtout:1;
 949		uint64_t i1_rtout:1;
 950		uint64_t i0_rtout:1;
 951		uint64_t po3_2sml:1;
 952		uint64_t po2_2sml:1;
 953		uint64_t po1_2sml:1;
 954		uint64_t po0_2sml:1;
 955		uint64_t pci_rsl:1;
 956		uint64_t rml_wto:1;
 957		uint64_t rml_rto:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 958	} cn38xxp2;
 959	struct cvmx_npi_int_sum_cn31xx cn50xx;
 960	struct cvmx_npi_int_sum_s cn58xx;
 961	struct cvmx_npi_int_sum_s cn58xxp1;
 962};
 963
 964union cvmx_npi_lowp_dbell {
 965	uint64_t u64;
 966	struct cvmx_npi_lowp_dbell_s {
 
 967		uint64_t reserved_16_63:48;
 968		uint64_t dbell:16;
 
 
 
 
 969	} s;
 970	struct cvmx_npi_lowp_dbell_s cn30xx;
 971	struct cvmx_npi_lowp_dbell_s cn31xx;
 972	struct cvmx_npi_lowp_dbell_s cn38xx;
 973	struct cvmx_npi_lowp_dbell_s cn38xxp2;
 974	struct cvmx_npi_lowp_dbell_s cn50xx;
 975	struct cvmx_npi_lowp_dbell_s cn58xx;
 976	struct cvmx_npi_lowp_dbell_s cn58xxp1;
 977};
 978
 979union cvmx_npi_lowp_ibuff_saddr {
 980	uint64_t u64;
 981	struct cvmx_npi_lowp_ibuff_saddr_s {
 
 982		uint64_t reserved_36_63:28;
 983		uint64_t saddr:36;
 
 
 
 
 984	} s;
 985	struct cvmx_npi_lowp_ibuff_saddr_s cn30xx;
 986	struct cvmx_npi_lowp_ibuff_saddr_s cn31xx;
 987	struct cvmx_npi_lowp_ibuff_saddr_s cn38xx;
 988	struct cvmx_npi_lowp_ibuff_saddr_s cn38xxp2;
 989	struct cvmx_npi_lowp_ibuff_saddr_s cn50xx;
 990	struct cvmx_npi_lowp_ibuff_saddr_s cn58xx;
 991	struct cvmx_npi_lowp_ibuff_saddr_s cn58xxp1;
 992};
 993
 994union cvmx_npi_mem_access_subidx {
 995	uint64_t u64;
 996	struct cvmx_npi_mem_access_subidx_s {
 
 997		uint64_t reserved_38_63:26;
 998		uint64_t shortl:1;
 999		uint64_t nmerge:1;
1000		uint64_t esr:2;
1001		uint64_t esw:2;
1002		uint64_t nsr:1;
1003		uint64_t nsw:1;
1004		uint64_t ror:1;
1005		uint64_t row:1;
1006		uint64_t ba:28;
 
 
 
 
 
 
 
 
 
 
 
 
1007	} s;
1008	struct cvmx_npi_mem_access_subidx_s cn30xx;
1009	struct cvmx_npi_mem_access_subidx_cn31xx {
 
1010		uint64_t reserved_36_63:28;
1011		uint64_t esr:2;
1012		uint64_t esw:2;
1013		uint64_t nsr:1;
1014		uint64_t nsw:1;
1015		uint64_t ror:1;
1016		uint64_t row:1;
1017		uint64_t ba:28;
 
 
 
 
 
 
 
 
 
 
1018	} cn31xx;
1019	struct cvmx_npi_mem_access_subidx_s cn38xx;
1020	struct cvmx_npi_mem_access_subidx_cn31xx cn38xxp2;
1021	struct cvmx_npi_mem_access_subidx_s cn50xx;
1022	struct cvmx_npi_mem_access_subidx_s cn58xx;
1023	struct cvmx_npi_mem_access_subidx_s cn58xxp1;
1024};
1025
1026union cvmx_npi_msi_rcv {
1027	uint64_t u64;
1028	struct cvmx_npi_msi_rcv_s {
 
1029		uint64_t int_vec:64;
 
 
 
1030	} s;
1031	struct cvmx_npi_msi_rcv_s cn30xx;
1032	struct cvmx_npi_msi_rcv_s cn31xx;
1033	struct cvmx_npi_msi_rcv_s cn38xx;
1034	struct cvmx_npi_msi_rcv_s cn38xxp2;
1035	struct cvmx_npi_msi_rcv_s cn50xx;
1036	struct cvmx_npi_msi_rcv_s cn58xx;
1037	struct cvmx_npi_msi_rcv_s cn58xxp1;
1038};
1039
1040union cvmx_npi_num_desc_outputx {
1041	uint64_t u64;
1042	struct cvmx_npi_num_desc_outputx_s {
 
1043		uint64_t reserved_32_63:32;
1044		uint64_t size:32;
 
 
 
 
1045	} s;
1046	struct cvmx_npi_num_desc_outputx_s cn30xx;
1047	struct cvmx_npi_num_desc_outputx_s cn31xx;
1048	struct cvmx_npi_num_desc_outputx_s cn38xx;
1049	struct cvmx_npi_num_desc_outputx_s cn38xxp2;
1050	struct cvmx_npi_num_desc_outputx_s cn50xx;
1051	struct cvmx_npi_num_desc_outputx_s cn58xx;
1052	struct cvmx_npi_num_desc_outputx_s cn58xxp1;
1053};
1054
1055union cvmx_npi_output_control {
1056	uint64_t u64;
1057	struct cvmx_npi_output_control_s {
 
1058		uint64_t reserved_49_63:15;
1059		uint64_t pkt_rr:1;
1060		uint64_t p3_bmode:1;
1061		uint64_t p2_bmode:1;
1062		uint64_t p1_bmode:1;
1063		uint64_t p0_bmode:1;
1064		uint64_t o3_es:2;
1065		uint64_t o3_ns:1;
1066		uint64_t o3_ro:1;
1067		uint64_t o2_es:2;
1068		uint64_t o2_ns:1;
1069		uint64_t o2_ro:1;
1070		uint64_t o1_es:2;
1071		uint64_t o1_ns:1;
1072		uint64_t o1_ro:1;
1073		uint64_t o0_es:2;
1074		uint64_t o0_ns:1;
1075		uint64_t o0_ro:1;
1076		uint64_t o3_csrm:1;
1077		uint64_t o2_csrm:1;
1078		uint64_t o1_csrm:1;
1079		uint64_t o0_csrm:1;
1080		uint64_t reserved_20_23:4;
1081		uint64_t iptr_o3:1;
1082		uint64_t iptr_o2:1;
1083		uint64_t iptr_o1:1;
1084		uint64_t iptr_o0:1;
1085		uint64_t esr_sl3:2;
1086		uint64_t nsr_sl3:1;
1087		uint64_t ror_sl3:1;
1088		uint64_t esr_sl2:2;
1089		uint64_t nsr_sl2:1;
1090		uint64_t ror_sl2:1;
1091		uint64_t esr_sl1:2;
1092		uint64_t nsr_sl1:1;
1093		uint64_t ror_sl1:1;
1094		uint64_t esr_sl0:2;
1095		uint64_t nsr_sl0:1;
1096		uint64_t ror_sl0:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1097	} s;
1098	struct cvmx_npi_output_control_cn30xx {
 
1099		uint64_t reserved_45_63:19;
1100		uint64_t p0_bmode:1;
1101		uint64_t reserved_32_43:12;
1102		uint64_t o0_es:2;
1103		uint64_t o0_ns:1;
1104		uint64_t o0_ro:1;
1105		uint64_t reserved_25_27:3;
1106		uint64_t o0_csrm:1;
1107		uint64_t reserved_17_23:7;
1108		uint64_t iptr_o0:1;
1109		uint64_t reserved_4_15:12;
1110		uint64_t esr_sl0:2;
1111		uint64_t nsr_sl0:1;
1112		uint64_t ror_sl0:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1113	} cn30xx;
1114	struct cvmx_npi_output_control_cn31xx {
 
1115		uint64_t reserved_46_63:18;
1116		uint64_t p1_bmode:1;
1117		uint64_t p0_bmode:1;
1118		uint64_t reserved_36_43:8;
1119		uint64_t o1_es:2;
1120		uint64_t o1_ns:1;
1121		uint64_t o1_ro:1;
1122		uint64_t o0_es:2;
1123		uint64_t o0_ns:1;
1124		uint64_t o0_ro:1;
1125		uint64_t reserved_26_27:2;
1126		uint64_t o1_csrm:1;
1127		uint64_t o0_csrm:1;
1128		uint64_t reserved_18_23:6;
1129		uint64_t iptr_o1:1;
1130		uint64_t iptr_o0:1;
1131		uint64_t reserved_8_15:8;
1132		uint64_t esr_sl1:2;
1133		uint64_t nsr_sl1:1;
1134		uint64_t ror_sl1:1;
1135		uint64_t esr_sl0:2;
1136		uint64_t nsr_sl0:1;
1137		uint64_t ror_sl0:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1138	} cn31xx;
1139	struct cvmx_npi_output_control_s cn38xx;
1140	struct cvmx_npi_output_control_cn38xxp2 {
 
1141		uint64_t reserved_48_63:16;
1142		uint64_t p3_bmode:1;
1143		uint64_t p2_bmode:1;
1144		uint64_t p1_bmode:1;
1145		uint64_t p0_bmode:1;
1146		uint64_t o3_es:2;
1147		uint64_t o3_ns:1;
1148		uint64_t o3_ro:1;
1149		uint64_t o2_es:2;
1150		uint64_t o2_ns:1;
1151		uint64_t o2_ro:1;
1152		uint64_t o1_es:2;
1153		uint64_t o1_ns:1;
1154		uint64_t o1_ro:1;
1155		uint64_t o0_es:2;
1156		uint64_t o0_ns:1;
1157		uint64_t o0_ro:1;
1158		uint64_t o3_csrm:1;
1159		uint64_t o2_csrm:1;
1160		uint64_t o1_csrm:1;
1161		uint64_t o0_csrm:1;
1162		uint64_t reserved_20_23:4;
1163		uint64_t iptr_o3:1;
1164		uint64_t iptr_o2:1;
1165		uint64_t iptr_o1:1;
1166		uint64_t iptr_o0:1;
1167		uint64_t esr_sl3:2;
1168		uint64_t nsr_sl3:1;
1169		uint64_t ror_sl3:1;
1170		uint64_t esr_sl2:2;
1171		uint64_t nsr_sl2:1;
1172		uint64_t ror_sl2:1;
1173		uint64_t esr_sl1:2;
1174		uint64_t nsr_sl1:1;
1175		uint64_t ror_sl1:1;
1176		uint64_t esr_sl0:2;
1177		uint64_t nsr_sl0:1;
1178		uint64_t ror_sl0:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1179	} cn38xxp2;
1180	struct cvmx_npi_output_control_cn50xx {
 
1181		uint64_t reserved_49_63:15;
1182		uint64_t pkt_rr:1;
1183		uint64_t reserved_46_47:2;
1184		uint64_t p1_bmode:1;
1185		uint64_t p0_bmode:1;
1186		uint64_t reserved_36_43:8;
1187		uint64_t o1_es:2;
1188		uint64_t o1_ns:1;
1189		uint64_t o1_ro:1;
1190		uint64_t o0_es:2;
1191		uint64_t o0_ns:1;
1192		uint64_t o0_ro:1;
1193		uint64_t reserved_26_27:2;
1194		uint64_t o1_csrm:1;
1195		uint64_t o0_csrm:1;
1196		uint64_t reserved_18_23:6;
1197		uint64_t iptr_o1:1;
1198		uint64_t iptr_o0:1;
1199		uint64_t reserved_8_15:8;
1200		uint64_t esr_sl1:2;
1201		uint64_t nsr_sl1:1;
1202		uint64_t ror_sl1:1;
1203		uint64_t esr_sl0:2;
1204		uint64_t nsr_sl0:1;
1205		uint64_t ror_sl0:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1206	} cn50xx;
1207	struct cvmx_npi_output_control_s cn58xx;
1208	struct cvmx_npi_output_control_s cn58xxp1;
1209};
1210
1211union cvmx_npi_px_dbpair_addr {
1212	uint64_t u64;
1213	struct cvmx_npi_px_dbpair_addr_s {
 
1214		uint64_t reserved_63_63:1;
1215		uint64_t state:2;
1216		uint64_t naddr:61;
 
 
 
 
 
1217	} s;
1218	struct cvmx_npi_px_dbpair_addr_s cn30xx;
1219	struct cvmx_npi_px_dbpair_addr_s cn31xx;
1220	struct cvmx_npi_px_dbpair_addr_s cn38xx;
1221	struct cvmx_npi_px_dbpair_addr_s cn38xxp2;
1222	struct cvmx_npi_px_dbpair_addr_s cn50xx;
1223	struct cvmx_npi_px_dbpair_addr_s cn58xx;
1224	struct cvmx_npi_px_dbpair_addr_s cn58xxp1;
1225};
1226
1227union cvmx_npi_px_instr_addr {
1228	uint64_t u64;
1229	struct cvmx_npi_px_instr_addr_s {
 
1230		uint64_t state:3;
1231		uint64_t naddr:61;
 
 
 
 
1232	} s;
1233	struct cvmx_npi_px_instr_addr_s cn30xx;
1234	struct cvmx_npi_px_instr_addr_s cn31xx;
1235	struct cvmx_npi_px_instr_addr_s cn38xx;
1236	struct cvmx_npi_px_instr_addr_s cn38xxp2;
1237	struct cvmx_npi_px_instr_addr_s cn50xx;
1238	struct cvmx_npi_px_instr_addr_s cn58xx;
1239	struct cvmx_npi_px_instr_addr_s cn58xxp1;
1240};
1241
1242union cvmx_npi_px_instr_cnts {
1243	uint64_t u64;
1244	struct cvmx_npi_px_instr_cnts_s {
 
1245		uint64_t reserved_38_63:26;
1246		uint64_t fcnt:6;
1247		uint64_t avail:32;
 
 
 
 
 
1248	} s;
1249	struct cvmx_npi_px_instr_cnts_s cn30xx;
1250	struct cvmx_npi_px_instr_cnts_s cn31xx;
1251	struct cvmx_npi_px_instr_cnts_s cn38xx;
1252	struct cvmx_npi_px_instr_cnts_s cn38xxp2;
1253	struct cvmx_npi_px_instr_cnts_s cn50xx;
1254	struct cvmx_npi_px_instr_cnts_s cn58xx;
1255	struct cvmx_npi_px_instr_cnts_s cn58xxp1;
1256};
1257
1258union cvmx_npi_px_pair_cnts {
1259	uint64_t u64;
1260	struct cvmx_npi_px_pair_cnts_s {
 
1261		uint64_t reserved_37_63:27;
1262		uint64_t fcnt:5;
1263		uint64_t avail:32;
 
 
 
 
 
1264	} s;
1265	struct cvmx_npi_px_pair_cnts_s cn30xx;
1266	struct cvmx_npi_px_pair_cnts_s cn31xx;
1267	struct cvmx_npi_px_pair_cnts_s cn38xx;
1268	struct cvmx_npi_px_pair_cnts_s cn38xxp2;
1269	struct cvmx_npi_px_pair_cnts_s cn50xx;
1270	struct cvmx_npi_px_pair_cnts_s cn58xx;
1271	struct cvmx_npi_px_pair_cnts_s cn58xxp1;
1272};
1273
1274union cvmx_npi_pci_burst_size {
1275	uint64_t u64;
1276	struct cvmx_npi_pci_burst_size_s {
 
1277		uint64_t reserved_14_63:50;
1278		uint64_t wr_brst:7;
1279		uint64_t rd_brst:7;
 
 
 
 
 
1280	} s;
1281	struct cvmx_npi_pci_burst_size_s cn30xx;
1282	struct cvmx_npi_pci_burst_size_s cn31xx;
1283	struct cvmx_npi_pci_burst_size_s cn38xx;
1284	struct cvmx_npi_pci_burst_size_s cn38xxp2;
1285	struct cvmx_npi_pci_burst_size_s cn50xx;
1286	struct cvmx_npi_pci_burst_size_s cn58xx;
1287	struct cvmx_npi_pci_burst_size_s cn58xxp1;
1288};
1289
1290union cvmx_npi_pci_int_arb_cfg {
1291	uint64_t u64;
1292	struct cvmx_npi_pci_int_arb_cfg_s {
 
1293		uint64_t reserved_13_63:51;
1294		uint64_t hostmode:1;
1295		uint64_t pci_ovr:4;
1296		uint64_t reserved_5_7:3;
1297		uint64_t en:1;
1298		uint64_t park_mod:1;
1299		uint64_t park_dev:3;
 
 
 
 
 
 
 
 
 
1300	} s;
1301	struct cvmx_npi_pci_int_arb_cfg_cn30xx {
 
1302		uint64_t reserved_5_63:59;
1303		uint64_t en:1;
1304		uint64_t park_mod:1;
1305		uint64_t park_dev:3;
 
 
 
 
 
 
1306	} cn30xx;
1307	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn31xx;
1308	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn38xx;
1309	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn38xxp2;
1310	struct cvmx_npi_pci_int_arb_cfg_s cn50xx;
1311	struct cvmx_npi_pci_int_arb_cfg_s cn58xx;
1312	struct cvmx_npi_pci_int_arb_cfg_s cn58xxp1;
1313};
1314
1315union cvmx_npi_pci_read_cmd {
1316	uint64_t u64;
1317	struct cvmx_npi_pci_read_cmd_s {
 
1318		uint64_t reserved_11_63:53;
1319		uint64_t cmd_size:11;
 
 
 
 
1320	} s;
1321	struct cvmx_npi_pci_read_cmd_s cn30xx;
1322	struct cvmx_npi_pci_read_cmd_s cn31xx;
1323	struct cvmx_npi_pci_read_cmd_s cn38xx;
1324	struct cvmx_npi_pci_read_cmd_s cn38xxp2;
1325	struct cvmx_npi_pci_read_cmd_s cn50xx;
1326	struct cvmx_npi_pci_read_cmd_s cn58xx;
1327	struct cvmx_npi_pci_read_cmd_s cn58xxp1;
1328};
1329
1330union cvmx_npi_port32_instr_hdr {
1331	uint64_t u64;
1332	struct cvmx_npi_port32_instr_hdr_s {
 
1333		uint64_t reserved_44_63:20;
1334		uint64_t pbp:1;
1335		uint64_t rsv_f:5;
1336		uint64_t rparmode:2;
1337		uint64_t rsv_e:1;
1338		uint64_t rskp_len:7;
1339		uint64_t rsv_d:6;
1340		uint64_t use_ihdr:1;
1341		uint64_t rsv_c:5;
1342		uint64_t par_mode:2;
1343		uint64_t rsv_b:1;
1344		uint64_t skp_len:7;
1345		uint64_t rsv_a:6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1346	} s;
1347	struct cvmx_npi_port32_instr_hdr_s cn30xx;
1348	struct cvmx_npi_port32_instr_hdr_s cn31xx;
1349	struct cvmx_npi_port32_instr_hdr_s cn38xx;
1350	struct cvmx_npi_port32_instr_hdr_s cn38xxp2;
1351	struct cvmx_npi_port32_instr_hdr_s cn50xx;
1352	struct cvmx_npi_port32_instr_hdr_s cn58xx;
1353	struct cvmx_npi_port32_instr_hdr_s cn58xxp1;
1354};
1355
1356union cvmx_npi_port33_instr_hdr {
1357	uint64_t u64;
1358	struct cvmx_npi_port33_instr_hdr_s {
 
1359		uint64_t reserved_44_63:20;
1360		uint64_t pbp:1;
1361		uint64_t rsv_f:5;
1362		uint64_t rparmode:2;
1363		uint64_t rsv_e:1;
1364		uint64_t rskp_len:7;
1365		uint64_t rsv_d:6;
1366		uint64_t use_ihdr:1;
1367		uint64_t rsv_c:5;
1368		uint64_t par_mode:2;
1369		uint64_t rsv_b:1;
1370		uint64_t skp_len:7;
1371		uint64_t rsv_a:6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1372	} s;
1373	struct cvmx_npi_port33_instr_hdr_s cn31xx;
1374	struct cvmx_npi_port33_instr_hdr_s cn38xx;
1375	struct cvmx_npi_port33_instr_hdr_s cn38xxp2;
1376	struct cvmx_npi_port33_instr_hdr_s cn50xx;
1377	struct cvmx_npi_port33_instr_hdr_s cn58xx;
1378	struct cvmx_npi_port33_instr_hdr_s cn58xxp1;
1379};
1380
1381union cvmx_npi_port34_instr_hdr {
1382	uint64_t u64;
1383	struct cvmx_npi_port34_instr_hdr_s {
 
1384		uint64_t reserved_44_63:20;
1385		uint64_t pbp:1;
1386		uint64_t rsv_f:5;
1387		uint64_t rparmode:2;
1388		uint64_t rsv_e:1;
1389		uint64_t rskp_len:7;
1390		uint64_t rsv_d:6;
1391		uint64_t use_ihdr:1;
1392		uint64_t rsv_c:5;
1393		uint64_t par_mode:2;
1394		uint64_t rsv_b:1;
1395		uint64_t skp_len:7;
1396		uint64_t rsv_a:6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1397	} s;
1398	struct cvmx_npi_port34_instr_hdr_s cn38xx;
1399	struct cvmx_npi_port34_instr_hdr_s cn38xxp2;
1400	struct cvmx_npi_port34_instr_hdr_s cn58xx;
1401	struct cvmx_npi_port34_instr_hdr_s cn58xxp1;
1402};
1403
1404union cvmx_npi_port35_instr_hdr {
1405	uint64_t u64;
1406	struct cvmx_npi_port35_instr_hdr_s {
 
1407		uint64_t reserved_44_63:20;
1408		uint64_t pbp:1;
1409		uint64_t rsv_f:5;
1410		uint64_t rparmode:2;
1411		uint64_t rsv_e:1;
1412		uint64_t rskp_len:7;
1413		uint64_t rsv_d:6;
1414		uint64_t use_ihdr:1;
1415		uint64_t rsv_c:5;
1416		uint64_t par_mode:2;
1417		uint64_t rsv_b:1;
1418		uint64_t skp_len:7;
1419		uint64_t rsv_a:6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1420	} s;
1421	struct cvmx_npi_port35_instr_hdr_s cn38xx;
1422	struct cvmx_npi_port35_instr_hdr_s cn38xxp2;
1423	struct cvmx_npi_port35_instr_hdr_s cn58xx;
1424	struct cvmx_npi_port35_instr_hdr_s cn58xxp1;
1425};
1426
1427union cvmx_npi_port_bp_control {
1428	uint64_t u64;
1429	struct cvmx_npi_port_bp_control_s {
 
1430		uint64_t reserved_8_63:56;
1431		uint64_t bp_on:4;
1432		uint64_t enb:4;
 
 
 
 
 
1433	} s;
1434	struct cvmx_npi_port_bp_control_s cn30xx;
1435	struct cvmx_npi_port_bp_control_s cn31xx;
1436	struct cvmx_npi_port_bp_control_s cn38xx;
1437	struct cvmx_npi_port_bp_control_s cn38xxp2;
1438	struct cvmx_npi_port_bp_control_s cn50xx;
1439	struct cvmx_npi_port_bp_control_s cn58xx;
1440	struct cvmx_npi_port_bp_control_s cn58xxp1;
1441};
1442
1443union cvmx_npi_rsl_int_blocks {
1444	uint64_t u64;
1445	struct cvmx_npi_rsl_int_blocks_s {
 
1446		uint64_t reserved_32_63:32;
1447		uint64_t rint_31:1;
1448		uint64_t iob:1;
1449		uint64_t reserved_28_29:2;
1450		uint64_t rint_27:1;
1451		uint64_t rint_26:1;
1452		uint64_t rint_25:1;
1453		uint64_t rint_24:1;
1454		uint64_t asx1:1;
1455		uint64_t asx0:1;
1456		uint64_t rint_21:1;
1457		uint64_t pip:1;
1458		uint64_t spx1:1;
1459		uint64_t spx0:1;
1460		uint64_t lmc:1;
1461		uint64_t l2c:1;
1462		uint64_t rint_15:1;
1463		uint64_t reserved_13_14:2;
1464		uint64_t pow:1;
1465		uint64_t tim:1;
1466		uint64_t pko:1;
1467		uint64_t ipd:1;
1468		uint64_t rint_8:1;
1469		uint64_t zip:1;
1470		uint64_t dfa:1;
1471		uint64_t fpa:1;
1472		uint64_t key:1;
1473		uint64_t npi:1;
1474		uint64_t gmx1:1;
1475		uint64_t gmx0:1;
1476		uint64_t mio:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1477	} s;
1478	struct cvmx_npi_rsl_int_blocks_cn30xx {
 
1479		uint64_t reserved_32_63:32;
1480		uint64_t rint_31:1;
1481		uint64_t iob:1;
1482		uint64_t rint_29:1;
1483		uint64_t rint_28:1;
1484		uint64_t rint_27:1;
1485		uint64_t rint_26:1;
1486		uint64_t rint_25:1;
1487		uint64_t rint_24:1;
1488		uint64_t asx1:1;
1489		uint64_t asx0:1;
1490		uint64_t rint_21:1;
1491		uint64_t pip:1;
1492		uint64_t spx1:1;
1493		uint64_t spx0:1;
1494		uint64_t lmc:1;
1495		uint64_t l2c:1;
1496		uint64_t rint_15:1;
1497		uint64_t rint_14:1;
1498		uint64_t usb:1;
1499		uint64_t pow:1;
1500		uint64_t tim:1;
1501		uint64_t pko:1;
1502		uint64_t ipd:1;
1503		uint64_t rint_8:1;
1504		uint64_t zip:1;
1505		uint64_t dfa:1;
1506		uint64_t fpa:1;
1507		uint64_t key:1;
1508		uint64_t npi:1;
1509		uint64_t gmx1:1;
1510		uint64_t gmx0:1;
1511		uint64_t mio:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1512	} cn30xx;
1513	struct cvmx_npi_rsl_int_blocks_cn30xx cn31xx;
1514	struct cvmx_npi_rsl_int_blocks_cn38xx {
 
1515		uint64_t reserved_32_63:32;
1516		uint64_t rint_31:1;
1517		uint64_t iob:1;
1518		uint64_t rint_29:1;
1519		uint64_t rint_28:1;
1520		uint64_t rint_27:1;
1521		uint64_t rint_26:1;
1522		uint64_t rint_25:1;
1523		uint64_t rint_24:1;
1524		uint64_t asx1:1;
1525		uint64_t asx0:1;
1526		uint64_t rint_21:1;
1527		uint64_t pip:1;
1528		uint64_t spx1:1;
1529		uint64_t spx0:1;
1530		uint64_t lmc:1;
1531		uint64_t l2c:1;
1532		uint64_t rint_15:1;
1533		uint64_t rint_14:1;
1534		uint64_t rint_13:1;
1535		uint64_t pow:1;
1536		uint64_t tim:1;
1537		uint64_t pko:1;
1538		uint64_t ipd:1;
1539		uint64_t rint_8:1;
1540		uint64_t zip:1;
1541		uint64_t dfa:1;
1542		uint64_t fpa:1;
1543		uint64_t key:1;
1544		uint64_t npi:1;
1545		uint64_t gmx1:1;
1546		uint64_t gmx0:1;
1547		uint64_t mio:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1548	} cn38xx;
1549	struct cvmx_npi_rsl_int_blocks_cn38xx cn38xxp2;
1550	struct cvmx_npi_rsl_int_blocks_cn50xx {
 
1551		uint64_t reserved_31_63:33;
1552		uint64_t iob:1;
1553		uint64_t lmc1:1;
1554		uint64_t agl:1;
1555		uint64_t reserved_24_27:4;
1556		uint64_t asx1:1;
1557		uint64_t asx0:1;
1558		uint64_t reserved_21_21:1;
1559		uint64_t pip:1;
1560		uint64_t spx1:1;
1561		uint64_t spx0:1;
1562		uint64_t lmc:1;
1563		uint64_t l2c:1;
1564		uint64_t reserved_15_15:1;
1565		uint64_t rad:1;
1566		uint64_t usb:1;
1567		uint64_t pow:1;
1568		uint64_t tim:1;
1569		uint64_t pko:1;
1570		uint64_t ipd:1;
1571		uint64_t reserved_8_8:1;
1572		uint64_t zip:1;
1573		uint64_t dfa:1;
1574		uint64_t fpa:1;
1575		uint64_t key:1;
1576		uint64_t npi:1;
1577		uint64_t gmx1:1;
1578		uint64_t gmx0:1;
1579		uint64_t mio:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1580	} cn50xx;
1581	struct cvmx_npi_rsl_int_blocks_cn38xx cn58xx;
1582	struct cvmx_npi_rsl_int_blocks_cn38xx cn58xxp1;
1583};
1584
1585union cvmx_npi_size_inputx {
1586	uint64_t u64;
1587	struct cvmx_npi_size_inputx_s {
 
1588		uint64_t reserved_32_63:32;
1589		uint64_t size:32;
 
 
 
 
1590	} s;
1591	struct cvmx_npi_size_inputx_s cn30xx;
1592	struct cvmx_npi_size_inputx_s cn31xx;
1593	struct cvmx_npi_size_inputx_s cn38xx;
1594	struct cvmx_npi_size_inputx_s cn38xxp2;
1595	struct cvmx_npi_size_inputx_s cn50xx;
1596	struct cvmx_npi_size_inputx_s cn58xx;
1597	struct cvmx_npi_size_inputx_s cn58xxp1;
1598};
1599
1600union cvmx_npi_win_read_to {
1601	uint64_t u64;
1602	struct cvmx_npi_win_read_to_s {
 
1603		uint64_t reserved_32_63:32;
1604		uint64_t time:32;
 
 
 
 
1605	} s;
1606	struct cvmx_npi_win_read_to_s cn30xx;
1607	struct cvmx_npi_win_read_to_s cn31xx;
1608	struct cvmx_npi_win_read_to_s cn38xx;
1609	struct cvmx_npi_win_read_to_s cn38xxp2;
1610	struct cvmx_npi_win_read_to_s cn50xx;
1611	struct cvmx_npi_win_read_to_s cn58xx;
1612	struct cvmx_npi_win_read_to_s cn58xxp1;
1613};
1614
1615#endif
v4.6
   1/***********************license start***************
   2 * Author: Cavium Networks
   3 *
   4 * Contact: support@caviumnetworks.com
   5 * This file is part of the OCTEON SDK
   6 *
   7 * Copyright (c) 2003-2012 Cavium Networks
   8 *
   9 * This file is free software; you can redistribute it and/or modify
  10 * it under the terms of the GNU General Public License, Version 2, as
  11 * published by the Free Software Foundation.
  12 *
  13 * This file is distributed in the hope that it will be useful, but
  14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
  15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
  16 * NONINFRINGEMENT.  See the GNU General Public License for more
  17 * details.
  18 *
  19 * You should have received a copy of the GNU General Public License
  20 * along with this file; if not, write to the Free Software
  21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  22 * or visit http://www.gnu.org/licenses/.
  23 *
  24 * This file may also be available under a different license from Cavium.
  25 * Contact Cavium Networks for more information
  26 ***********************license end**************************************/
  27
  28#ifndef __CVMX_NPI_DEFS_H__
  29#define __CVMX_NPI_DEFS_H__
  30
  31#define CVMX_NPI_BASE_ADDR_INPUT0 CVMX_NPI_BASE_ADDR_INPUTX(0)
  32#define CVMX_NPI_BASE_ADDR_INPUT1 CVMX_NPI_BASE_ADDR_INPUTX(1)
  33#define CVMX_NPI_BASE_ADDR_INPUT2 CVMX_NPI_BASE_ADDR_INPUTX(2)
  34#define CVMX_NPI_BASE_ADDR_INPUT3 CVMX_NPI_BASE_ADDR_INPUTX(3)
  35#define CVMX_NPI_BASE_ADDR_INPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000070ull) + ((offset) & 3) * 16)
  36#define CVMX_NPI_BASE_ADDR_OUTPUT0 CVMX_NPI_BASE_ADDR_OUTPUTX(0)
  37#define CVMX_NPI_BASE_ADDR_OUTPUT1 CVMX_NPI_BASE_ADDR_OUTPUTX(1)
  38#define CVMX_NPI_BASE_ADDR_OUTPUT2 CVMX_NPI_BASE_ADDR_OUTPUTX(2)
  39#define CVMX_NPI_BASE_ADDR_OUTPUT3 CVMX_NPI_BASE_ADDR_OUTPUTX(3)
  40#define CVMX_NPI_BASE_ADDR_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F00000000B8ull) + ((offset) & 3) * 8)
  41#define CVMX_NPI_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011F00000003F8ull))
  42#define CVMX_NPI_BUFF_SIZE_OUTPUT0 CVMX_NPI_BUFF_SIZE_OUTPUTX(0)
  43#define CVMX_NPI_BUFF_SIZE_OUTPUT1 CVMX_NPI_BUFF_SIZE_OUTPUTX(1)
  44#define CVMX_NPI_BUFF_SIZE_OUTPUT2 CVMX_NPI_BUFF_SIZE_OUTPUTX(2)
  45#define CVMX_NPI_BUFF_SIZE_OUTPUT3 CVMX_NPI_BUFF_SIZE_OUTPUTX(3)
  46#define CVMX_NPI_BUFF_SIZE_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F00000000E0ull) + ((offset) & 3) * 8)
  47#define CVMX_NPI_COMP_CTL (CVMX_ADD_IO_SEG(0x00011F0000000218ull))
  48#define CVMX_NPI_CTL_STATUS (CVMX_ADD_IO_SEG(0x00011F0000000010ull))
  49#define CVMX_NPI_DBG_SELECT (CVMX_ADD_IO_SEG(0x00011F0000000008ull))
  50#define CVMX_NPI_DMA_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000128ull))
  51#define CVMX_NPI_DMA_HIGHP_COUNTS (CVMX_ADD_IO_SEG(0x00011F0000000148ull))
  52#define CVMX_NPI_DMA_HIGHP_NADDR (CVMX_ADD_IO_SEG(0x00011F0000000158ull))
  53#define CVMX_NPI_DMA_LOWP_COUNTS (CVMX_ADD_IO_SEG(0x00011F0000000140ull))
  54#define CVMX_NPI_DMA_LOWP_NADDR (CVMX_ADD_IO_SEG(0x00011F0000000150ull))
  55#define CVMX_NPI_HIGHP_DBELL (CVMX_ADD_IO_SEG(0x00011F0000000120ull))
  56#define CVMX_NPI_HIGHP_IBUFF_SADDR (CVMX_ADD_IO_SEG(0x00011F0000000110ull))
  57#define CVMX_NPI_INPUT_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000138ull))
  58#define CVMX_NPI_INT_ENB (CVMX_ADD_IO_SEG(0x00011F0000000020ull))
  59#define CVMX_NPI_INT_SUM (CVMX_ADD_IO_SEG(0x00011F0000000018ull))
  60#define CVMX_NPI_LOWP_DBELL (CVMX_ADD_IO_SEG(0x00011F0000000118ull))
  61#define CVMX_NPI_LOWP_IBUFF_SADDR (CVMX_ADD_IO_SEG(0x00011F0000000108ull))
  62#define CVMX_NPI_MEM_ACCESS_SUBID3 CVMX_NPI_MEM_ACCESS_SUBIDX(3)
  63#define CVMX_NPI_MEM_ACCESS_SUBID4 CVMX_NPI_MEM_ACCESS_SUBIDX(4)
  64#define CVMX_NPI_MEM_ACCESS_SUBID5 CVMX_NPI_MEM_ACCESS_SUBIDX(5)
  65#define CVMX_NPI_MEM_ACCESS_SUBID6 CVMX_NPI_MEM_ACCESS_SUBIDX(6)
  66#define CVMX_NPI_MEM_ACCESS_SUBIDX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000028ull) + ((offset) & 7) * 8 - 8*3)
  67#define CVMX_NPI_MSI_RCV (0x0000000000000190ull)
  68#define CVMX_NPI_NPI_MSI_RCV (CVMX_ADD_IO_SEG(0x00011F0000001190ull))
  69#define CVMX_NPI_NUM_DESC_OUTPUT0 CVMX_NPI_NUM_DESC_OUTPUTX(0)
  70#define CVMX_NPI_NUM_DESC_OUTPUT1 CVMX_NPI_NUM_DESC_OUTPUTX(1)
  71#define CVMX_NPI_NUM_DESC_OUTPUT2 CVMX_NPI_NUM_DESC_OUTPUTX(2)
  72#define CVMX_NPI_NUM_DESC_OUTPUT3 CVMX_NPI_NUM_DESC_OUTPUTX(3)
  73#define CVMX_NPI_NUM_DESC_OUTPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000050ull) + ((offset) & 3) * 8)
  74#define CVMX_NPI_OUTPUT_CONTROL (CVMX_ADD_IO_SEG(0x00011F0000000100ull))
  75#define CVMX_NPI_P0_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(0)
  76#define CVMX_NPI_P0_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(0)
  77#define CVMX_NPI_P0_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(0)
  78#define CVMX_NPI_P0_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(0)
  79#define CVMX_NPI_P1_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(1)
  80#define CVMX_NPI_P1_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(1)
  81#define CVMX_NPI_P1_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(1)
  82#define CVMX_NPI_P1_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(1)
  83#define CVMX_NPI_P2_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(2)
  84#define CVMX_NPI_P2_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(2)
  85#define CVMX_NPI_P2_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(2)
  86#define CVMX_NPI_P2_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(2)
  87#define CVMX_NPI_P3_DBPAIR_ADDR CVMX_NPI_PX_DBPAIR_ADDR(3)
  88#define CVMX_NPI_P3_INSTR_ADDR CVMX_NPI_PX_INSTR_ADDR(3)
  89#define CVMX_NPI_P3_INSTR_CNTS CVMX_NPI_PX_INSTR_CNTS(3)
  90#define CVMX_NPI_P3_PAIR_CNTS CVMX_NPI_PX_PAIR_CNTS(3)
  91#define CVMX_NPI_PCI_BAR1_INDEXX(offset) (CVMX_ADD_IO_SEG(0x00011F0000001100ull) + ((offset) & 31) * 4)
  92#define CVMX_NPI_PCI_BIST_REG (CVMX_ADD_IO_SEG(0x00011F00000011C0ull))
  93#define CVMX_NPI_PCI_BURST_SIZE (CVMX_ADD_IO_SEG(0x00011F00000000D8ull))
  94#define CVMX_NPI_PCI_CFG00 (CVMX_ADD_IO_SEG(0x00011F0000001800ull))
  95#define CVMX_NPI_PCI_CFG01 (CVMX_ADD_IO_SEG(0x00011F0000001804ull))
  96#define CVMX_NPI_PCI_CFG02 (CVMX_ADD_IO_SEG(0x00011F0000001808ull))
  97#define CVMX_NPI_PCI_CFG03 (CVMX_ADD_IO_SEG(0x00011F000000180Cull))
  98#define CVMX_NPI_PCI_CFG04 (CVMX_ADD_IO_SEG(0x00011F0000001810ull))
  99#define CVMX_NPI_PCI_CFG05 (CVMX_ADD_IO_SEG(0x00011F0000001814ull))
 100#define CVMX_NPI_PCI_CFG06 (CVMX_ADD_IO_SEG(0x00011F0000001818ull))
 101#define CVMX_NPI_PCI_CFG07 (CVMX_ADD_IO_SEG(0x00011F000000181Cull))
 102#define CVMX_NPI_PCI_CFG08 (CVMX_ADD_IO_SEG(0x00011F0000001820ull))
 103#define CVMX_NPI_PCI_CFG09 (CVMX_ADD_IO_SEG(0x00011F0000001824ull))
 104#define CVMX_NPI_PCI_CFG10 (CVMX_ADD_IO_SEG(0x00011F0000001828ull))
 105#define CVMX_NPI_PCI_CFG11 (CVMX_ADD_IO_SEG(0x00011F000000182Cull))
 106#define CVMX_NPI_PCI_CFG12 (CVMX_ADD_IO_SEG(0x00011F0000001830ull))
 107#define CVMX_NPI_PCI_CFG13 (CVMX_ADD_IO_SEG(0x00011F0000001834ull))
 108#define CVMX_NPI_PCI_CFG15 (CVMX_ADD_IO_SEG(0x00011F000000183Cull))
 109#define CVMX_NPI_PCI_CFG16 (CVMX_ADD_IO_SEG(0x00011F0000001840ull))
 110#define CVMX_NPI_PCI_CFG17 (CVMX_ADD_IO_SEG(0x00011F0000001844ull))
 111#define CVMX_NPI_PCI_CFG18 (CVMX_ADD_IO_SEG(0x00011F0000001848ull))
 112#define CVMX_NPI_PCI_CFG19 (CVMX_ADD_IO_SEG(0x00011F000000184Cull))
 113#define CVMX_NPI_PCI_CFG20 (CVMX_ADD_IO_SEG(0x00011F0000001850ull))
 114#define CVMX_NPI_PCI_CFG21 (CVMX_ADD_IO_SEG(0x00011F0000001854ull))
 115#define CVMX_NPI_PCI_CFG22 (CVMX_ADD_IO_SEG(0x00011F0000001858ull))
 116#define CVMX_NPI_PCI_CFG56 (CVMX_ADD_IO_SEG(0x00011F00000018E0ull))
 117#define CVMX_NPI_PCI_CFG57 (CVMX_ADD_IO_SEG(0x00011F00000018E4ull))
 118#define CVMX_NPI_PCI_CFG58 (CVMX_ADD_IO_SEG(0x00011F00000018E8ull))
 119#define CVMX_NPI_PCI_CFG59 (CVMX_ADD_IO_SEG(0x00011F00000018ECull))
 120#define CVMX_NPI_PCI_CFG60 (CVMX_ADD_IO_SEG(0x00011F00000018F0ull))
 121#define CVMX_NPI_PCI_CFG61 (CVMX_ADD_IO_SEG(0x00011F00000018F4ull))
 122#define CVMX_NPI_PCI_CFG62 (CVMX_ADD_IO_SEG(0x00011F00000018F8ull))
 123#define CVMX_NPI_PCI_CFG63 (CVMX_ADD_IO_SEG(0x00011F00000018FCull))
 124#define CVMX_NPI_PCI_CNT_REG (CVMX_ADD_IO_SEG(0x00011F00000011B8ull))
 125#define CVMX_NPI_PCI_CTL_STATUS_2 (CVMX_ADD_IO_SEG(0x00011F000000118Cull))
 126#define CVMX_NPI_PCI_INT_ARB_CFG (CVMX_ADD_IO_SEG(0x00011F0000000130ull))
 127#define CVMX_NPI_PCI_INT_ENB2 (CVMX_ADD_IO_SEG(0x00011F00000011A0ull))
 128#define CVMX_NPI_PCI_INT_SUM2 (CVMX_ADD_IO_SEG(0x00011F0000001198ull))
 129#define CVMX_NPI_PCI_READ_CMD (CVMX_ADD_IO_SEG(0x00011F0000000048ull))
 130#define CVMX_NPI_PCI_READ_CMD_6 (CVMX_ADD_IO_SEG(0x00011F0000001180ull))
 131#define CVMX_NPI_PCI_READ_CMD_C (CVMX_ADD_IO_SEG(0x00011F0000001184ull))
 132#define CVMX_NPI_PCI_READ_CMD_E (CVMX_ADD_IO_SEG(0x00011F0000001188ull))
 133#define CVMX_NPI_PCI_SCM_REG (CVMX_ADD_IO_SEG(0x00011F00000011A8ull))
 134#define CVMX_NPI_PCI_TSR_REG (CVMX_ADD_IO_SEG(0x00011F00000011B0ull))
 135#define CVMX_NPI_PORT32_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F00000001F8ull))
 136#define CVMX_NPI_PORT33_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000200ull))
 137#define CVMX_NPI_PORT34_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000208ull))
 138#define CVMX_NPI_PORT35_INSTR_HDR (CVMX_ADD_IO_SEG(0x00011F0000000210ull))
 139#define CVMX_NPI_PORT_BP_CONTROL (CVMX_ADD_IO_SEG(0x00011F00000001F0ull))
 140#define CVMX_NPI_PX_DBPAIR_ADDR(offset) (CVMX_ADD_IO_SEG(0x00011F0000000180ull) + ((offset) & 3) * 8)
 141#define CVMX_NPI_PX_INSTR_ADDR(offset) (CVMX_ADD_IO_SEG(0x00011F00000001C0ull) + ((offset) & 3) * 8)
 142#define CVMX_NPI_PX_INSTR_CNTS(offset) (CVMX_ADD_IO_SEG(0x00011F00000001A0ull) + ((offset) & 3) * 8)
 143#define CVMX_NPI_PX_PAIR_CNTS(offset) (CVMX_ADD_IO_SEG(0x00011F0000000160ull) + ((offset) & 3) * 8)
 144#define CVMX_NPI_RSL_INT_BLOCKS (CVMX_ADD_IO_SEG(0x00011F0000000000ull))
 145#define CVMX_NPI_SIZE_INPUT0 CVMX_NPI_SIZE_INPUTX(0)
 146#define CVMX_NPI_SIZE_INPUT1 CVMX_NPI_SIZE_INPUTX(1)
 147#define CVMX_NPI_SIZE_INPUT2 CVMX_NPI_SIZE_INPUTX(2)
 148#define CVMX_NPI_SIZE_INPUT3 CVMX_NPI_SIZE_INPUTX(3)
 149#define CVMX_NPI_SIZE_INPUTX(offset) (CVMX_ADD_IO_SEG(0x00011F0000000078ull) + ((offset) & 3) * 16)
 150#define CVMX_NPI_WIN_READ_TO (CVMX_ADD_IO_SEG(0x00011F00000001E0ull))
 151
 152union cvmx_npi_base_addr_inputx {
 153	uint64_t u64;
 154	struct cvmx_npi_base_addr_inputx_s {
 155#ifdef __BIG_ENDIAN_BITFIELD
 156		uint64_t baddr:61;
 157		uint64_t reserved_0_2:3;
 158#else
 159		uint64_t reserved_0_2:3;
 160		uint64_t baddr:61;
 161#endif
 162	} s;
 163	struct cvmx_npi_base_addr_inputx_s cn30xx;
 164	struct cvmx_npi_base_addr_inputx_s cn31xx;
 165	struct cvmx_npi_base_addr_inputx_s cn38xx;
 166	struct cvmx_npi_base_addr_inputx_s cn38xxp2;
 167	struct cvmx_npi_base_addr_inputx_s cn50xx;
 168	struct cvmx_npi_base_addr_inputx_s cn58xx;
 169	struct cvmx_npi_base_addr_inputx_s cn58xxp1;
 170};
 171
 172union cvmx_npi_base_addr_outputx {
 173	uint64_t u64;
 174	struct cvmx_npi_base_addr_outputx_s {
 175#ifdef __BIG_ENDIAN_BITFIELD
 176		uint64_t baddr:61;
 177		uint64_t reserved_0_2:3;
 178#else
 179		uint64_t reserved_0_2:3;
 180		uint64_t baddr:61;
 181#endif
 182	} s;
 183	struct cvmx_npi_base_addr_outputx_s cn30xx;
 184	struct cvmx_npi_base_addr_outputx_s cn31xx;
 185	struct cvmx_npi_base_addr_outputx_s cn38xx;
 186	struct cvmx_npi_base_addr_outputx_s cn38xxp2;
 187	struct cvmx_npi_base_addr_outputx_s cn50xx;
 188	struct cvmx_npi_base_addr_outputx_s cn58xx;
 189	struct cvmx_npi_base_addr_outputx_s cn58xxp1;
 190};
 191
 192union cvmx_npi_bist_status {
 193	uint64_t u64;
 194	struct cvmx_npi_bist_status_s {
 195#ifdef __BIG_ENDIAN_BITFIELD
 196		uint64_t reserved_20_63:44;
 197		uint64_t csr_bs:1;
 198		uint64_t dif_bs:1;
 199		uint64_t rdp_bs:1;
 200		uint64_t pcnc_bs:1;
 201		uint64_t pcn_bs:1;
 202		uint64_t rdn_bs:1;
 203		uint64_t pcac_bs:1;
 204		uint64_t pcad_bs:1;
 205		uint64_t rdnl_bs:1;
 206		uint64_t pgf_bs:1;
 207		uint64_t pig_bs:1;
 208		uint64_t pof0_bs:1;
 209		uint64_t pof1_bs:1;
 210		uint64_t pof2_bs:1;
 211		uint64_t pof3_bs:1;
 212		uint64_t pos_bs:1;
 213		uint64_t nus_bs:1;
 214		uint64_t dob_bs:1;
 215		uint64_t pdf_bs:1;
 216		uint64_t dpi_bs:1;
 217#else
 218		uint64_t dpi_bs:1;
 219		uint64_t pdf_bs:1;
 220		uint64_t dob_bs:1;
 221		uint64_t nus_bs:1;
 222		uint64_t pos_bs:1;
 223		uint64_t pof3_bs:1;
 224		uint64_t pof2_bs:1;
 225		uint64_t pof1_bs:1;
 226		uint64_t pof0_bs:1;
 227		uint64_t pig_bs:1;
 228		uint64_t pgf_bs:1;
 229		uint64_t rdnl_bs:1;
 230		uint64_t pcad_bs:1;
 231		uint64_t pcac_bs:1;
 232		uint64_t rdn_bs:1;
 233		uint64_t pcn_bs:1;
 234		uint64_t pcnc_bs:1;
 235		uint64_t rdp_bs:1;
 236		uint64_t dif_bs:1;
 237		uint64_t csr_bs:1;
 238		uint64_t reserved_20_63:44;
 239#endif
 240	} s;
 241	struct cvmx_npi_bist_status_cn30xx {
 242#ifdef __BIG_ENDIAN_BITFIELD
 243		uint64_t reserved_20_63:44;
 244		uint64_t csr_bs:1;
 245		uint64_t dif_bs:1;
 246		uint64_t rdp_bs:1;
 247		uint64_t pcnc_bs:1;
 248		uint64_t pcn_bs:1;
 249		uint64_t rdn_bs:1;
 250		uint64_t pcac_bs:1;
 251		uint64_t pcad_bs:1;
 252		uint64_t rdnl_bs:1;
 253		uint64_t pgf_bs:1;
 254		uint64_t pig_bs:1;
 255		uint64_t pof0_bs:1;
 256		uint64_t reserved_5_7:3;
 257		uint64_t pos_bs:1;
 258		uint64_t nus_bs:1;
 259		uint64_t dob_bs:1;
 260		uint64_t pdf_bs:1;
 261		uint64_t dpi_bs:1;
 262#else
 263		uint64_t dpi_bs:1;
 264		uint64_t pdf_bs:1;
 265		uint64_t dob_bs:1;
 266		uint64_t nus_bs:1;
 267		uint64_t pos_bs:1;
 268		uint64_t reserved_5_7:3;
 269		uint64_t pof0_bs:1;
 270		uint64_t pig_bs:1;
 271		uint64_t pgf_bs:1;
 272		uint64_t rdnl_bs:1;
 273		uint64_t pcad_bs:1;
 274		uint64_t pcac_bs:1;
 275		uint64_t rdn_bs:1;
 276		uint64_t pcn_bs:1;
 277		uint64_t pcnc_bs:1;
 278		uint64_t rdp_bs:1;
 279		uint64_t dif_bs:1;
 280		uint64_t csr_bs:1;
 281		uint64_t reserved_20_63:44;
 282#endif
 283	} cn30xx;
 284	struct cvmx_npi_bist_status_s cn31xx;
 285	struct cvmx_npi_bist_status_s cn38xx;
 286	struct cvmx_npi_bist_status_s cn38xxp2;
 287	struct cvmx_npi_bist_status_cn50xx {
 288#ifdef __BIG_ENDIAN_BITFIELD
 289		uint64_t reserved_20_63:44;
 290		uint64_t csr_bs:1;
 291		uint64_t dif_bs:1;
 292		uint64_t rdp_bs:1;
 293		uint64_t pcnc_bs:1;
 294		uint64_t pcn_bs:1;
 295		uint64_t rdn_bs:1;
 296		uint64_t pcac_bs:1;
 297		uint64_t pcad_bs:1;
 298		uint64_t rdnl_bs:1;
 299		uint64_t pgf_bs:1;
 300		uint64_t pig_bs:1;
 301		uint64_t pof0_bs:1;
 302		uint64_t pof1_bs:1;
 303		uint64_t reserved_5_6:2;
 304		uint64_t pos_bs:1;
 305		uint64_t nus_bs:1;
 306		uint64_t dob_bs:1;
 307		uint64_t pdf_bs:1;
 308		uint64_t dpi_bs:1;
 309#else
 310		uint64_t dpi_bs:1;
 311		uint64_t pdf_bs:1;
 312		uint64_t dob_bs:1;
 313		uint64_t nus_bs:1;
 314		uint64_t pos_bs:1;
 315		uint64_t reserved_5_6:2;
 316		uint64_t pof1_bs:1;
 317		uint64_t pof0_bs:1;
 318		uint64_t pig_bs:1;
 319		uint64_t pgf_bs:1;
 320		uint64_t rdnl_bs:1;
 321		uint64_t pcad_bs:1;
 322		uint64_t pcac_bs:1;
 323		uint64_t rdn_bs:1;
 324		uint64_t pcn_bs:1;
 325		uint64_t pcnc_bs:1;
 326		uint64_t rdp_bs:1;
 327		uint64_t dif_bs:1;
 328		uint64_t csr_bs:1;
 329		uint64_t reserved_20_63:44;
 330#endif
 331	} cn50xx;
 332	struct cvmx_npi_bist_status_s cn58xx;
 333	struct cvmx_npi_bist_status_s cn58xxp1;
 334};
 335
 336union cvmx_npi_buff_size_outputx {
 337	uint64_t u64;
 338	struct cvmx_npi_buff_size_outputx_s {
 339#ifdef __BIG_ENDIAN_BITFIELD
 340		uint64_t reserved_23_63:41;
 341		uint64_t isize:7;
 342		uint64_t bsize:16;
 343#else
 344		uint64_t bsize:16;
 345		uint64_t isize:7;
 346		uint64_t reserved_23_63:41;
 347#endif
 348	} s;
 349	struct cvmx_npi_buff_size_outputx_s cn30xx;
 350	struct cvmx_npi_buff_size_outputx_s cn31xx;
 351	struct cvmx_npi_buff_size_outputx_s cn38xx;
 352	struct cvmx_npi_buff_size_outputx_s cn38xxp2;
 353	struct cvmx_npi_buff_size_outputx_s cn50xx;
 354	struct cvmx_npi_buff_size_outputx_s cn58xx;
 355	struct cvmx_npi_buff_size_outputx_s cn58xxp1;
 356};
 357
 358union cvmx_npi_comp_ctl {
 359	uint64_t u64;
 360	struct cvmx_npi_comp_ctl_s {
 361#ifdef __BIG_ENDIAN_BITFIELD
 362		uint64_t reserved_10_63:54;
 363		uint64_t pctl:5;
 364		uint64_t nctl:5;
 365#else
 366		uint64_t nctl:5;
 367		uint64_t pctl:5;
 368		uint64_t reserved_10_63:54;
 369#endif
 370	} s;
 371	struct cvmx_npi_comp_ctl_s cn50xx;
 372	struct cvmx_npi_comp_ctl_s cn58xx;
 373	struct cvmx_npi_comp_ctl_s cn58xxp1;
 374};
 375
 376union cvmx_npi_ctl_status {
 377	uint64_t u64;
 378	struct cvmx_npi_ctl_status_s {
 379#ifdef __BIG_ENDIAN_BITFIELD
 380		uint64_t reserved_63_63:1;
 381		uint64_t chip_rev:8;
 382		uint64_t dis_pniw:1;
 383		uint64_t out3_enb:1;
 384		uint64_t out2_enb:1;
 385		uint64_t out1_enb:1;
 386		uint64_t out0_enb:1;
 387		uint64_t ins3_enb:1;
 388		uint64_t ins2_enb:1;
 389		uint64_t ins1_enb:1;
 390		uint64_t ins0_enb:1;
 391		uint64_t ins3_64b:1;
 392		uint64_t ins2_64b:1;
 393		uint64_t ins1_64b:1;
 394		uint64_t ins0_64b:1;
 395		uint64_t pci_wdis:1;
 396		uint64_t wait_com:1;
 397		uint64_t reserved_37_39:3;
 398		uint64_t max_word:5;
 399		uint64_t reserved_10_31:22;
 400		uint64_t timer:10;
 401#else
 402		uint64_t timer:10;
 403		uint64_t reserved_10_31:22;
 404		uint64_t max_word:5;
 405		uint64_t reserved_37_39:3;
 406		uint64_t wait_com:1;
 407		uint64_t pci_wdis:1;
 408		uint64_t ins0_64b:1;
 409		uint64_t ins1_64b:1;
 410		uint64_t ins2_64b:1;
 411		uint64_t ins3_64b:1;
 412		uint64_t ins0_enb:1;
 413		uint64_t ins1_enb:1;
 414		uint64_t ins2_enb:1;
 415		uint64_t ins3_enb:1;
 416		uint64_t out0_enb:1;
 417		uint64_t out1_enb:1;
 418		uint64_t out2_enb:1;
 419		uint64_t out3_enb:1;
 420		uint64_t dis_pniw:1;
 421		uint64_t chip_rev:8;
 422		uint64_t reserved_63_63:1;
 423#endif
 424	} s;
 425	struct cvmx_npi_ctl_status_cn30xx {
 426#ifdef __BIG_ENDIAN_BITFIELD
 427		uint64_t reserved_63_63:1;
 428		uint64_t chip_rev:8;
 429		uint64_t dis_pniw:1;
 430		uint64_t reserved_51_53:3;
 431		uint64_t out0_enb:1;
 432		uint64_t reserved_47_49:3;
 433		uint64_t ins0_enb:1;
 434		uint64_t reserved_43_45:3;
 435		uint64_t ins0_64b:1;
 436		uint64_t pci_wdis:1;
 437		uint64_t wait_com:1;
 438		uint64_t reserved_37_39:3;
 439		uint64_t max_word:5;
 440		uint64_t reserved_10_31:22;
 441		uint64_t timer:10;
 442#else
 443		uint64_t timer:10;
 444		uint64_t reserved_10_31:22;
 445		uint64_t max_word:5;
 446		uint64_t reserved_37_39:3;
 447		uint64_t wait_com:1;
 448		uint64_t pci_wdis:1;
 449		uint64_t ins0_64b:1;
 450		uint64_t reserved_43_45:3;
 451		uint64_t ins0_enb:1;
 452		uint64_t reserved_47_49:3;
 453		uint64_t out0_enb:1;
 454		uint64_t reserved_51_53:3;
 455		uint64_t dis_pniw:1;
 456		uint64_t chip_rev:8;
 457		uint64_t reserved_63_63:1;
 458#endif
 459	} cn30xx;
 460	struct cvmx_npi_ctl_status_cn31xx {
 461#ifdef __BIG_ENDIAN_BITFIELD
 462		uint64_t reserved_63_63:1;
 463		uint64_t chip_rev:8;
 464		uint64_t dis_pniw:1;
 465		uint64_t reserved_52_53:2;
 466		uint64_t out1_enb:1;
 467		uint64_t out0_enb:1;
 468		uint64_t reserved_48_49:2;
 469		uint64_t ins1_enb:1;
 470		uint64_t ins0_enb:1;
 471		uint64_t reserved_44_45:2;
 472		uint64_t ins1_64b:1;
 473		uint64_t ins0_64b:1;
 474		uint64_t pci_wdis:1;
 475		uint64_t wait_com:1;
 476		uint64_t reserved_37_39:3;
 477		uint64_t max_word:5;
 478		uint64_t reserved_10_31:22;
 479		uint64_t timer:10;
 480#else
 481		uint64_t timer:10;
 482		uint64_t reserved_10_31:22;
 483		uint64_t max_word:5;
 484		uint64_t reserved_37_39:3;
 485		uint64_t wait_com:1;
 486		uint64_t pci_wdis:1;
 487		uint64_t ins0_64b:1;
 488		uint64_t ins1_64b:1;
 489		uint64_t reserved_44_45:2;
 490		uint64_t ins0_enb:1;
 491		uint64_t ins1_enb:1;
 492		uint64_t reserved_48_49:2;
 493		uint64_t out0_enb:1;
 494		uint64_t out1_enb:1;
 495		uint64_t reserved_52_53:2;
 496		uint64_t dis_pniw:1;
 497		uint64_t chip_rev:8;
 498		uint64_t reserved_63_63:1;
 499#endif
 500	} cn31xx;
 501	struct cvmx_npi_ctl_status_s cn38xx;
 502	struct cvmx_npi_ctl_status_s cn38xxp2;
 503	struct cvmx_npi_ctl_status_cn31xx cn50xx;
 504	struct cvmx_npi_ctl_status_s cn58xx;
 505	struct cvmx_npi_ctl_status_s cn58xxp1;
 506};
 507
 508union cvmx_npi_dbg_select {
 509	uint64_t u64;
 510	struct cvmx_npi_dbg_select_s {
 511#ifdef __BIG_ENDIAN_BITFIELD
 512		uint64_t reserved_16_63:48;
 513		uint64_t dbg_sel:16;
 514#else
 515		uint64_t dbg_sel:16;
 516		uint64_t reserved_16_63:48;
 517#endif
 518	} s;
 519	struct cvmx_npi_dbg_select_s cn30xx;
 520	struct cvmx_npi_dbg_select_s cn31xx;
 521	struct cvmx_npi_dbg_select_s cn38xx;
 522	struct cvmx_npi_dbg_select_s cn38xxp2;
 523	struct cvmx_npi_dbg_select_s cn50xx;
 524	struct cvmx_npi_dbg_select_s cn58xx;
 525	struct cvmx_npi_dbg_select_s cn58xxp1;
 526};
 527
 528union cvmx_npi_dma_control {
 529	uint64_t u64;
 530	struct cvmx_npi_dma_control_s {
 531#ifdef __BIG_ENDIAN_BITFIELD
 532		uint64_t reserved_36_63:28;
 533		uint64_t b0_lend:1;
 534		uint64_t dwb_denb:1;
 535		uint64_t dwb_ichk:9;
 536		uint64_t fpa_que:3;
 537		uint64_t o_add1:1;
 538		uint64_t o_ro:1;
 539		uint64_t o_ns:1;
 540		uint64_t o_es:2;
 541		uint64_t o_mode:1;
 542		uint64_t hp_enb:1;
 543		uint64_t lp_enb:1;
 544		uint64_t csize:14;
 545#else
 546		uint64_t csize:14;
 547		uint64_t lp_enb:1;
 548		uint64_t hp_enb:1;
 549		uint64_t o_mode:1;
 550		uint64_t o_es:2;
 551		uint64_t o_ns:1;
 552		uint64_t o_ro:1;
 553		uint64_t o_add1:1;
 554		uint64_t fpa_que:3;
 555		uint64_t dwb_ichk:9;
 556		uint64_t dwb_denb:1;
 557		uint64_t b0_lend:1;
 558		uint64_t reserved_36_63:28;
 559#endif
 560	} s;
 561	struct cvmx_npi_dma_control_s cn30xx;
 562	struct cvmx_npi_dma_control_s cn31xx;
 563	struct cvmx_npi_dma_control_s cn38xx;
 564	struct cvmx_npi_dma_control_s cn38xxp2;
 565	struct cvmx_npi_dma_control_s cn50xx;
 566	struct cvmx_npi_dma_control_s cn58xx;
 567	struct cvmx_npi_dma_control_s cn58xxp1;
 568};
 569
 570union cvmx_npi_dma_highp_counts {
 571	uint64_t u64;
 572	struct cvmx_npi_dma_highp_counts_s {
 573#ifdef __BIG_ENDIAN_BITFIELD
 574		uint64_t reserved_39_63:25;
 575		uint64_t fcnt:7;
 576		uint64_t dbell:32;
 577#else
 578		uint64_t dbell:32;
 579		uint64_t fcnt:7;
 580		uint64_t reserved_39_63:25;
 581#endif
 582	} s;
 583	struct cvmx_npi_dma_highp_counts_s cn30xx;
 584	struct cvmx_npi_dma_highp_counts_s cn31xx;
 585	struct cvmx_npi_dma_highp_counts_s cn38xx;
 586	struct cvmx_npi_dma_highp_counts_s cn38xxp2;
 587	struct cvmx_npi_dma_highp_counts_s cn50xx;
 588	struct cvmx_npi_dma_highp_counts_s cn58xx;
 589	struct cvmx_npi_dma_highp_counts_s cn58xxp1;
 590};
 591
 592union cvmx_npi_dma_highp_naddr {
 593	uint64_t u64;
 594	struct cvmx_npi_dma_highp_naddr_s {
 595#ifdef __BIG_ENDIAN_BITFIELD
 596		uint64_t reserved_40_63:24;
 597		uint64_t state:4;
 598		uint64_t addr:36;
 599#else
 600		uint64_t addr:36;
 601		uint64_t state:4;
 602		uint64_t reserved_40_63:24;
 603#endif
 604	} s;
 605	struct cvmx_npi_dma_highp_naddr_s cn30xx;
 606	struct cvmx_npi_dma_highp_naddr_s cn31xx;
 607	struct cvmx_npi_dma_highp_naddr_s cn38xx;
 608	struct cvmx_npi_dma_highp_naddr_s cn38xxp2;
 609	struct cvmx_npi_dma_highp_naddr_s cn50xx;
 610	struct cvmx_npi_dma_highp_naddr_s cn58xx;
 611	struct cvmx_npi_dma_highp_naddr_s cn58xxp1;
 612};
 613
 614union cvmx_npi_dma_lowp_counts {
 615	uint64_t u64;
 616	struct cvmx_npi_dma_lowp_counts_s {
 617#ifdef __BIG_ENDIAN_BITFIELD
 618		uint64_t reserved_39_63:25;
 619		uint64_t fcnt:7;
 620		uint64_t dbell:32;
 621#else
 622		uint64_t dbell:32;
 623		uint64_t fcnt:7;
 624		uint64_t reserved_39_63:25;
 625#endif
 626	} s;
 627	struct cvmx_npi_dma_lowp_counts_s cn30xx;
 628	struct cvmx_npi_dma_lowp_counts_s cn31xx;
 629	struct cvmx_npi_dma_lowp_counts_s cn38xx;
 630	struct cvmx_npi_dma_lowp_counts_s cn38xxp2;
 631	struct cvmx_npi_dma_lowp_counts_s cn50xx;
 632	struct cvmx_npi_dma_lowp_counts_s cn58xx;
 633	struct cvmx_npi_dma_lowp_counts_s cn58xxp1;
 634};
 635
 636union cvmx_npi_dma_lowp_naddr {
 637	uint64_t u64;
 638	struct cvmx_npi_dma_lowp_naddr_s {
 639#ifdef __BIG_ENDIAN_BITFIELD
 640		uint64_t reserved_40_63:24;
 641		uint64_t state:4;
 642		uint64_t addr:36;
 643#else
 644		uint64_t addr:36;
 645		uint64_t state:4;
 646		uint64_t reserved_40_63:24;
 647#endif
 648	} s;
 649	struct cvmx_npi_dma_lowp_naddr_s cn30xx;
 650	struct cvmx_npi_dma_lowp_naddr_s cn31xx;
 651	struct cvmx_npi_dma_lowp_naddr_s cn38xx;
 652	struct cvmx_npi_dma_lowp_naddr_s cn38xxp2;
 653	struct cvmx_npi_dma_lowp_naddr_s cn50xx;
 654	struct cvmx_npi_dma_lowp_naddr_s cn58xx;
 655	struct cvmx_npi_dma_lowp_naddr_s cn58xxp1;
 656};
 657
 658union cvmx_npi_highp_dbell {
 659	uint64_t u64;
 660	struct cvmx_npi_highp_dbell_s {
 661#ifdef __BIG_ENDIAN_BITFIELD
 662		uint64_t reserved_16_63:48;
 663		uint64_t dbell:16;
 664#else
 665		uint64_t dbell:16;
 666		uint64_t reserved_16_63:48;
 667#endif
 668	} s;
 669	struct cvmx_npi_highp_dbell_s cn30xx;
 670	struct cvmx_npi_highp_dbell_s cn31xx;
 671	struct cvmx_npi_highp_dbell_s cn38xx;
 672	struct cvmx_npi_highp_dbell_s cn38xxp2;
 673	struct cvmx_npi_highp_dbell_s cn50xx;
 674	struct cvmx_npi_highp_dbell_s cn58xx;
 675	struct cvmx_npi_highp_dbell_s cn58xxp1;
 676};
 677
 678union cvmx_npi_highp_ibuff_saddr {
 679	uint64_t u64;
 680	struct cvmx_npi_highp_ibuff_saddr_s {
 681#ifdef __BIG_ENDIAN_BITFIELD
 682		uint64_t reserved_36_63:28;
 683		uint64_t saddr:36;
 684#else
 685		uint64_t saddr:36;
 686		uint64_t reserved_36_63:28;
 687#endif
 688	} s;
 689	struct cvmx_npi_highp_ibuff_saddr_s cn30xx;
 690	struct cvmx_npi_highp_ibuff_saddr_s cn31xx;
 691	struct cvmx_npi_highp_ibuff_saddr_s cn38xx;
 692	struct cvmx_npi_highp_ibuff_saddr_s cn38xxp2;
 693	struct cvmx_npi_highp_ibuff_saddr_s cn50xx;
 694	struct cvmx_npi_highp_ibuff_saddr_s cn58xx;
 695	struct cvmx_npi_highp_ibuff_saddr_s cn58xxp1;
 696};
 697
 698union cvmx_npi_input_control {
 699	uint64_t u64;
 700	struct cvmx_npi_input_control_s {
 701#ifdef __BIG_ENDIAN_BITFIELD
 702		uint64_t reserved_23_63:41;
 703		uint64_t pkt_rr:1;
 704		uint64_t pbp_dhi:13;
 705		uint64_t d_nsr:1;
 706		uint64_t d_esr:2;
 707		uint64_t d_ror:1;
 708		uint64_t use_csr:1;
 709		uint64_t nsr:1;
 710		uint64_t esr:2;
 711		uint64_t ror:1;
 712#else
 713		uint64_t ror:1;
 714		uint64_t esr:2;
 715		uint64_t nsr:1;
 716		uint64_t use_csr:1;
 717		uint64_t d_ror:1;
 718		uint64_t d_esr:2;
 719		uint64_t d_nsr:1;
 720		uint64_t pbp_dhi:13;
 721		uint64_t pkt_rr:1;
 722		uint64_t reserved_23_63:41;
 723#endif
 724	} s;
 725	struct cvmx_npi_input_control_cn30xx {
 726#ifdef __BIG_ENDIAN_BITFIELD
 727		uint64_t reserved_22_63:42;
 728		uint64_t pbp_dhi:13;
 729		uint64_t d_nsr:1;
 730		uint64_t d_esr:2;
 731		uint64_t d_ror:1;
 732		uint64_t use_csr:1;
 733		uint64_t nsr:1;
 734		uint64_t esr:2;
 735		uint64_t ror:1;
 736#else
 737		uint64_t ror:1;
 738		uint64_t esr:2;
 739		uint64_t nsr:1;
 740		uint64_t use_csr:1;
 741		uint64_t d_ror:1;
 742		uint64_t d_esr:2;
 743		uint64_t d_nsr:1;
 744		uint64_t pbp_dhi:13;
 745		uint64_t reserved_22_63:42;
 746#endif
 747	} cn30xx;
 748	struct cvmx_npi_input_control_cn30xx cn31xx;
 749	struct cvmx_npi_input_control_s cn38xx;
 750	struct cvmx_npi_input_control_cn30xx cn38xxp2;
 751	struct cvmx_npi_input_control_s cn50xx;
 752	struct cvmx_npi_input_control_s cn58xx;
 753	struct cvmx_npi_input_control_s cn58xxp1;
 754};
 755
 756union cvmx_npi_int_enb {
 757	uint64_t u64;
 758	struct cvmx_npi_int_enb_s {
 759#ifdef __BIG_ENDIAN_BITFIELD
 760		uint64_t reserved_62_63:2;
 761		uint64_t q1_a_f:1;
 762		uint64_t q1_s_e:1;
 763		uint64_t pdf_p_f:1;
 764		uint64_t pdf_p_e:1;
 765		uint64_t pcf_p_f:1;
 766		uint64_t pcf_p_e:1;
 767		uint64_t rdx_s_e:1;
 768		uint64_t rwx_s_e:1;
 769		uint64_t pnc_a_f:1;
 770		uint64_t pnc_s_e:1;
 771		uint64_t com_a_f:1;
 772		uint64_t com_s_e:1;
 773		uint64_t q3_a_f:1;
 774		uint64_t q3_s_e:1;
 775		uint64_t q2_a_f:1;
 776		uint64_t q2_s_e:1;
 777		uint64_t pcr_a_f:1;
 778		uint64_t pcr_s_e:1;
 779		uint64_t fcr_a_f:1;
 780		uint64_t fcr_s_e:1;
 781		uint64_t iobdma:1;
 782		uint64_t p_dperr:1;
 783		uint64_t win_rto:1;
 784		uint64_t i3_pperr:1;
 785		uint64_t i2_pperr:1;
 786		uint64_t i1_pperr:1;
 787		uint64_t i0_pperr:1;
 788		uint64_t p3_ptout:1;
 789		uint64_t p2_ptout:1;
 790		uint64_t p1_ptout:1;
 791		uint64_t p0_ptout:1;
 792		uint64_t p3_pperr:1;
 793		uint64_t p2_pperr:1;
 794		uint64_t p1_pperr:1;
 795		uint64_t p0_pperr:1;
 796		uint64_t g3_rtout:1;
 797		uint64_t g2_rtout:1;
 798		uint64_t g1_rtout:1;
 799		uint64_t g0_rtout:1;
 800		uint64_t p3_perr:1;
 801		uint64_t p2_perr:1;
 802		uint64_t p1_perr:1;
 803		uint64_t p0_perr:1;
 804		uint64_t p3_rtout:1;
 805		uint64_t p2_rtout:1;
 806		uint64_t p1_rtout:1;
 807		uint64_t p0_rtout:1;
 808		uint64_t i3_overf:1;
 809		uint64_t i2_overf:1;
 810		uint64_t i1_overf:1;
 811		uint64_t i0_overf:1;
 812		uint64_t i3_rtout:1;
 813		uint64_t i2_rtout:1;
 814		uint64_t i1_rtout:1;
 815		uint64_t i0_rtout:1;
 816		uint64_t po3_2sml:1;
 817		uint64_t po2_2sml:1;
 818		uint64_t po1_2sml:1;
 819		uint64_t po0_2sml:1;
 820		uint64_t pci_rsl:1;
 821		uint64_t rml_wto:1;
 822		uint64_t rml_rto:1;
 823#else
 824		uint64_t rml_rto:1;
 825		uint64_t rml_wto:1;
 826		uint64_t pci_rsl:1;
 827		uint64_t po0_2sml:1;
 828		uint64_t po1_2sml:1;
 829		uint64_t po2_2sml:1;
 830		uint64_t po3_2sml:1;
 831		uint64_t i0_rtout:1;
 832		uint64_t i1_rtout:1;
 833		uint64_t i2_rtout:1;
 834		uint64_t i3_rtout:1;
 835		uint64_t i0_overf:1;
 836		uint64_t i1_overf:1;
 837		uint64_t i2_overf:1;
 838		uint64_t i3_overf:1;
 839		uint64_t p0_rtout:1;
 840		uint64_t p1_rtout:1;
 841		uint64_t p2_rtout:1;
 842		uint64_t p3_rtout:1;
 843		uint64_t p0_perr:1;
 844		uint64_t p1_perr:1;
 845		uint64_t p2_perr:1;
 846		uint64_t p3_perr:1;
 847		uint64_t g0_rtout:1;
 848		uint64_t g1_rtout:1;
 849		uint64_t g2_rtout:1;
 850		uint64_t g3_rtout:1;
 851		uint64_t p0_pperr:1;
 852		uint64_t p1_pperr:1;
 853		uint64_t p2_pperr:1;
 854		uint64_t p3_pperr:1;
 855		uint64_t p0_ptout:1;
 856		uint64_t p1_ptout:1;
 857		uint64_t p2_ptout:1;
 858		uint64_t p3_ptout:1;
 859		uint64_t i0_pperr:1;
 860		uint64_t i1_pperr:1;
 861		uint64_t i2_pperr:1;
 862		uint64_t i3_pperr:1;
 863		uint64_t win_rto:1;
 864		uint64_t p_dperr:1;
 865		uint64_t iobdma:1;
 866		uint64_t fcr_s_e:1;
 867		uint64_t fcr_a_f:1;
 868		uint64_t pcr_s_e:1;
 869		uint64_t pcr_a_f:1;
 870		uint64_t q2_s_e:1;
 871		uint64_t q2_a_f:1;
 872		uint64_t q3_s_e:1;
 873		uint64_t q3_a_f:1;
 874		uint64_t com_s_e:1;
 875		uint64_t com_a_f:1;
 876		uint64_t pnc_s_e:1;
 877		uint64_t pnc_a_f:1;
 878		uint64_t rwx_s_e:1;
 879		uint64_t rdx_s_e:1;
 880		uint64_t pcf_p_e:1;
 881		uint64_t pcf_p_f:1;
 882		uint64_t pdf_p_e:1;
 883		uint64_t pdf_p_f:1;
 884		uint64_t q1_s_e:1;
 885		uint64_t q1_a_f:1;
 886		uint64_t reserved_62_63:2;
 887#endif
 888	} s;
 889	struct cvmx_npi_int_enb_cn30xx {
 890#ifdef __BIG_ENDIAN_BITFIELD
 891		uint64_t reserved_62_63:2;
 892		uint64_t q1_a_f:1;
 893		uint64_t q1_s_e:1;
 894		uint64_t pdf_p_f:1;
 895		uint64_t pdf_p_e:1;
 896		uint64_t pcf_p_f:1;
 897		uint64_t pcf_p_e:1;
 898		uint64_t rdx_s_e:1;
 899		uint64_t rwx_s_e:1;
 900		uint64_t pnc_a_f:1;
 901		uint64_t pnc_s_e:1;
 902		uint64_t com_a_f:1;
 903		uint64_t com_s_e:1;
 904		uint64_t q3_a_f:1;
 905		uint64_t q3_s_e:1;
 906		uint64_t q2_a_f:1;
 907		uint64_t q2_s_e:1;
 908		uint64_t pcr_a_f:1;
 909		uint64_t pcr_s_e:1;
 910		uint64_t fcr_a_f:1;
 911		uint64_t fcr_s_e:1;
 912		uint64_t iobdma:1;
 913		uint64_t p_dperr:1;
 914		uint64_t win_rto:1;
 915		uint64_t reserved_36_38:3;
 916		uint64_t i0_pperr:1;
 917		uint64_t reserved_32_34:3;
 918		uint64_t p0_ptout:1;
 919		uint64_t reserved_28_30:3;
 920		uint64_t p0_pperr:1;
 921		uint64_t reserved_24_26:3;
 922		uint64_t g0_rtout:1;
 923		uint64_t reserved_20_22:3;
 924		uint64_t p0_perr:1;
 925		uint64_t reserved_16_18:3;
 926		uint64_t p0_rtout:1;
 927		uint64_t reserved_12_14:3;
 928		uint64_t i0_overf:1;
 929		uint64_t reserved_8_10:3;
 930		uint64_t i0_rtout:1;
 931		uint64_t reserved_4_6:3;
 932		uint64_t po0_2sml:1;
 933		uint64_t pci_rsl:1;
 934		uint64_t rml_wto:1;
 935		uint64_t rml_rto:1;
 936#else
 937		uint64_t rml_rto:1;
 938		uint64_t rml_wto:1;
 939		uint64_t pci_rsl:1;
 940		uint64_t po0_2sml:1;
 941		uint64_t reserved_4_6:3;
 942		uint64_t i0_rtout:1;
 943		uint64_t reserved_8_10:3;
 944		uint64_t i0_overf:1;
 945		uint64_t reserved_12_14:3;
 946		uint64_t p0_rtout:1;
 947		uint64_t reserved_16_18:3;
 948		uint64_t p0_perr:1;
 949		uint64_t reserved_20_22:3;
 950		uint64_t g0_rtout:1;
 951		uint64_t reserved_24_26:3;
 952		uint64_t p0_pperr:1;
 953		uint64_t reserved_28_30:3;
 954		uint64_t p0_ptout:1;
 955		uint64_t reserved_32_34:3;
 956		uint64_t i0_pperr:1;
 957		uint64_t reserved_36_38:3;
 958		uint64_t win_rto:1;
 959		uint64_t p_dperr:1;
 960		uint64_t iobdma:1;
 961		uint64_t fcr_s_e:1;
 962		uint64_t fcr_a_f:1;
 963		uint64_t pcr_s_e:1;
 964		uint64_t pcr_a_f:1;
 965		uint64_t q2_s_e:1;
 966		uint64_t q2_a_f:1;
 967		uint64_t q3_s_e:1;
 968		uint64_t q3_a_f:1;
 969		uint64_t com_s_e:1;
 970		uint64_t com_a_f:1;
 971		uint64_t pnc_s_e:1;
 972		uint64_t pnc_a_f:1;
 973		uint64_t rwx_s_e:1;
 974		uint64_t rdx_s_e:1;
 975		uint64_t pcf_p_e:1;
 976		uint64_t pcf_p_f:1;
 977		uint64_t pdf_p_e:1;
 978		uint64_t pdf_p_f:1;
 979		uint64_t q1_s_e:1;
 980		uint64_t q1_a_f:1;
 981		uint64_t reserved_62_63:2;
 982#endif
 983	} cn30xx;
 984	struct cvmx_npi_int_enb_cn31xx {
 985#ifdef __BIG_ENDIAN_BITFIELD
 986		uint64_t reserved_62_63:2;
 987		uint64_t q1_a_f:1;
 988		uint64_t q1_s_e:1;
 989		uint64_t pdf_p_f:1;
 990		uint64_t pdf_p_e:1;
 991		uint64_t pcf_p_f:1;
 992		uint64_t pcf_p_e:1;
 993		uint64_t rdx_s_e:1;
 994		uint64_t rwx_s_e:1;
 995		uint64_t pnc_a_f:1;
 996		uint64_t pnc_s_e:1;
 997		uint64_t com_a_f:1;
 998		uint64_t com_s_e:1;
 999		uint64_t q3_a_f:1;
1000		uint64_t q3_s_e:1;
1001		uint64_t q2_a_f:1;
1002		uint64_t q2_s_e:1;
1003		uint64_t pcr_a_f:1;
1004		uint64_t pcr_s_e:1;
1005		uint64_t fcr_a_f:1;
1006		uint64_t fcr_s_e:1;
1007		uint64_t iobdma:1;
1008		uint64_t p_dperr:1;
1009		uint64_t win_rto:1;
1010		uint64_t reserved_37_38:2;
1011		uint64_t i1_pperr:1;
1012		uint64_t i0_pperr:1;
1013		uint64_t reserved_33_34:2;
1014		uint64_t p1_ptout:1;
1015		uint64_t p0_ptout:1;
1016		uint64_t reserved_29_30:2;
1017		uint64_t p1_pperr:1;
1018		uint64_t p0_pperr:1;
1019		uint64_t reserved_25_26:2;
1020		uint64_t g1_rtout:1;
1021		uint64_t g0_rtout:1;
1022		uint64_t reserved_21_22:2;
1023		uint64_t p1_perr:1;
1024		uint64_t p0_perr:1;
1025		uint64_t reserved_17_18:2;
1026		uint64_t p1_rtout:1;
1027		uint64_t p0_rtout:1;
1028		uint64_t reserved_13_14:2;
1029		uint64_t i1_overf:1;
1030		uint64_t i0_overf:1;
1031		uint64_t reserved_9_10:2;
1032		uint64_t i1_rtout:1;
1033		uint64_t i0_rtout:1;
1034		uint64_t reserved_5_6:2;
1035		uint64_t po1_2sml:1;
1036		uint64_t po0_2sml:1;
1037		uint64_t pci_rsl:1;
1038		uint64_t rml_wto:1;
1039		uint64_t rml_rto:1;
1040#else
1041		uint64_t rml_rto:1;
1042		uint64_t rml_wto:1;
1043		uint64_t pci_rsl:1;
1044		uint64_t po0_2sml:1;
1045		uint64_t po1_2sml:1;
1046		uint64_t reserved_5_6:2;
1047		uint64_t i0_rtout:1;
1048		uint64_t i1_rtout:1;
1049		uint64_t reserved_9_10:2;
1050		uint64_t i0_overf:1;
1051		uint64_t i1_overf:1;
1052		uint64_t reserved_13_14:2;
1053		uint64_t p0_rtout:1;
1054		uint64_t p1_rtout:1;
1055		uint64_t reserved_17_18:2;
1056		uint64_t p0_perr:1;
1057		uint64_t p1_perr:1;
1058		uint64_t reserved_21_22:2;
1059		uint64_t g0_rtout:1;
1060		uint64_t g1_rtout:1;
1061		uint64_t reserved_25_26:2;
1062		uint64_t p0_pperr:1;
1063		uint64_t p1_pperr:1;
1064		uint64_t reserved_29_30:2;
1065		uint64_t p0_ptout:1;
1066		uint64_t p1_ptout:1;
1067		uint64_t reserved_33_34:2;
1068		uint64_t i0_pperr:1;
1069		uint64_t i1_pperr:1;
1070		uint64_t reserved_37_38:2;
1071		uint64_t win_rto:1;
1072		uint64_t p_dperr:1;
1073		uint64_t iobdma:1;
1074		uint64_t fcr_s_e:1;
1075		uint64_t fcr_a_f:1;
1076		uint64_t pcr_s_e:1;
1077		uint64_t pcr_a_f:1;
1078		uint64_t q2_s_e:1;
1079		uint64_t q2_a_f:1;
1080		uint64_t q3_s_e:1;
1081		uint64_t q3_a_f:1;
1082		uint64_t com_s_e:1;
1083		uint64_t com_a_f:1;
1084		uint64_t pnc_s_e:1;
1085		uint64_t pnc_a_f:1;
1086		uint64_t rwx_s_e:1;
1087		uint64_t rdx_s_e:1;
1088		uint64_t pcf_p_e:1;
1089		uint64_t pcf_p_f:1;
1090		uint64_t pdf_p_e:1;
1091		uint64_t pdf_p_f:1;
1092		uint64_t q1_s_e:1;
1093		uint64_t q1_a_f:1;
1094		uint64_t reserved_62_63:2;
1095#endif
1096	} cn31xx;
1097	struct cvmx_npi_int_enb_s cn38xx;
1098	struct cvmx_npi_int_enb_cn38xxp2 {
1099#ifdef __BIG_ENDIAN_BITFIELD
1100		uint64_t reserved_42_63:22;
1101		uint64_t iobdma:1;
1102		uint64_t p_dperr:1;
1103		uint64_t win_rto:1;
1104		uint64_t i3_pperr:1;
1105		uint64_t i2_pperr:1;
1106		uint64_t i1_pperr:1;
1107		uint64_t i0_pperr:1;
1108		uint64_t p3_ptout:1;
1109		uint64_t p2_ptout:1;
1110		uint64_t p1_ptout:1;
1111		uint64_t p0_ptout:1;
1112		uint64_t p3_pperr:1;
1113		uint64_t p2_pperr:1;
1114		uint64_t p1_pperr:1;
1115		uint64_t p0_pperr:1;
1116		uint64_t g3_rtout:1;
1117		uint64_t g2_rtout:1;
1118		uint64_t g1_rtout:1;
1119		uint64_t g0_rtout:1;
1120		uint64_t p3_perr:1;
1121		uint64_t p2_perr:1;
1122		uint64_t p1_perr:1;
1123		uint64_t p0_perr:1;
1124		uint64_t p3_rtout:1;
1125		uint64_t p2_rtout:1;
1126		uint64_t p1_rtout:1;
1127		uint64_t p0_rtout:1;
1128		uint64_t i3_overf:1;
1129		uint64_t i2_overf:1;
1130		uint64_t i1_overf:1;
1131		uint64_t i0_overf:1;
1132		uint64_t i3_rtout:1;
1133		uint64_t i2_rtout:1;
1134		uint64_t i1_rtout:1;
1135		uint64_t i0_rtout:1;
1136		uint64_t po3_2sml:1;
1137		uint64_t po2_2sml:1;
1138		uint64_t po1_2sml:1;
1139		uint64_t po0_2sml:1;
1140		uint64_t pci_rsl:1;
1141		uint64_t rml_wto:1;
1142		uint64_t rml_rto:1;
1143#else
1144		uint64_t rml_rto:1;
1145		uint64_t rml_wto:1;
1146		uint64_t pci_rsl:1;
1147		uint64_t po0_2sml:1;
1148		uint64_t po1_2sml:1;
1149		uint64_t po2_2sml:1;
1150		uint64_t po3_2sml:1;
1151		uint64_t i0_rtout:1;
1152		uint64_t i1_rtout:1;
1153		uint64_t i2_rtout:1;
1154		uint64_t i3_rtout:1;
1155		uint64_t i0_overf:1;
1156		uint64_t i1_overf:1;
1157		uint64_t i2_overf:1;
1158		uint64_t i3_overf:1;
1159		uint64_t p0_rtout:1;
1160		uint64_t p1_rtout:1;
1161		uint64_t p2_rtout:1;
1162		uint64_t p3_rtout:1;
1163		uint64_t p0_perr:1;
1164		uint64_t p1_perr:1;
1165		uint64_t p2_perr:1;
1166		uint64_t p3_perr:1;
1167		uint64_t g0_rtout:1;
1168		uint64_t g1_rtout:1;
1169		uint64_t g2_rtout:1;
1170		uint64_t g3_rtout:1;
1171		uint64_t p0_pperr:1;
1172		uint64_t p1_pperr:1;
1173		uint64_t p2_pperr:1;
1174		uint64_t p3_pperr:1;
1175		uint64_t p0_ptout:1;
1176		uint64_t p1_ptout:1;
1177		uint64_t p2_ptout:1;
1178		uint64_t p3_ptout:1;
1179		uint64_t i0_pperr:1;
1180		uint64_t i1_pperr:1;
1181		uint64_t i2_pperr:1;
1182		uint64_t i3_pperr:1;
1183		uint64_t win_rto:1;
1184		uint64_t p_dperr:1;
1185		uint64_t iobdma:1;
1186		uint64_t reserved_42_63:22;
1187#endif
1188	} cn38xxp2;
1189	struct cvmx_npi_int_enb_cn31xx cn50xx;
1190	struct cvmx_npi_int_enb_s cn58xx;
1191	struct cvmx_npi_int_enb_s cn58xxp1;
1192};
1193
1194union cvmx_npi_int_sum {
1195	uint64_t u64;
1196	struct cvmx_npi_int_sum_s {
1197#ifdef __BIG_ENDIAN_BITFIELD
1198		uint64_t reserved_62_63:2;
1199		uint64_t q1_a_f:1;
1200		uint64_t q1_s_e:1;
1201		uint64_t pdf_p_f:1;
1202		uint64_t pdf_p_e:1;
1203		uint64_t pcf_p_f:1;
1204		uint64_t pcf_p_e:1;
1205		uint64_t rdx_s_e:1;
1206		uint64_t rwx_s_e:1;
1207		uint64_t pnc_a_f:1;
1208		uint64_t pnc_s_e:1;
1209		uint64_t com_a_f:1;
1210		uint64_t com_s_e:1;
1211		uint64_t q3_a_f:1;
1212		uint64_t q3_s_e:1;
1213		uint64_t q2_a_f:1;
1214		uint64_t q2_s_e:1;
1215		uint64_t pcr_a_f:1;
1216		uint64_t pcr_s_e:1;
1217		uint64_t fcr_a_f:1;
1218		uint64_t fcr_s_e:1;
1219		uint64_t iobdma:1;
1220		uint64_t p_dperr:1;
1221		uint64_t win_rto:1;
1222		uint64_t i3_pperr:1;
1223		uint64_t i2_pperr:1;
1224		uint64_t i1_pperr:1;
1225		uint64_t i0_pperr:1;
1226		uint64_t p3_ptout:1;
1227		uint64_t p2_ptout:1;
1228		uint64_t p1_ptout:1;
1229		uint64_t p0_ptout:1;
1230		uint64_t p3_pperr:1;
1231		uint64_t p2_pperr:1;
1232		uint64_t p1_pperr:1;
1233		uint64_t p0_pperr:1;
1234		uint64_t g3_rtout:1;
1235		uint64_t g2_rtout:1;
1236		uint64_t g1_rtout:1;
1237		uint64_t g0_rtout:1;
1238		uint64_t p3_perr:1;
1239		uint64_t p2_perr:1;
1240		uint64_t p1_perr:1;
1241		uint64_t p0_perr:1;
1242		uint64_t p3_rtout:1;
1243		uint64_t p2_rtout:1;
1244		uint64_t p1_rtout:1;
1245		uint64_t p0_rtout:1;
1246		uint64_t i3_overf:1;
1247		uint64_t i2_overf:1;
1248		uint64_t i1_overf:1;
1249		uint64_t i0_overf:1;
1250		uint64_t i3_rtout:1;
1251		uint64_t i2_rtout:1;
1252		uint64_t i1_rtout:1;
1253		uint64_t i0_rtout:1;
1254		uint64_t po3_2sml:1;
1255		uint64_t po2_2sml:1;
1256		uint64_t po1_2sml:1;
1257		uint64_t po0_2sml:1;
1258		uint64_t pci_rsl:1;
1259		uint64_t rml_wto:1;
1260		uint64_t rml_rto:1;
1261#else
1262		uint64_t rml_rto:1;
1263		uint64_t rml_wto:1;
1264		uint64_t pci_rsl:1;
1265		uint64_t po0_2sml:1;
1266		uint64_t po1_2sml:1;
1267		uint64_t po2_2sml:1;
1268		uint64_t po3_2sml:1;
1269		uint64_t i0_rtout:1;
1270		uint64_t i1_rtout:1;
1271		uint64_t i2_rtout:1;
1272		uint64_t i3_rtout:1;
1273		uint64_t i0_overf:1;
1274		uint64_t i1_overf:1;
1275		uint64_t i2_overf:1;
1276		uint64_t i3_overf:1;
1277		uint64_t p0_rtout:1;
1278		uint64_t p1_rtout:1;
1279		uint64_t p2_rtout:1;
1280		uint64_t p3_rtout:1;
1281		uint64_t p0_perr:1;
1282		uint64_t p1_perr:1;
1283		uint64_t p2_perr:1;
1284		uint64_t p3_perr:1;
1285		uint64_t g0_rtout:1;
1286		uint64_t g1_rtout:1;
1287		uint64_t g2_rtout:1;
1288		uint64_t g3_rtout:1;
1289		uint64_t p0_pperr:1;
1290		uint64_t p1_pperr:1;
1291		uint64_t p2_pperr:1;
1292		uint64_t p3_pperr:1;
1293		uint64_t p0_ptout:1;
1294		uint64_t p1_ptout:1;
1295		uint64_t p2_ptout:1;
1296		uint64_t p3_ptout:1;
1297		uint64_t i0_pperr:1;
1298		uint64_t i1_pperr:1;
1299		uint64_t i2_pperr:1;
1300		uint64_t i3_pperr:1;
1301		uint64_t win_rto:1;
1302		uint64_t p_dperr:1;
1303		uint64_t iobdma:1;
1304		uint64_t fcr_s_e:1;
1305		uint64_t fcr_a_f:1;
1306		uint64_t pcr_s_e:1;
1307		uint64_t pcr_a_f:1;
1308		uint64_t q2_s_e:1;
1309		uint64_t q2_a_f:1;
1310		uint64_t q3_s_e:1;
1311		uint64_t q3_a_f:1;
1312		uint64_t com_s_e:1;
1313		uint64_t com_a_f:1;
1314		uint64_t pnc_s_e:1;
1315		uint64_t pnc_a_f:1;
1316		uint64_t rwx_s_e:1;
1317		uint64_t rdx_s_e:1;
1318		uint64_t pcf_p_e:1;
1319		uint64_t pcf_p_f:1;
1320		uint64_t pdf_p_e:1;
1321		uint64_t pdf_p_f:1;
1322		uint64_t q1_s_e:1;
1323		uint64_t q1_a_f:1;
1324		uint64_t reserved_62_63:2;
1325#endif
1326	} s;
1327	struct cvmx_npi_int_sum_cn30xx {
1328#ifdef __BIG_ENDIAN_BITFIELD
1329		uint64_t reserved_62_63:2;
1330		uint64_t q1_a_f:1;
1331		uint64_t q1_s_e:1;
1332		uint64_t pdf_p_f:1;
1333		uint64_t pdf_p_e:1;
1334		uint64_t pcf_p_f:1;
1335		uint64_t pcf_p_e:1;
1336		uint64_t rdx_s_e:1;
1337		uint64_t rwx_s_e:1;
1338		uint64_t pnc_a_f:1;
1339		uint64_t pnc_s_e:1;
1340		uint64_t com_a_f:1;
1341		uint64_t com_s_e:1;
1342		uint64_t q3_a_f:1;
1343		uint64_t q3_s_e:1;
1344		uint64_t q2_a_f:1;
1345		uint64_t q2_s_e:1;
1346		uint64_t pcr_a_f:1;
1347		uint64_t pcr_s_e:1;
1348		uint64_t fcr_a_f:1;
1349		uint64_t fcr_s_e:1;
1350		uint64_t iobdma:1;
1351		uint64_t p_dperr:1;
1352		uint64_t win_rto:1;
1353		uint64_t reserved_36_38:3;
1354		uint64_t i0_pperr:1;
1355		uint64_t reserved_32_34:3;
1356		uint64_t p0_ptout:1;
1357		uint64_t reserved_28_30:3;
1358		uint64_t p0_pperr:1;
1359		uint64_t reserved_24_26:3;
1360		uint64_t g0_rtout:1;
1361		uint64_t reserved_20_22:3;
1362		uint64_t p0_perr:1;
1363		uint64_t reserved_16_18:3;
1364		uint64_t p0_rtout:1;
1365		uint64_t reserved_12_14:3;
1366		uint64_t i0_overf:1;
1367		uint64_t reserved_8_10:3;
1368		uint64_t i0_rtout:1;
1369		uint64_t reserved_4_6:3;
1370		uint64_t po0_2sml:1;
1371		uint64_t pci_rsl:1;
1372		uint64_t rml_wto:1;
1373		uint64_t rml_rto:1;
1374#else
1375		uint64_t rml_rto:1;
1376		uint64_t rml_wto:1;
1377		uint64_t pci_rsl:1;
1378		uint64_t po0_2sml:1;
1379		uint64_t reserved_4_6:3;
1380		uint64_t i0_rtout:1;
1381		uint64_t reserved_8_10:3;
1382		uint64_t i0_overf:1;
1383		uint64_t reserved_12_14:3;
1384		uint64_t p0_rtout:1;
1385		uint64_t reserved_16_18:3;
1386		uint64_t p0_perr:1;
1387		uint64_t reserved_20_22:3;
1388		uint64_t g0_rtout:1;
1389		uint64_t reserved_24_26:3;
1390		uint64_t p0_pperr:1;
1391		uint64_t reserved_28_30:3;
1392		uint64_t p0_ptout:1;
1393		uint64_t reserved_32_34:3;
1394		uint64_t i0_pperr:1;
1395		uint64_t reserved_36_38:3;
1396		uint64_t win_rto:1;
1397		uint64_t p_dperr:1;
1398		uint64_t iobdma:1;
1399		uint64_t fcr_s_e:1;
1400		uint64_t fcr_a_f:1;
1401		uint64_t pcr_s_e:1;
1402		uint64_t pcr_a_f:1;
1403		uint64_t q2_s_e:1;
1404		uint64_t q2_a_f:1;
1405		uint64_t q3_s_e:1;
1406		uint64_t q3_a_f:1;
1407		uint64_t com_s_e:1;
1408		uint64_t com_a_f:1;
1409		uint64_t pnc_s_e:1;
1410		uint64_t pnc_a_f:1;
1411		uint64_t rwx_s_e:1;
1412		uint64_t rdx_s_e:1;
1413		uint64_t pcf_p_e:1;
1414		uint64_t pcf_p_f:1;
1415		uint64_t pdf_p_e:1;
1416		uint64_t pdf_p_f:1;
1417		uint64_t q1_s_e:1;
1418		uint64_t q1_a_f:1;
1419		uint64_t reserved_62_63:2;
1420#endif
1421	} cn30xx;
1422	struct cvmx_npi_int_sum_cn31xx {
1423#ifdef __BIG_ENDIAN_BITFIELD
1424		uint64_t reserved_62_63:2;
1425		uint64_t q1_a_f:1;
1426		uint64_t q1_s_e:1;
1427		uint64_t pdf_p_f:1;
1428		uint64_t pdf_p_e:1;
1429		uint64_t pcf_p_f:1;
1430		uint64_t pcf_p_e:1;
1431		uint64_t rdx_s_e:1;
1432		uint64_t rwx_s_e:1;
1433		uint64_t pnc_a_f:1;
1434		uint64_t pnc_s_e:1;
1435		uint64_t com_a_f:1;
1436		uint64_t com_s_e:1;
1437		uint64_t q3_a_f:1;
1438		uint64_t q3_s_e:1;
1439		uint64_t q2_a_f:1;
1440		uint64_t q2_s_e:1;
1441		uint64_t pcr_a_f:1;
1442		uint64_t pcr_s_e:1;
1443		uint64_t fcr_a_f:1;
1444		uint64_t fcr_s_e:1;
1445		uint64_t iobdma:1;
1446		uint64_t p_dperr:1;
1447		uint64_t win_rto:1;
1448		uint64_t reserved_37_38:2;
1449		uint64_t i1_pperr:1;
1450		uint64_t i0_pperr:1;
1451		uint64_t reserved_33_34:2;
1452		uint64_t p1_ptout:1;
1453		uint64_t p0_ptout:1;
1454		uint64_t reserved_29_30:2;
1455		uint64_t p1_pperr:1;
1456		uint64_t p0_pperr:1;
1457		uint64_t reserved_25_26:2;
1458		uint64_t g1_rtout:1;
1459		uint64_t g0_rtout:1;
1460		uint64_t reserved_21_22:2;
1461		uint64_t p1_perr:1;
1462		uint64_t p0_perr:1;
1463		uint64_t reserved_17_18:2;
1464		uint64_t p1_rtout:1;
1465		uint64_t p0_rtout:1;
1466		uint64_t reserved_13_14:2;
1467		uint64_t i1_overf:1;
1468		uint64_t i0_overf:1;
1469		uint64_t reserved_9_10:2;
1470		uint64_t i1_rtout:1;
1471		uint64_t i0_rtout:1;
1472		uint64_t reserved_5_6:2;
1473		uint64_t po1_2sml:1;
1474		uint64_t po0_2sml:1;
1475		uint64_t pci_rsl:1;
1476		uint64_t rml_wto:1;
1477		uint64_t rml_rto:1;
1478#else
1479		uint64_t rml_rto:1;
1480		uint64_t rml_wto:1;
1481		uint64_t pci_rsl:1;
1482		uint64_t po0_2sml:1;
1483		uint64_t po1_2sml:1;
1484		uint64_t reserved_5_6:2;
1485		uint64_t i0_rtout:1;
1486		uint64_t i1_rtout:1;
1487		uint64_t reserved_9_10:2;
1488		uint64_t i0_overf:1;
1489		uint64_t i1_overf:1;
1490		uint64_t reserved_13_14:2;
1491		uint64_t p0_rtout:1;
1492		uint64_t p1_rtout:1;
1493		uint64_t reserved_17_18:2;
1494		uint64_t p0_perr:1;
1495		uint64_t p1_perr:1;
1496		uint64_t reserved_21_22:2;
1497		uint64_t g0_rtout:1;
1498		uint64_t g1_rtout:1;
1499		uint64_t reserved_25_26:2;
1500		uint64_t p0_pperr:1;
1501		uint64_t p1_pperr:1;
1502		uint64_t reserved_29_30:2;
1503		uint64_t p0_ptout:1;
1504		uint64_t p1_ptout:1;
1505		uint64_t reserved_33_34:2;
1506		uint64_t i0_pperr:1;
1507		uint64_t i1_pperr:1;
1508		uint64_t reserved_37_38:2;
1509		uint64_t win_rto:1;
1510		uint64_t p_dperr:1;
1511		uint64_t iobdma:1;
1512		uint64_t fcr_s_e:1;
1513		uint64_t fcr_a_f:1;
1514		uint64_t pcr_s_e:1;
1515		uint64_t pcr_a_f:1;
1516		uint64_t q2_s_e:1;
1517		uint64_t q2_a_f:1;
1518		uint64_t q3_s_e:1;
1519		uint64_t q3_a_f:1;
1520		uint64_t com_s_e:1;
1521		uint64_t com_a_f:1;
1522		uint64_t pnc_s_e:1;
1523		uint64_t pnc_a_f:1;
1524		uint64_t rwx_s_e:1;
1525		uint64_t rdx_s_e:1;
1526		uint64_t pcf_p_e:1;
1527		uint64_t pcf_p_f:1;
1528		uint64_t pdf_p_e:1;
1529		uint64_t pdf_p_f:1;
1530		uint64_t q1_s_e:1;
1531		uint64_t q1_a_f:1;
1532		uint64_t reserved_62_63:2;
1533#endif
1534	} cn31xx;
1535	struct cvmx_npi_int_sum_s cn38xx;
1536	struct cvmx_npi_int_sum_cn38xxp2 {
1537#ifdef __BIG_ENDIAN_BITFIELD
1538		uint64_t reserved_42_63:22;
1539		uint64_t iobdma:1;
1540		uint64_t p_dperr:1;
1541		uint64_t win_rto:1;
1542		uint64_t i3_pperr:1;
1543		uint64_t i2_pperr:1;
1544		uint64_t i1_pperr:1;
1545		uint64_t i0_pperr:1;
1546		uint64_t p3_ptout:1;
1547		uint64_t p2_ptout:1;
1548		uint64_t p1_ptout:1;
1549		uint64_t p0_ptout:1;
1550		uint64_t p3_pperr:1;
1551		uint64_t p2_pperr:1;
1552		uint64_t p1_pperr:1;
1553		uint64_t p0_pperr:1;
1554		uint64_t g3_rtout:1;
1555		uint64_t g2_rtout:1;
1556		uint64_t g1_rtout:1;
1557		uint64_t g0_rtout:1;
1558		uint64_t p3_perr:1;
1559		uint64_t p2_perr:1;
1560		uint64_t p1_perr:1;
1561		uint64_t p0_perr:1;
1562		uint64_t p3_rtout:1;
1563		uint64_t p2_rtout:1;
1564		uint64_t p1_rtout:1;
1565		uint64_t p0_rtout:1;
1566		uint64_t i3_overf:1;
1567		uint64_t i2_overf:1;
1568		uint64_t i1_overf:1;
1569		uint64_t i0_overf:1;
1570		uint64_t i3_rtout:1;
1571		uint64_t i2_rtout:1;
1572		uint64_t i1_rtout:1;
1573		uint64_t i0_rtout:1;
1574		uint64_t po3_2sml:1;
1575		uint64_t po2_2sml:1;
1576		uint64_t po1_2sml:1;
1577		uint64_t po0_2sml:1;
1578		uint64_t pci_rsl:1;
1579		uint64_t rml_wto:1;
1580		uint64_t rml_rto:1;
1581#else
1582		uint64_t rml_rto:1;
1583		uint64_t rml_wto:1;
1584		uint64_t pci_rsl:1;
1585		uint64_t po0_2sml:1;
1586		uint64_t po1_2sml:1;
1587		uint64_t po2_2sml:1;
1588		uint64_t po3_2sml:1;
1589		uint64_t i0_rtout:1;
1590		uint64_t i1_rtout:1;
1591		uint64_t i2_rtout:1;
1592		uint64_t i3_rtout:1;
1593		uint64_t i0_overf:1;
1594		uint64_t i1_overf:1;
1595		uint64_t i2_overf:1;
1596		uint64_t i3_overf:1;
1597		uint64_t p0_rtout:1;
1598		uint64_t p1_rtout:1;
1599		uint64_t p2_rtout:1;
1600		uint64_t p3_rtout:1;
1601		uint64_t p0_perr:1;
1602		uint64_t p1_perr:1;
1603		uint64_t p2_perr:1;
1604		uint64_t p3_perr:1;
1605		uint64_t g0_rtout:1;
1606		uint64_t g1_rtout:1;
1607		uint64_t g2_rtout:1;
1608		uint64_t g3_rtout:1;
1609		uint64_t p0_pperr:1;
1610		uint64_t p1_pperr:1;
1611		uint64_t p2_pperr:1;
1612		uint64_t p3_pperr:1;
1613		uint64_t p0_ptout:1;
1614		uint64_t p1_ptout:1;
1615		uint64_t p2_ptout:1;
1616		uint64_t p3_ptout:1;
1617		uint64_t i0_pperr:1;
1618		uint64_t i1_pperr:1;
1619		uint64_t i2_pperr:1;
1620		uint64_t i3_pperr:1;
1621		uint64_t win_rto:1;
1622		uint64_t p_dperr:1;
1623		uint64_t iobdma:1;
1624		uint64_t reserved_42_63:22;
1625#endif
1626	} cn38xxp2;
1627	struct cvmx_npi_int_sum_cn31xx cn50xx;
1628	struct cvmx_npi_int_sum_s cn58xx;
1629	struct cvmx_npi_int_sum_s cn58xxp1;
1630};
1631
1632union cvmx_npi_lowp_dbell {
1633	uint64_t u64;
1634	struct cvmx_npi_lowp_dbell_s {
1635#ifdef __BIG_ENDIAN_BITFIELD
1636		uint64_t reserved_16_63:48;
1637		uint64_t dbell:16;
1638#else
1639		uint64_t dbell:16;
1640		uint64_t reserved_16_63:48;
1641#endif
1642	} s;
1643	struct cvmx_npi_lowp_dbell_s cn30xx;
1644	struct cvmx_npi_lowp_dbell_s cn31xx;
1645	struct cvmx_npi_lowp_dbell_s cn38xx;
1646	struct cvmx_npi_lowp_dbell_s cn38xxp2;
1647	struct cvmx_npi_lowp_dbell_s cn50xx;
1648	struct cvmx_npi_lowp_dbell_s cn58xx;
1649	struct cvmx_npi_lowp_dbell_s cn58xxp1;
1650};
1651
1652union cvmx_npi_lowp_ibuff_saddr {
1653	uint64_t u64;
1654	struct cvmx_npi_lowp_ibuff_saddr_s {
1655#ifdef __BIG_ENDIAN_BITFIELD
1656		uint64_t reserved_36_63:28;
1657		uint64_t saddr:36;
1658#else
1659		uint64_t saddr:36;
1660		uint64_t reserved_36_63:28;
1661#endif
1662	} s;
1663	struct cvmx_npi_lowp_ibuff_saddr_s cn30xx;
1664	struct cvmx_npi_lowp_ibuff_saddr_s cn31xx;
1665	struct cvmx_npi_lowp_ibuff_saddr_s cn38xx;
1666	struct cvmx_npi_lowp_ibuff_saddr_s cn38xxp2;
1667	struct cvmx_npi_lowp_ibuff_saddr_s cn50xx;
1668	struct cvmx_npi_lowp_ibuff_saddr_s cn58xx;
1669	struct cvmx_npi_lowp_ibuff_saddr_s cn58xxp1;
1670};
1671
1672union cvmx_npi_mem_access_subidx {
1673	uint64_t u64;
1674	struct cvmx_npi_mem_access_subidx_s {
1675#ifdef __BIG_ENDIAN_BITFIELD
1676		uint64_t reserved_38_63:26;
1677		uint64_t shortl:1;
1678		uint64_t nmerge:1;
1679		uint64_t esr:2;
1680		uint64_t esw:2;
1681		uint64_t nsr:1;
1682		uint64_t nsw:1;
1683		uint64_t ror:1;
1684		uint64_t row:1;
1685		uint64_t ba:28;
1686#else
1687		uint64_t ba:28;
1688		uint64_t row:1;
1689		uint64_t ror:1;
1690		uint64_t nsw:1;
1691		uint64_t nsr:1;
1692		uint64_t esw:2;
1693		uint64_t esr:2;
1694		uint64_t nmerge:1;
1695		uint64_t shortl:1;
1696		uint64_t reserved_38_63:26;
1697#endif
1698	} s;
1699	struct cvmx_npi_mem_access_subidx_s cn30xx;
1700	struct cvmx_npi_mem_access_subidx_cn31xx {
1701#ifdef __BIG_ENDIAN_BITFIELD
1702		uint64_t reserved_36_63:28;
1703		uint64_t esr:2;
1704		uint64_t esw:2;
1705		uint64_t nsr:1;
1706		uint64_t nsw:1;
1707		uint64_t ror:1;
1708		uint64_t row:1;
1709		uint64_t ba:28;
1710#else
1711		uint64_t ba:28;
1712		uint64_t row:1;
1713		uint64_t ror:1;
1714		uint64_t nsw:1;
1715		uint64_t nsr:1;
1716		uint64_t esw:2;
1717		uint64_t esr:2;
1718		uint64_t reserved_36_63:28;
1719#endif
1720	} cn31xx;
1721	struct cvmx_npi_mem_access_subidx_s cn38xx;
1722	struct cvmx_npi_mem_access_subidx_cn31xx cn38xxp2;
1723	struct cvmx_npi_mem_access_subidx_s cn50xx;
1724	struct cvmx_npi_mem_access_subidx_s cn58xx;
1725	struct cvmx_npi_mem_access_subidx_s cn58xxp1;
1726};
1727
1728union cvmx_npi_msi_rcv {
1729	uint64_t u64;
1730	struct cvmx_npi_msi_rcv_s {
1731#ifdef __BIG_ENDIAN_BITFIELD
1732		uint64_t int_vec:64;
1733#else
1734		uint64_t int_vec:64;
1735#endif
1736	} s;
1737	struct cvmx_npi_msi_rcv_s cn30xx;
1738	struct cvmx_npi_msi_rcv_s cn31xx;
1739	struct cvmx_npi_msi_rcv_s cn38xx;
1740	struct cvmx_npi_msi_rcv_s cn38xxp2;
1741	struct cvmx_npi_msi_rcv_s cn50xx;
1742	struct cvmx_npi_msi_rcv_s cn58xx;
1743	struct cvmx_npi_msi_rcv_s cn58xxp1;
1744};
1745
1746union cvmx_npi_num_desc_outputx {
1747	uint64_t u64;
1748	struct cvmx_npi_num_desc_outputx_s {
1749#ifdef __BIG_ENDIAN_BITFIELD
1750		uint64_t reserved_32_63:32;
1751		uint64_t size:32;
1752#else
1753		uint64_t size:32;
1754		uint64_t reserved_32_63:32;
1755#endif
1756	} s;
1757	struct cvmx_npi_num_desc_outputx_s cn30xx;
1758	struct cvmx_npi_num_desc_outputx_s cn31xx;
1759	struct cvmx_npi_num_desc_outputx_s cn38xx;
1760	struct cvmx_npi_num_desc_outputx_s cn38xxp2;
1761	struct cvmx_npi_num_desc_outputx_s cn50xx;
1762	struct cvmx_npi_num_desc_outputx_s cn58xx;
1763	struct cvmx_npi_num_desc_outputx_s cn58xxp1;
1764};
1765
1766union cvmx_npi_output_control {
1767	uint64_t u64;
1768	struct cvmx_npi_output_control_s {
1769#ifdef __BIG_ENDIAN_BITFIELD
1770		uint64_t reserved_49_63:15;
1771		uint64_t pkt_rr:1;
1772		uint64_t p3_bmode:1;
1773		uint64_t p2_bmode:1;
1774		uint64_t p1_bmode:1;
1775		uint64_t p0_bmode:1;
1776		uint64_t o3_es:2;
1777		uint64_t o3_ns:1;
1778		uint64_t o3_ro:1;
1779		uint64_t o2_es:2;
1780		uint64_t o2_ns:1;
1781		uint64_t o2_ro:1;
1782		uint64_t o1_es:2;
1783		uint64_t o1_ns:1;
1784		uint64_t o1_ro:1;
1785		uint64_t o0_es:2;
1786		uint64_t o0_ns:1;
1787		uint64_t o0_ro:1;
1788		uint64_t o3_csrm:1;
1789		uint64_t o2_csrm:1;
1790		uint64_t o1_csrm:1;
1791		uint64_t o0_csrm:1;
1792		uint64_t reserved_20_23:4;
1793		uint64_t iptr_o3:1;
1794		uint64_t iptr_o2:1;
1795		uint64_t iptr_o1:1;
1796		uint64_t iptr_o0:1;
1797		uint64_t esr_sl3:2;
1798		uint64_t nsr_sl3:1;
1799		uint64_t ror_sl3:1;
1800		uint64_t esr_sl2:2;
1801		uint64_t nsr_sl2:1;
1802		uint64_t ror_sl2:1;
1803		uint64_t esr_sl1:2;
1804		uint64_t nsr_sl1:1;
1805		uint64_t ror_sl1:1;
1806		uint64_t esr_sl0:2;
1807		uint64_t nsr_sl0:1;
1808		uint64_t ror_sl0:1;
1809#else
1810		uint64_t ror_sl0:1;
1811		uint64_t nsr_sl0:1;
1812		uint64_t esr_sl0:2;
1813		uint64_t ror_sl1:1;
1814		uint64_t nsr_sl1:1;
1815		uint64_t esr_sl1:2;
1816		uint64_t ror_sl2:1;
1817		uint64_t nsr_sl2:1;
1818		uint64_t esr_sl2:2;
1819		uint64_t ror_sl3:1;
1820		uint64_t nsr_sl3:1;
1821		uint64_t esr_sl3:2;
1822		uint64_t iptr_o0:1;
1823		uint64_t iptr_o1:1;
1824		uint64_t iptr_o2:1;
1825		uint64_t iptr_o3:1;
1826		uint64_t reserved_20_23:4;
1827		uint64_t o0_csrm:1;
1828		uint64_t o1_csrm:1;
1829		uint64_t o2_csrm:1;
1830		uint64_t o3_csrm:1;
1831		uint64_t o0_ro:1;
1832		uint64_t o0_ns:1;
1833		uint64_t o0_es:2;
1834		uint64_t o1_ro:1;
1835		uint64_t o1_ns:1;
1836		uint64_t o1_es:2;
1837		uint64_t o2_ro:1;
1838		uint64_t o2_ns:1;
1839		uint64_t o2_es:2;
1840		uint64_t o3_ro:1;
1841		uint64_t o3_ns:1;
1842		uint64_t o3_es:2;
1843		uint64_t p0_bmode:1;
1844		uint64_t p1_bmode:1;
1845		uint64_t p2_bmode:1;
1846		uint64_t p3_bmode:1;
1847		uint64_t pkt_rr:1;
1848		uint64_t reserved_49_63:15;
1849#endif
1850	} s;
1851	struct cvmx_npi_output_control_cn30xx {
1852#ifdef __BIG_ENDIAN_BITFIELD
1853		uint64_t reserved_45_63:19;
1854		uint64_t p0_bmode:1;
1855		uint64_t reserved_32_43:12;
1856		uint64_t o0_es:2;
1857		uint64_t o0_ns:1;
1858		uint64_t o0_ro:1;
1859		uint64_t reserved_25_27:3;
1860		uint64_t o0_csrm:1;
1861		uint64_t reserved_17_23:7;
1862		uint64_t iptr_o0:1;
1863		uint64_t reserved_4_15:12;
1864		uint64_t esr_sl0:2;
1865		uint64_t nsr_sl0:1;
1866		uint64_t ror_sl0:1;
1867#else
1868		uint64_t ror_sl0:1;
1869		uint64_t nsr_sl0:1;
1870		uint64_t esr_sl0:2;
1871		uint64_t reserved_4_15:12;
1872		uint64_t iptr_o0:1;
1873		uint64_t reserved_17_23:7;
1874		uint64_t o0_csrm:1;
1875		uint64_t reserved_25_27:3;
1876		uint64_t o0_ro:1;
1877		uint64_t o0_ns:1;
1878		uint64_t o0_es:2;
1879		uint64_t reserved_32_43:12;
1880		uint64_t p0_bmode:1;
1881		uint64_t reserved_45_63:19;
1882#endif
1883	} cn30xx;
1884	struct cvmx_npi_output_control_cn31xx {
1885#ifdef __BIG_ENDIAN_BITFIELD
1886		uint64_t reserved_46_63:18;
1887		uint64_t p1_bmode:1;
1888		uint64_t p0_bmode:1;
1889		uint64_t reserved_36_43:8;
1890		uint64_t o1_es:2;
1891		uint64_t o1_ns:1;
1892		uint64_t o1_ro:1;
1893		uint64_t o0_es:2;
1894		uint64_t o0_ns:1;
1895		uint64_t o0_ro:1;
1896		uint64_t reserved_26_27:2;
1897		uint64_t o1_csrm:1;
1898		uint64_t o0_csrm:1;
1899		uint64_t reserved_18_23:6;
1900		uint64_t iptr_o1:1;
1901		uint64_t iptr_o0:1;
1902		uint64_t reserved_8_15:8;
1903		uint64_t esr_sl1:2;
1904		uint64_t nsr_sl1:1;
1905		uint64_t ror_sl1:1;
1906		uint64_t esr_sl0:2;
1907		uint64_t nsr_sl0:1;
1908		uint64_t ror_sl0:1;
1909#else
1910		uint64_t ror_sl0:1;
1911		uint64_t nsr_sl0:1;
1912		uint64_t esr_sl0:2;
1913		uint64_t ror_sl1:1;
1914		uint64_t nsr_sl1:1;
1915		uint64_t esr_sl1:2;
1916		uint64_t reserved_8_15:8;
1917		uint64_t iptr_o0:1;
1918		uint64_t iptr_o1:1;
1919		uint64_t reserved_18_23:6;
1920		uint64_t o0_csrm:1;
1921		uint64_t o1_csrm:1;
1922		uint64_t reserved_26_27:2;
1923		uint64_t o0_ro:1;
1924		uint64_t o0_ns:1;
1925		uint64_t o0_es:2;
1926		uint64_t o1_ro:1;
1927		uint64_t o1_ns:1;
1928		uint64_t o1_es:2;
1929		uint64_t reserved_36_43:8;
1930		uint64_t p0_bmode:1;
1931		uint64_t p1_bmode:1;
1932		uint64_t reserved_46_63:18;
1933#endif
1934	} cn31xx;
1935	struct cvmx_npi_output_control_s cn38xx;
1936	struct cvmx_npi_output_control_cn38xxp2 {
1937#ifdef __BIG_ENDIAN_BITFIELD
1938		uint64_t reserved_48_63:16;
1939		uint64_t p3_bmode:1;
1940		uint64_t p2_bmode:1;
1941		uint64_t p1_bmode:1;
1942		uint64_t p0_bmode:1;
1943		uint64_t o3_es:2;
1944		uint64_t o3_ns:1;
1945		uint64_t o3_ro:1;
1946		uint64_t o2_es:2;
1947		uint64_t o2_ns:1;
1948		uint64_t o2_ro:1;
1949		uint64_t o1_es:2;
1950		uint64_t o1_ns:1;
1951		uint64_t o1_ro:1;
1952		uint64_t o0_es:2;
1953		uint64_t o0_ns:1;
1954		uint64_t o0_ro:1;
1955		uint64_t o3_csrm:1;
1956		uint64_t o2_csrm:1;
1957		uint64_t o1_csrm:1;
1958		uint64_t o0_csrm:1;
1959		uint64_t reserved_20_23:4;
1960		uint64_t iptr_o3:1;
1961		uint64_t iptr_o2:1;
1962		uint64_t iptr_o1:1;
1963		uint64_t iptr_o0:1;
1964		uint64_t esr_sl3:2;
1965		uint64_t nsr_sl3:1;
1966		uint64_t ror_sl3:1;
1967		uint64_t esr_sl2:2;
1968		uint64_t nsr_sl2:1;
1969		uint64_t ror_sl2:1;
1970		uint64_t esr_sl1:2;
1971		uint64_t nsr_sl1:1;
1972		uint64_t ror_sl1:1;
1973		uint64_t esr_sl0:2;
1974		uint64_t nsr_sl0:1;
1975		uint64_t ror_sl0:1;
1976#else
1977		uint64_t ror_sl0:1;
1978		uint64_t nsr_sl0:1;
1979		uint64_t esr_sl0:2;
1980		uint64_t ror_sl1:1;
1981		uint64_t nsr_sl1:1;
1982		uint64_t esr_sl1:2;
1983		uint64_t ror_sl2:1;
1984		uint64_t nsr_sl2:1;
1985		uint64_t esr_sl2:2;
1986		uint64_t ror_sl3:1;
1987		uint64_t nsr_sl3:1;
1988		uint64_t esr_sl3:2;
1989		uint64_t iptr_o0:1;
1990		uint64_t iptr_o1:1;
1991		uint64_t iptr_o2:1;
1992		uint64_t iptr_o3:1;
1993		uint64_t reserved_20_23:4;
1994		uint64_t o0_csrm:1;
1995		uint64_t o1_csrm:1;
1996		uint64_t o2_csrm:1;
1997		uint64_t o3_csrm:1;
1998		uint64_t o0_ro:1;
1999		uint64_t o0_ns:1;
2000		uint64_t o0_es:2;
2001		uint64_t o1_ro:1;
2002		uint64_t o1_ns:1;
2003		uint64_t o1_es:2;
2004		uint64_t o2_ro:1;
2005		uint64_t o2_ns:1;
2006		uint64_t o2_es:2;
2007		uint64_t o3_ro:1;
2008		uint64_t o3_ns:1;
2009		uint64_t o3_es:2;
2010		uint64_t p0_bmode:1;
2011		uint64_t p1_bmode:1;
2012		uint64_t p2_bmode:1;
2013		uint64_t p3_bmode:1;
2014		uint64_t reserved_48_63:16;
2015#endif
2016	} cn38xxp2;
2017	struct cvmx_npi_output_control_cn50xx {
2018#ifdef __BIG_ENDIAN_BITFIELD
2019		uint64_t reserved_49_63:15;
2020		uint64_t pkt_rr:1;
2021		uint64_t reserved_46_47:2;
2022		uint64_t p1_bmode:1;
2023		uint64_t p0_bmode:1;
2024		uint64_t reserved_36_43:8;
2025		uint64_t o1_es:2;
2026		uint64_t o1_ns:1;
2027		uint64_t o1_ro:1;
2028		uint64_t o0_es:2;
2029		uint64_t o0_ns:1;
2030		uint64_t o0_ro:1;
2031		uint64_t reserved_26_27:2;
2032		uint64_t o1_csrm:1;
2033		uint64_t o0_csrm:1;
2034		uint64_t reserved_18_23:6;
2035		uint64_t iptr_o1:1;
2036		uint64_t iptr_o0:1;
2037		uint64_t reserved_8_15:8;
2038		uint64_t esr_sl1:2;
2039		uint64_t nsr_sl1:1;
2040		uint64_t ror_sl1:1;
2041		uint64_t esr_sl0:2;
2042		uint64_t nsr_sl0:1;
2043		uint64_t ror_sl0:1;
2044#else
2045		uint64_t ror_sl0:1;
2046		uint64_t nsr_sl0:1;
2047		uint64_t esr_sl0:2;
2048		uint64_t ror_sl1:1;
2049		uint64_t nsr_sl1:1;
2050		uint64_t esr_sl1:2;
2051		uint64_t reserved_8_15:8;
2052		uint64_t iptr_o0:1;
2053		uint64_t iptr_o1:1;
2054		uint64_t reserved_18_23:6;
2055		uint64_t o0_csrm:1;
2056		uint64_t o1_csrm:1;
2057		uint64_t reserved_26_27:2;
2058		uint64_t o0_ro:1;
2059		uint64_t o0_ns:1;
2060		uint64_t o0_es:2;
2061		uint64_t o1_ro:1;
2062		uint64_t o1_ns:1;
2063		uint64_t o1_es:2;
2064		uint64_t reserved_36_43:8;
2065		uint64_t p0_bmode:1;
2066		uint64_t p1_bmode:1;
2067		uint64_t reserved_46_47:2;
2068		uint64_t pkt_rr:1;
2069		uint64_t reserved_49_63:15;
2070#endif
2071	} cn50xx;
2072	struct cvmx_npi_output_control_s cn58xx;
2073	struct cvmx_npi_output_control_s cn58xxp1;
2074};
2075
2076union cvmx_npi_px_dbpair_addr {
2077	uint64_t u64;
2078	struct cvmx_npi_px_dbpair_addr_s {
2079#ifdef __BIG_ENDIAN_BITFIELD
2080		uint64_t reserved_63_63:1;
2081		uint64_t state:2;
2082		uint64_t naddr:61;
2083#else
2084		uint64_t naddr:61;
2085		uint64_t state:2;
2086		uint64_t reserved_63_63:1;
2087#endif
2088	} s;
2089	struct cvmx_npi_px_dbpair_addr_s cn30xx;
2090	struct cvmx_npi_px_dbpair_addr_s cn31xx;
2091	struct cvmx_npi_px_dbpair_addr_s cn38xx;
2092	struct cvmx_npi_px_dbpair_addr_s cn38xxp2;
2093	struct cvmx_npi_px_dbpair_addr_s cn50xx;
2094	struct cvmx_npi_px_dbpair_addr_s cn58xx;
2095	struct cvmx_npi_px_dbpair_addr_s cn58xxp1;
2096};
2097
2098union cvmx_npi_px_instr_addr {
2099	uint64_t u64;
2100	struct cvmx_npi_px_instr_addr_s {
2101#ifdef __BIG_ENDIAN_BITFIELD
2102		uint64_t state:3;
2103		uint64_t naddr:61;
2104#else
2105		uint64_t naddr:61;
2106		uint64_t state:3;
2107#endif
2108	} s;
2109	struct cvmx_npi_px_instr_addr_s cn30xx;
2110	struct cvmx_npi_px_instr_addr_s cn31xx;
2111	struct cvmx_npi_px_instr_addr_s cn38xx;
2112	struct cvmx_npi_px_instr_addr_s cn38xxp2;
2113	struct cvmx_npi_px_instr_addr_s cn50xx;
2114	struct cvmx_npi_px_instr_addr_s cn58xx;
2115	struct cvmx_npi_px_instr_addr_s cn58xxp1;
2116};
2117
2118union cvmx_npi_px_instr_cnts {
2119	uint64_t u64;
2120	struct cvmx_npi_px_instr_cnts_s {
2121#ifdef __BIG_ENDIAN_BITFIELD
2122		uint64_t reserved_38_63:26;
2123		uint64_t fcnt:6;
2124		uint64_t avail:32;
2125#else
2126		uint64_t avail:32;
2127		uint64_t fcnt:6;
2128		uint64_t reserved_38_63:26;
2129#endif
2130	} s;
2131	struct cvmx_npi_px_instr_cnts_s cn30xx;
2132	struct cvmx_npi_px_instr_cnts_s cn31xx;
2133	struct cvmx_npi_px_instr_cnts_s cn38xx;
2134	struct cvmx_npi_px_instr_cnts_s cn38xxp2;
2135	struct cvmx_npi_px_instr_cnts_s cn50xx;
2136	struct cvmx_npi_px_instr_cnts_s cn58xx;
2137	struct cvmx_npi_px_instr_cnts_s cn58xxp1;
2138};
2139
2140union cvmx_npi_px_pair_cnts {
2141	uint64_t u64;
2142	struct cvmx_npi_px_pair_cnts_s {
2143#ifdef __BIG_ENDIAN_BITFIELD
2144		uint64_t reserved_37_63:27;
2145		uint64_t fcnt:5;
2146		uint64_t avail:32;
2147#else
2148		uint64_t avail:32;
2149		uint64_t fcnt:5;
2150		uint64_t reserved_37_63:27;
2151#endif
2152	} s;
2153	struct cvmx_npi_px_pair_cnts_s cn30xx;
2154	struct cvmx_npi_px_pair_cnts_s cn31xx;
2155	struct cvmx_npi_px_pair_cnts_s cn38xx;
2156	struct cvmx_npi_px_pair_cnts_s cn38xxp2;
2157	struct cvmx_npi_px_pair_cnts_s cn50xx;
2158	struct cvmx_npi_px_pair_cnts_s cn58xx;
2159	struct cvmx_npi_px_pair_cnts_s cn58xxp1;
2160};
2161
2162union cvmx_npi_pci_burst_size {
2163	uint64_t u64;
2164	struct cvmx_npi_pci_burst_size_s {
2165#ifdef __BIG_ENDIAN_BITFIELD
2166		uint64_t reserved_14_63:50;
2167		uint64_t wr_brst:7;
2168		uint64_t rd_brst:7;
2169#else
2170		uint64_t rd_brst:7;
2171		uint64_t wr_brst:7;
2172		uint64_t reserved_14_63:50;
2173#endif
2174	} s;
2175	struct cvmx_npi_pci_burst_size_s cn30xx;
2176	struct cvmx_npi_pci_burst_size_s cn31xx;
2177	struct cvmx_npi_pci_burst_size_s cn38xx;
2178	struct cvmx_npi_pci_burst_size_s cn38xxp2;
2179	struct cvmx_npi_pci_burst_size_s cn50xx;
2180	struct cvmx_npi_pci_burst_size_s cn58xx;
2181	struct cvmx_npi_pci_burst_size_s cn58xxp1;
2182};
2183
2184union cvmx_npi_pci_int_arb_cfg {
2185	uint64_t u64;
2186	struct cvmx_npi_pci_int_arb_cfg_s {
2187#ifdef __BIG_ENDIAN_BITFIELD
2188		uint64_t reserved_13_63:51;
2189		uint64_t hostmode:1;
2190		uint64_t pci_ovr:4;
2191		uint64_t reserved_5_7:3;
2192		uint64_t en:1;
2193		uint64_t park_mod:1;
2194		uint64_t park_dev:3;
2195#else
2196		uint64_t park_dev:3;
2197		uint64_t park_mod:1;
2198		uint64_t en:1;
2199		uint64_t reserved_5_7:3;
2200		uint64_t pci_ovr:4;
2201		uint64_t hostmode:1;
2202		uint64_t reserved_13_63:51;
2203#endif
2204	} s;
2205	struct cvmx_npi_pci_int_arb_cfg_cn30xx {
2206#ifdef __BIG_ENDIAN_BITFIELD
2207		uint64_t reserved_5_63:59;
2208		uint64_t en:1;
2209		uint64_t park_mod:1;
2210		uint64_t park_dev:3;
2211#else
2212		uint64_t park_dev:3;
2213		uint64_t park_mod:1;
2214		uint64_t en:1;
2215		uint64_t reserved_5_63:59;
2216#endif
2217	} cn30xx;
2218	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn31xx;
2219	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn38xx;
2220	struct cvmx_npi_pci_int_arb_cfg_cn30xx cn38xxp2;
2221	struct cvmx_npi_pci_int_arb_cfg_s cn50xx;
2222	struct cvmx_npi_pci_int_arb_cfg_s cn58xx;
2223	struct cvmx_npi_pci_int_arb_cfg_s cn58xxp1;
2224};
2225
2226union cvmx_npi_pci_read_cmd {
2227	uint64_t u64;
2228	struct cvmx_npi_pci_read_cmd_s {
2229#ifdef __BIG_ENDIAN_BITFIELD
2230		uint64_t reserved_11_63:53;
2231		uint64_t cmd_size:11;
2232#else
2233		uint64_t cmd_size:11;
2234		uint64_t reserved_11_63:53;
2235#endif
2236	} s;
2237	struct cvmx_npi_pci_read_cmd_s cn30xx;
2238	struct cvmx_npi_pci_read_cmd_s cn31xx;
2239	struct cvmx_npi_pci_read_cmd_s cn38xx;
2240	struct cvmx_npi_pci_read_cmd_s cn38xxp2;
2241	struct cvmx_npi_pci_read_cmd_s cn50xx;
2242	struct cvmx_npi_pci_read_cmd_s cn58xx;
2243	struct cvmx_npi_pci_read_cmd_s cn58xxp1;
2244};
2245
2246union cvmx_npi_port32_instr_hdr {
2247	uint64_t u64;
2248	struct cvmx_npi_port32_instr_hdr_s {
2249#ifdef __BIG_ENDIAN_BITFIELD
2250		uint64_t reserved_44_63:20;
2251		uint64_t pbp:1;
2252		uint64_t rsv_f:5;
2253		uint64_t rparmode:2;
2254		uint64_t rsv_e:1;
2255		uint64_t rskp_len:7;
2256		uint64_t rsv_d:6;
2257		uint64_t use_ihdr:1;
2258		uint64_t rsv_c:5;
2259		uint64_t par_mode:2;
2260		uint64_t rsv_b:1;
2261		uint64_t skp_len:7;
2262		uint64_t rsv_a:6;
2263#else
2264		uint64_t rsv_a:6;
2265		uint64_t skp_len:7;
2266		uint64_t rsv_b:1;
2267		uint64_t par_mode:2;
2268		uint64_t rsv_c:5;
2269		uint64_t use_ihdr:1;
2270		uint64_t rsv_d:6;
2271		uint64_t rskp_len:7;
2272		uint64_t rsv_e:1;
2273		uint64_t rparmode:2;
2274		uint64_t rsv_f:5;
2275		uint64_t pbp:1;
2276		uint64_t reserved_44_63:20;
2277#endif
2278	} s;
2279	struct cvmx_npi_port32_instr_hdr_s cn30xx;
2280	struct cvmx_npi_port32_instr_hdr_s cn31xx;
2281	struct cvmx_npi_port32_instr_hdr_s cn38xx;
2282	struct cvmx_npi_port32_instr_hdr_s cn38xxp2;
2283	struct cvmx_npi_port32_instr_hdr_s cn50xx;
2284	struct cvmx_npi_port32_instr_hdr_s cn58xx;
2285	struct cvmx_npi_port32_instr_hdr_s cn58xxp1;
2286};
2287
2288union cvmx_npi_port33_instr_hdr {
2289	uint64_t u64;
2290	struct cvmx_npi_port33_instr_hdr_s {
2291#ifdef __BIG_ENDIAN_BITFIELD
2292		uint64_t reserved_44_63:20;
2293		uint64_t pbp:1;
2294		uint64_t rsv_f:5;
2295		uint64_t rparmode:2;
2296		uint64_t rsv_e:1;
2297		uint64_t rskp_len:7;
2298		uint64_t rsv_d:6;
2299		uint64_t use_ihdr:1;
2300		uint64_t rsv_c:5;
2301		uint64_t par_mode:2;
2302		uint64_t rsv_b:1;
2303		uint64_t skp_len:7;
2304		uint64_t rsv_a:6;
2305#else
2306		uint64_t rsv_a:6;
2307		uint64_t skp_len:7;
2308		uint64_t rsv_b:1;
2309		uint64_t par_mode:2;
2310		uint64_t rsv_c:5;
2311		uint64_t use_ihdr:1;
2312		uint64_t rsv_d:6;
2313		uint64_t rskp_len:7;
2314		uint64_t rsv_e:1;
2315		uint64_t rparmode:2;
2316		uint64_t rsv_f:5;
2317		uint64_t pbp:1;
2318		uint64_t reserved_44_63:20;
2319#endif
2320	} s;
2321	struct cvmx_npi_port33_instr_hdr_s cn31xx;
2322	struct cvmx_npi_port33_instr_hdr_s cn38xx;
2323	struct cvmx_npi_port33_instr_hdr_s cn38xxp2;
2324	struct cvmx_npi_port33_instr_hdr_s cn50xx;
2325	struct cvmx_npi_port33_instr_hdr_s cn58xx;
2326	struct cvmx_npi_port33_instr_hdr_s cn58xxp1;
2327};
2328
2329union cvmx_npi_port34_instr_hdr {
2330	uint64_t u64;
2331	struct cvmx_npi_port34_instr_hdr_s {
2332#ifdef __BIG_ENDIAN_BITFIELD
2333		uint64_t reserved_44_63:20;
2334		uint64_t pbp:1;
2335		uint64_t rsv_f:5;
2336		uint64_t rparmode:2;
2337		uint64_t rsv_e:1;
2338		uint64_t rskp_len:7;
2339		uint64_t rsv_d:6;
2340		uint64_t use_ihdr:1;
2341		uint64_t rsv_c:5;
2342		uint64_t par_mode:2;
2343		uint64_t rsv_b:1;
2344		uint64_t skp_len:7;
2345		uint64_t rsv_a:6;
2346#else
2347		uint64_t rsv_a:6;
2348		uint64_t skp_len:7;
2349		uint64_t rsv_b:1;
2350		uint64_t par_mode:2;
2351		uint64_t rsv_c:5;
2352		uint64_t use_ihdr:1;
2353		uint64_t rsv_d:6;
2354		uint64_t rskp_len:7;
2355		uint64_t rsv_e:1;
2356		uint64_t rparmode:2;
2357		uint64_t rsv_f:5;
2358		uint64_t pbp:1;
2359		uint64_t reserved_44_63:20;
2360#endif
2361	} s;
2362	struct cvmx_npi_port34_instr_hdr_s cn38xx;
2363	struct cvmx_npi_port34_instr_hdr_s cn38xxp2;
2364	struct cvmx_npi_port34_instr_hdr_s cn58xx;
2365	struct cvmx_npi_port34_instr_hdr_s cn58xxp1;
2366};
2367
2368union cvmx_npi_port35_instr_hdr {
2369	uint64_t u64;
2370	struct cvmx_npi_port35_instr_hdr_s {
2371#ifdef __BIG_ENDIAN_BITFIELD
2372		uint64_t reserved_44_63:20;
2373		uint64_t pbp:1;
2374		uint64_t rsv_f:5;
2375		uint64_t rparmode:2;
2376		uint64_t rsv_e:1;
2377		uint64_t rskp_len:7;
2378		uint64_t rsv_d:6;
2379		uint64_t use_ihdr:1;
2380		uint64_t rsv_c:5;
2381		uint64_t par_mode:2;
2382		uint64_t rsv_b:1;
2383		uint64_t skp_len:7;
2384		uint64_t rsv_a:6;
2385#else
2386		uint64_t rsv_a:6;
2387		uint64_t skp_len:7;
2388		uint64_t rsv_b:1;
2389		uint64_t par_mode:2;
2390		uint64_t rsv_c:5;
2391		uint64_t use_ihdr:1;
2392		uint64_t rsv_d:6;
2393		uint64_t rskp_len:7;
2394		uint64_t rsv_e:1;
2395		uint64_t rparmode:2;
2396		uint64_t rsv_f:5;
2397		uint64_t pbp:1;
2398		uint64_t reserved_44_63:20;
2399#endif
2400	} s;
2401	struct cvmx_npi_port35_instr_hdr_s cn38xx;
2402	struct cvmx_npi_port35_instr_hdr_s cn38xxp2;
2403	struct cvmx_npi_port35_instr_hdr_s cn58xx;
2404	struct cvmx_npi_port35_instr_hdr_s cn58xxp1;
2405};
2406
2407union cvmx_npi_port_bp_control {
2408	uint64_t u64;
2409	struct cvmx_npi_port_bp_control_s {
2410#ifdef __BIG_ENDIAN_BITFIELD
2411		uint64_t reserved_8_63:56;
2412		uint64_t bp_on:4;
2413		uint64_t enb:4;
2414#else
2415		uint64_t enb:4;
2416		uint64_t bp_on:4;
2417		uint64_t reserved_8_63:56;
2418#endif
2419	} s;
2420	struct cvmx_npi_port_bp_control_s cn30xx;
2421	struct cvmx_npi_port_bp_control_s cn31xx;
2422	struct cvmx_npi_port_bp_control_s cn38xx;
2423	struct cvmx_npi_port_bp_control_s cn38xxp2;
2424	struct cvmx_npi_port_bp_control_s cn50xx;
2425	struct cvmx_npi_port_bp_control_s cn58xx;
2426	struct cvmx_npi_port_bp_control_s cn58xxp1;
2427};
2428
2429union cvmx_npi_rsl_int_blocks {
2430	uint64_t u64;
2431	struct cvmx_npi_rsl_int_blocks_s {
2432#ifdef __BIG_ENDIAN_BITFIELD
2433		uint64_t reserved_32_63:32;
2434		uint64_t rint_31:1;
2435		uint64_t iob:1;
2436		uint64_t reserved_28_29:2;
2437		uint64_t rint_27:1;
2438		uint64_t rint_26:1;
2439		uint64_t rint_25:1;
2440		uint64_t rint_24:1;
2441		uint64_t asx1:1;
2442		uint64_t asx0:1;
2443		uint64_t rint_21:1;
2444		uint64_t pip:1;
2445		uint64_t spx1:1;
2446		uint64_t spx0:1;
2447		uint64_t lmc:1;
2448		uint64_t l2c:1;
2449		uint64_t rint_15:1;
2450		uint64_t reserved_13_14:2;
2451		uint64_t pow:1;
2452		uint64_t tim:1;
2453		uint64_t pko:1;
2454		uint64_t ipd:1;
2455		uint64_t rint_8:1;
2456		uint64_t zip:1;
2457		uint64_t dfa:1;
2458		uint64_t fpa:1;
2459		uint64_t key:1;
2460		uint64_t npi:1;
2461		uint64_t gmx1:1;
2462		uint64_t gmx0:1;
2463		uint64_t mio:1;
2464#else
2465		uint64_t mio:1;
2466		uint64_t gmx0:1;
2467		uint64_t gmx1:1;
2468		uint64_t npi:1;
2469		uint64_t key:1;
2470		uint64_t fpa:1;
2471		uint64_t dfa:1;
2472		uint64_t zip:1;
2473		uint64_t rint_8:1;
2474		uint64_t ipd:1;
2475		uint64_t pko:1;
2476		uint64_t tim:1;
2477		uint64_t pow:1;
2478		uint64_t reserved_13_14:2;
2479		uint64_t rint_15:1;
2480		uint64_t l2c:1;
2481		uint64_t lmc:1;
2482		uint64_t spx0:1;
2483		uint64_t spx1:1;
2484		uint64_t pip:1;
2485		uint64_t rint_21:1;
2486		uint64_t asx0:1;
2487		uint64_t asx1:1;
2488		uint64_t rint_24:1;
2489		uint64_t rint_25:1;
2490		uint64_t rint_26:1;
2491		uint64_t rint_27:1;
2492		uint64_t reserved_28_29:2;
2493		uint64_t iob:1;
2494		uint64_t rint_31:1;
2495		uint64_t reserved_32_63:32;
2496#endif
2497	} s;
2498	struct cvmx_npi_rsl_int_blocks_cn30xx {
2499#ifdef __BIG_ENDIAN_BITFIELD
2500		uint64_t reserved_32_63:32;
2501		uint64_t rint_31:1;
2502		uint64_t iob:1;
2503		uint64_t rint_29:1;
2504		uint64_t rint_28:1;
2505		uint64_t rint_27:1;
2506		uint64_t rint_26:1;
2507		uint64_t rint_25:1;
2508		uint64_t rint_24:1;
2509		uint64_t asx1:1;
2510		uint64_t asx0:1;
2511		uint64_t rint_21:1;
2512		uint64_t pip:1;
2513		uint64_t spx1:1;
2514		uint64_t spx0:1;
2515		uint64_t lmc:1;
2516		uint64_t l2c:1;
2517		uint64_t rint_15:1;
2518		uint64_t rint_14:1;
2519		uint64_t usb:1;
2520		uint64_t pow:1;
2521		uint64_t tim:1;
2522		uint64_t pko:1;
2523		uint64_t ipd:1;
2524		uint64_t rint_8:1;
2525		uint64_t zip:1;
2526		uint64_t dfa:1;
2527		uint64_t fpa:1;
2528		uint64_t key:1;
2529		uint64_t npi:1;
2530		uint64_t gmx1:1;
2531		uint64_t gmx0:1;
2532		uint64_t mio:1;
2533#else
2534		uint64_t mio:1;
2535		uint64_t gmx0:1;
2536		uint64_t gmx1:1;
2537		uint64_t npi:1;
2538		uint64_t key:1;
2539		uint64_t fpa:1;
2540		uint64_t dfa:1;
2541		uint64_t zip:1;
2542		uint64_t rint_8:1;
2543		uint64_t ipd:1;
2544		uint64_t pko:1;
2545		uint64_t tim:1;
2546		uint64_t pow:1;
2547		uint64_t usb:1;
2548		uint64_t rint_14:1;
2549		uint64_t rint_15:1;
2550		uint64_t l2c:1;
2551		uint64_t lmc:1;
2552		uint64_t spx0:1;
2553		uint64_t spx1:1;
2554		uint64_t pip:1;
2555		uint64_t rint_21:1;
2556		uint64_t asx0:1;
2557		uint64_t asx1:1;
2558		uint64_t rint_24:1;
2559		uint64_t rint_25:1;
2560		uint64_t rint_26:1;
2561		uint64_t rint_27:1;
2562		uint64_t rint_28:1;
2563		uint64_t rint_29:1;
2564		uint64_t iob:1;
2565		uint64_t rint_31:1;
2566		uint64_t reserved_32_63:32;
2567#endif
2568	} cn30xx;
2569	struct cvmx_npi_rsl_int_blocks_cn30xx cn31xx;
2570	struct cvmx_npi_rsl_int_blocks_cn38xx {
2571#ifdef __BIG_ENDIAN_BITFIELD
2572		uint64_t reserved_32_63:32;
2573		uint64_t rint_31:1;
2574		uint64_t iob:1;
2575		uint64_t rint_29:1;
2576		uint64_t rint_28:1;
2577		uint64_t rint_27:1;
2578		uint64_t rint_26:1;
2579		uint64_t rint_25:1;
2580		uint64_t rint_24:1;
2581		uint64_t asx1:1;
2582		uint64_t asx0:1;
2583		uint64_t rint_21:1;
2584		uint64_t pip:1;
2585		uint64_t spx1:1;
2586		uint64_t spx0:1;
2587		uint64_t lmc:1;
2588		uint64_t l2c:1;
2589		uint64_t rint_15:1;
2590		uint64_t rint_14:1;
2591		uint64_t rint_13:1;
2592		uint64_t pow:1;
2593		uint64_t tim:1;
2594		uint64_t pko:1;
2595		uint64_t ipd:1;
2596		uint64_t rint_8:1;
2597		uint64_t zip:1;
2598		uint64_t dfa:1;
2599		uint64_t fpa:1;
2600		uint64_t key:1;
2601		uint64_t npi:1;
2602		uint64_t gmx1:1;
2603		uint64_t gmx0:1;
2604		uint64_t mio:1;
2605#else
2606		uint64_t mio:1;
2607		uint64_t gmx0:1;
2608		uint64_t gmx1:1;
2609		uint64_t npi:1;
2610		uint64_t key:1;
2611		uint64_t fpa:1;
2612		uint64_t dfa:1;
2613		uint64_t zip:1;
2614		uint64_t rint_8:1;
2615		uint64_t ipd:1;
2616		uint64_t pko:1;
2617		uint64_t tim:1;
2618		uint64_t pow:1;
2619		uint64_t rint_13:1;
2620		uint64_t rint_14:1;
2621		uint64_t rint_15:1;
2622		uint64_t l2c:1;
2623		uint64_t lmc:1;
2624		uint64_t spx0:1;
2625		uint64_t spx1:1;
2626		uint64_t pip:1;
2627		uint64_t rint_21:1;
2628		uint64_t asx0:1;
2629		uint64_t asx1:1;
2630		uint64_t rint_24:1;
2631		uint64_t rint_25:1;
2632		uint64_t rint_26:1;
2633		uint64_t rint_27:1;
2634		uint64_t rint_28:1;
2635		uint64_t rint_29:1;
2636		uint64_t iob:1;
2637		uint64_t rint_31:1;
2638		uint64_t reserved_32_63:32;
2639#endif
2640	} cn38xx;
2641	struct cvmx_npi_rsl_int_blocks_cn38xx cn38xxp2;
2642	struct cvmx_npi_rsl_int_blocks_cn50xx {
2643#ifdef __BIG_ENDIAN_BITFIELD
2644		uint64_t reserved_31_63:33;
2645		uint64_t iob:1;
2646		uint64_t lmc1:1;
2647		uint64_t agl:1;
2648		uint64_t reserved_24_27:4;
2649		uint64_t asx1:1;
2650		uint64_t asx0:1;
2651		uint64_t reserved_21_21:1;
2652		uint64_t pip:1;
2653		uint64_t spx1:1;
2654		uint64_t spx0:1;
2655		uint64_t lmc:1;
2656		uint64_t l2c:1;
2657		uint64_t reserved_15_15:1;
2658		uint64_t rad:1;
2659		uint64_t usb:1;
2660		uint64_t pow:1;
2661		uint64_t tim:1;
2662		uint64_t pko:1;
2663		uint64_t ipd:1;
2664		uint64_t reserved_8_8:1;
2665		uint64_t zip:1;
2666		uint64_t dfa:1;
2667		uint64_t fpa:1;
2668		uint64_t key:1;
2669		uint64_t npi:1;
2670		uint64_t gmx1:1;
2671		uint64_t gmx0:1;
2672		uint64_t mio:1;
2673#else
2674		uint64_t mio:1;
2675		uint64_t gmx0:1;
2676		uint64_t gmx1:1;
2677		uint64_t npi:1;
2678		uint64_t key:1;
2679		uint64_t fpa:1;
2680		uint64_t dfa:1;
2681		uint64_t zip:1;
2682		uint64_t reserved_8_8:1;
2683		uint64_t ipd:1;
2684		uint64_t pko:1;
2685		uint64_t tim:1;
2686		uint64_t pow:1;
2687		uint64_t usb:1;
2688		uint64_t rad:1;
2689		uint64_t reserved_15_15:1;
2690		uint64_t l2c:1;
2691		uint64_t lmc:1;
2692		uint64_t spx0:1;
2693		uint64_t spx1:1;
2694		uint64_t pip:1;
2695		uint64_t reserved_21_21:1;
2696		uint64_t asx0:1;
2697		uint64_t asx1:1;
2698		uint64_t reserved_24_27:4;
2699		uint64_t agl:1;
2700		uint64_t lmc1:1;
2701		uint64_t iob:1;
2702		uint64_t reserved_31_63:33;
2703#endif
2704	} cn50xx;
2705	struct cvmx_npi_rsl_int_blocks_cn38xx cn58xx;
2706	struct cvmx_npi_rsl_int_blocks_cn38xx cn58xxp1;
2707};
2708
2709union cvmx_npi_size_inputx {
2710	uint64_t u64;
2711	struct cvmx_npi_size_inputx_s {
2712#ifdef __BIG_ENDIAN_BITFIELD
2713		uint64_t reserved_32_63:32;
2714		uint64_t size:32;
2715#else
2716		uint64_t size:32;
2717		uint64_t reserved_32_63:32;
2718#endif
2719	} s;
2720	struct cvmx_npi_size_inputx_s cn30xx;
2721	struct cvmx_npi_size_inputx_s cn31xx;
2722	struct cvmx_npi_size_inputx_s cn38xx;
2723	struct cvmx_npi_size_inputx_s cn38xxp2;
2724	struct cvmx_npi_size_inputx_s cn50xx;
2725	struct cvmx_npi_size_inputx_s cn58xx;
2726	struct cvmx_npi_size_inputx_s cn58xxp1;
2727};
2728
2729union cvmx_npi_win_read_to {
2730	uint64_t u64;
2731	struct cvmx_npi_win_read_to_s {
2732#ifdef __BIG_ENDIAN_BITFIELD
2733		uint64_t reserved_32_63:32;
2734		uint64_t time:32;
2735#else
2736		uint64_t time:32;
2737		uint64_t reserved_32_63:32;
2738#endif
2739	} s;
2740	struct cvmx_npi_win_read_to_s cn30xx;
2741	struct cvmx_npi_win_read_to_s cn31xx;
2742	struct cvmx_npi_win_read_to_s cn38xx;
2743	struct cvmx_npi_win_read_to_s cn38xxp2;
2744	struct cvmx_npi_win_read_to_s cn50xx;
2745	struct cvmx_npi_win_read_to_s cn58xx;
2746	struct cvmx_npi_win_read_to_s cn58xxp1;
2747};
2748
2749#endif