1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _ASM_SGI_SN_SN0_HUBIO_H 20#define _ASM_SGI_SN_SN0_HUBIO_H 21#define IIO_WIDGET IIO_WID 22#define IIO_WIDGET_STAT IIO_WSTAT 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24#define IIO_WIDGET_CTRL IIO_WCR 25#define IIO_WIDGET_TOUT IIO_WRTO 26#define IIO_WIDGET_FLUSH IIO_WTFR 27#define IIO_PROTECT IIO_ILAPR 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29#define IIO_PROTECT_OVRRD IIO_ILAPO 30#define IIO_OUTWIDGET_ACCESS IIO_IOWA 31#define IIO_INWIDGET_ACCESS IIO_IIWA 32#define IIO_INDEV_ERR_MASK IIO_IIDEM 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34#define IIO_LLP_CSR IIO_ILCSR 35#define IIO_LLP_LOG IIO_ILLR 36#define IIO_XTALKCC_TOUT IIO_IXCC 37#define IIO_XTALKTT_TOUT IIO_IXTT 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39#define IIO_IO_ERR_CLR IIO_IECLR 40#define IIO_BTE_CRB_CNT IIO_IBCN 41#define IIO_LLP_CSR_IS_UP 0x00002000 42#define IIO_LLP_CSR_LLP_STAT_MASK 0x00003000 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44#define IIO_LLP_CSR_LLP_STAT_SHFT 12 45#define IIO_PROTECT_OVRRD_KEY 0x53474972756c6573ull 46#define IIO_BTE_STAT_0 IIO_IBLS_0 47#define IIO_BTE_SRC_0 IIO_IBSA_0 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49#define IIO_BTE_DEST_0 IIO_IBDA_0 50#define IIO_BTE_CTRL_0 IIO_IBCT_0 51#define IIO_BTE_NOTIFY_0 IIO_IBNA_0 52#define IIO_BTE_INT_0 IIO_IBIA_0 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54#define IIO_BTE_OFF_0 0 55#define IIO_BTE_OFF_1 IIO_IBLS_1 - IIO_IBLS_0 56#define BTEOFF_STAT 0 57#define BTEOFF_SRC (IIO_BTE_SRC_0 - IIO_BTE_STAT_0) 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59#define BTEOFF_DEST (IIO_BTE_DEST_0 - IIO_BTE_STAT_0) 60#define BTEOFF_CTRL (IIO_BTE_CTRL_0 - IIO_BTE_STAT_0) 61#define BTEOFF_NOTIFY (IIO_BTE_NOTIFY_0 - IIO_BTE_STAT_0) 62#define BTEOFF_INT (IIO_BTE_INT_0 - IIO_BTE_STAT_0) 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64#define IIO_BASE 0x400000 65#define IIO_BASE_BTE0 0x410000 66#define IIO_BASE_BTE1 0x420000 67#define IIO_BASE_PERF 0x430000 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69#define IIO_PERF_CNT 0x430008 70#define IO_PERF_SETS 32 71#define IIO_WID 0x400000 72#define IIO_WSTAT 0x400008 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74#define IIO_WCR 0x400020 75#define IIO_WSTAT_ECRAZY (1ULL << 32) 76#define IIO_WSTAT_TXRETRY (1ULL << 9) 77#define IIO_WSTAT_TXRETRY_MASK (0x7F) 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79#define IIO_WSTAT_TXRETRY_SHFT (16) 80#define IIO_WSTAT_TXRETRY_CNT(w) (((w) >> IIO_WSTAT_TXRETRY_SHFT) & IIO_WSTAT_TXRETRY_MASK) 81#define IIO_ILAPR 0x400100 82#define IIO_ILAPO 0x400108 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84#define IIO_IOWA 0x400110 85#define IIO_IIWA 0x400118 86#define IIO_IIDEM 0x400120 87#define IIO_ILCSR 0x400128 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89#define IIO_ILLR 0x400130 90#define IIO_IIDSR 0x400138 91#define IIO_IIBUSERR 0x1400208 92#define IIO_IIDSR_SENT_SHIFT 28 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94#define IIO_IIDSR_SENT_MASK 0x10000000 95#define IIO_IIDSR_ENB_SHIFT 24 96#define IIO_IIDSR_ENB_MASK 0x01000000 97#define IIO_IIDSR_NODE_SHIFT 8 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99#define IIO_IIDSR_NODE_MASK 0x0000ff00 100#define IIO_IIDSR_LVL_SHIFT 0 101#define IIO_IIDSR_LVL_MASK 0x0000003f 102#define IIO_IGFX_0 0x400140 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104#define IIO_IGFX_1 0x400148 105#define IIO_IGFX_W_NUM_BITS 4 106#define IIO_IGFX_W_NUM_MASK ((1<<IIO_IGFX_W_NUM_BITS)-1) 107#define IIO_IGFX_W_NUM_SHIFT 0 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109#define IIO_IGFX_N_NUM_BITS 9 110#define IIO_IGFX_N_NUM_MASK ((1<<IIO_IGFX_N_NUM_BITS)-1) 111#define IIO_IGFX_N_NUM_SHIFT 4 112#define IIO_IGFX_P_NUM_BITS 1 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114#define IIO_IGFX_P_NUM_MASK ((1<<IIO_IGFX_P_NUM_BITS)-1) 115#define IIO_IGFX_P_NUM_SHIFT 16 116#define IIO_IGFX_VLD_BITS 1 117#define IIO_IGFX_VLD_MASK ((1<<IIO_IGFX_VLD_BITS)-1) 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119#define IIO_IGFX_VLD_SHIFT 20 120#define IIO_IGFX_INIT(widget, node, cpu, valid) ( (((widget) & IIO_IGFX_W_NUM_MASK) << IIO_IGFX_W_NUM_SHIFT) | (((node) & IIO_IGFX_N_NUM_MASK) << IIO_IGFX_N_NUM_SHIFT) | (((cpu) & IIO_IGFX_P_NUM_MASK) << IIO_IGFX_P_NUM_SHIFT) | (((valid) & IIO_IGFX_VLD_MASK) << IIO_IGFX_VLD_SHIFT) ) 121#define IIO_SCRATCH_REG0 0x400150 122#define IIO_SCRATCH_REG1 0x400158 123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124#define IIO_SCRATCH_MASK 0x0000000f00f11fff 125#define IIO_SCRATCH_BIT0_0 0x0000000800000000 126#define IIO_SCRATCH_BIT0_1 0x0000000400000000 127#define IIO_SCRATCH_BIT0_2 0x0000000200000000 128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129#define IIO_SCRATCH_BIT0_3 0x0000000100000000 130#define IIO_SCRATCH_BIT0_4 0x0000000000800000 131#define IIO_SCRATCH_BIT0_5 0x0000000000400000 132#define IIO_SCRATCH_BIT0_6 0x0000000000200000 133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134#define IIO_SCRATCH_BIT0_7 0x0000000000100000 135#define IIO_SCRATCH_BIT0_8 0x0000000000010000 136#define IIO_SCRATCH_BIT0_9 0x0000000000001000 137#define IIO_SCRATCH_BIT0_R 0x0000000000000fff 138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139#define IIO_NUM_ITTES 7 140#define HUB_NUM_BIG_WINDOW IIO_NUM_ITTES - 1 141#define SWIN0_BIGWIN HUB_NUM_BIG_WINDOW 142#define ILCSR_WARM_RESET 0x100 143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144#ifndef __ASSEMBLY__ 145typedef union hubii_wid_u { 146 u64 wid_reg_value; 147 struct { 148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 u64 wid_rsvd: 32, 150 wid_rev_num: 4, 151 wid_part_num: 16, 152 wid_mfg_num: 11, 153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 wid_rsvd1: 1; 155 } wid_fields_s; 156} hubii_wid_t; 157typedef union hubii_wcr_u { 158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 u64 wcr_reg_value; 160 struct { 161 u64 wcr_rsvd: 41, 162 wcr_e_thresh: 5, 163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 wcr_dir_con: 1, 165 wcr_f_bad_pkt: 1, 166 wcr_xbar_crd: 3, 167 wcr_rsvd1: 8, 168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 wcr_tag_mode: 1, 170 wcr_widget_id: 4; 171 } wcr_fields_s; 172} hubii_wcr_t; 173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174#define iwcr_dir_con wcr_fields_s.wcr_dir_con 175typedef union hubii_wstat_u { 176 u64 reg_value; 177 struct { 178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 u64 rsvd1: 31, 180 crazy: 1, 181 rsvd2: 8, 182 llp_tx_cnt: 8, 183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 rsvd3: 6, 185 tx_max_rtry: 1, 186 rsvd4: 2, 187 xt_tail_to: 1, 188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 xt_crd_to: 1, 190 pending: 4; 191 } wstat_fields_s; 192} hubii_wstat_t; 193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194typedef union hubii_ilcsr_u { 195 u64 icsr_reg_value; 196 struct { 197 u64 icsr_rsvd: 22, 198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 icsr_max_burst: 10, 200 icsr_rsvd4: 6, 201 icsr_max_retry: 10, 202 icsr_rsvd3: 2, 203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204 icsr_lnk_stat: 2, 205 icsr_bm8: 1, 206 icsr_llp_en: 1, 207 icsr_rsvd2: 1, 208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 icsr_wrm_reset: 1, 210 icsr_rsvd1: 2, 211 icsr_null_to: 6; 212 } icsr_fields_s; 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214} hubii_ilcsr_t; 215typedef union hubii_iowa_u { 216 u64 iowa_reg_value; 217 struct { 218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219 u64 iowa_rsvd: 48, 220 iowa_wxoac: 8, 221 iowa_rsvd1: 7, 222 iowa_w0oac: 1; 223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224 } iowa_fields_s; 225} hubii_iowa_t; 226typedef union hubii_iiwa_u { 227 u64 iiwa_reg_value; 228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 struct { 230 u64 iiwa_rsvd: 48, 231 iiwa_wxiac: 8, 232 iiwa_rsvd1: 7, 233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234 iiwa_w0iac: 1; 235 } iiwa_fields_s; 236} hubii_iiwa_t; 237typedef union hubii_illr_u { 238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239 u64 illr_reg_value; 240 struct { 241 u64 illr_rsvd: 32, 242 illr_cb_cnt: 16, 243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 illr_sn_cnt: 16; 245 } illr_fields_s; 246} hubii_illr_t; 247typedef union io_perf_sel { 248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 u64 perf_sel_reg; 250 struct { 251 u64 perf_rsvd : 48, 252 perf_icct : 8, 253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254 perf_ippr1 : 4, 255 perf_ippr0 : 4; 256 } perf_sel_bits; 257} io_perf_sel_t; 258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259typedef union io_perf_cnt { 260 u64 perf_cnt; 261 struct { 262 u64 perf_rsvd1 : 32, 263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 264 perf_rsvd2 : 12, 265 perf_cnt : 20; 266 } perf_cnt_bits; 267} io_perf_cnt_t; 268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 269#endif 270#define LNK_STAT_WORKING 0x2 271#define IIO_LLP_CB_MAX 0xffff 272#define IIO_LLP_SN_MAX 0xffff 273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 274#define IIO_NUM_IPRBS (9) 275#define IIO_IOPRB_0 0x400198 276#define IIO_IOPRB_8 0x4001a0 277#define IIO_IOPRB_9 0x4001a8 278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 279#define IIO_IOPRB_A 0x4001b0 280#define IIO_IOPRB_B 0x4001b8 281#define IIO_IOPRB_C 0x4001c0 282#define IIO_IOPRB_D 0x4001c8 283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 284#define IIO_IOPRB_E 0x4001d0 285#define IIO_IOPRB_F 0x4001d8 286#define IIO_IXCC 0x4001e0 287#define IIO_IXTCC IIO_IXCC 288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 289#define IIO_IMEM 0x4001e8 290#define IIO_IXTT 0x4001f0 291#define IIO_IECLR 0x4001f8 292#define IIO_IBCN 0x400200 293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 294#define IIO_IMEM_W0ESD 0x1 295#define IIO_IMEM_B0ESD (1 << 4) 296#define IIO_IMEM_B1ESD (1 << 8) 297#define IIO_IPCA 0x400300 298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 299#define IIO_NUM_PRTES 8 300#define IIO_PRTE_0 0x400308 301#define IIO_PRTE(_x) (IIO_PRTE_0 + (8 * (_x))) 302#define IIO_WIDPRTE(x) IIO_PRTE(((x) - 8)) 303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 304#define IIO_IPDR 0x400388 305#define IIO_ICDR 0x400390 306#define IIO_IFDR 0x400398 307#define IIO_IIAP 0x4003a0 308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 309#define IIO_IMMR IIO_IIAP 310#define IIO_ICMR 0x4003a8 311#define IIO_ICCR 0x4003b0 312#define IIO_ICTO 0x4003b8 313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 314#define IIO_ICTP 0x4003c0 315#define IIO_ICMR_PC_VLD_SHFT 36 316#define IIO_ICMR_PC_VLD_MASK (0x7fffUL << IIO_ICMR_PC_VLD_SHFT) 317#define IIO_ICMR_CRB_VLD_SHFT 20 318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 319#define IIO_ICMR_CRB_VLD_MASK (0x7fffUL << IIO_ICMR_CRB_VLD_SHFT) 320#define IIO_ICMR_FC_CNT_SHFT 16 321#define IIO_ICMR_FC_CNT_MASK (0xf << IIO_ICMR_FC_CNT_SHFT) 322#define IIO_ICMR_C_CNT_SHFT 4 323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 324#define IIO_ICMR_C_CNT_MASK (0xf << IIO_ICMR_C_CNT_SHFT) 325#define IIO_ICMR_P_CNT_SHFT 0 326#define IIO_ICMR_P_CNT_MASK (0xf << IIO_ICMR_P_CNT_SHFT) 327#define IIO_ICMR_PRECISE (1UL << 52) 328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 329#define IIO_ICMR_CLR_RPPD (1UL << 13) 330#define IIO_ICMR_CLR_RQPD (1UL << 12) 331#define IIO_IPDR_PND (1 << 4) 332#define IIO_ICDR_PND (1 << 4) 333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 334#define IIO_ICCR_PENDING (0x10000) 335#define IIO_ICCR_CMD_MASK (0xFF) 336#define IIO_ICCR_CMD_SHFT (7) 337#define IIO_ICCR_CMD_NOP (0x0) 338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 339#define IIO_ICCR_CMD_WAKE (0x100) 340#define IIO_ICCR_CMD_TIMEOUT (0x200) 341#define IIO_ICCR_CMD_EJECT (0x400) 342#define IIO_ICCR_CMD_FLUSH (0x800) 343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 344#define IIO_NUM_CRBS 15 345#define IIO_NUM_NORMAL_CRBS 12 346#define IIO_NUM_PC_CRBS 4 347#define IIO_ICRB_OFFSET 8 348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 349#define IIO_ICRB_0 0x400400 350#define IIO_ICRB_A(_x) (IIO_ICRB_0 + (4 * IIO_ICRB_OFFSET * (_x))) 351#define IIO_ICRB_B(_x) (IIO_ICRB_A(_x) + 1*IIO_ICRB_OFFSET) 352#define IIO_ICRB_C(_x) (IIO_ICRB_A(_x) + 2*IIO_ICRB_OFFSET) 353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 354#define IIO_ICRB_D(_x) (IIO_ICRB_A(_x) + 3*IIO_ICRB_OFFSET) 355#ifndef __ASSEMBLY__ 356typedef union icrba_u { 357 u64 reg_value; 358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 359 struct { 360 u64 resvd: 6, 361 stall_bte0: 1, 362 stall_bte1: 1, 363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 364 error: 1, 365 ecode: 3, 366 lnetuce: 1, 367 mark: 1, 368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 369 xerr: 1, 370 sidn: 4, 371 tnum: 5, 372 addr: 38, 373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 374 valid: 1, 375 iow: 1; 376 } icrba_fields_s; 377} icrba_t; 378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 379typedef union h1_icrba_u { 380 u64 reg_value; 381 struct { 382 u64 resvd: 6, 383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 384 unused: 1, 385 error: 1, 386 ecode: 4, 387 lnetuce: 1, 388/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 389 mark: 1, 390 xerr: 1, 391 sidn: 4, 392 tnum: 5, 393/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 394 addr: 38, 395 valid: 1, 396 iow: 1; 397 } h1_icrba_fields_s; 398/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 399} h1_icrba_t; 400#define ICRBN_A_CERR_SHFT 54 401#define ICRBN_A_ERR_MASK 0x3ff 402#endif 403/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 404#define IIO_ICRB_ADDR_SHFT 2 405#define IIO_ICRB_ECODE_DERR 0 406#define IIO_ICRB_ECODE_PERR 1 407#define IIO_ICRB_ECODE_WERR 2 408/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 409#define IIO_ICRB_ECODE_AERR 3 410#define IIO_ICRB_ECODE_PWERR 4 411#define IIO_ICRB_ECODE_PRERR 5 412#define IIO_ICRB_ECODE_TOUT 6 413/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 414#define IIO_ICRB_ECODE_XTERR 7 415#ifndef __ASSEMBLY__ 416typedef union icrbb_u { 417 u64 reg_value; 418/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 419 struct { 420 u64 rsvd1: 5, 421 btenum: 1, 422 cohtrans: 1, 423/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 424 xtsize: 2, 425 srcnode: 9, 426 srcinit: 2, 427 useold: 1, 428/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 429 imsgtype: 2, 430 imsg: 8, 431 initator: 3, 432 reqtype: 5, 433/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 434 rsvd2: 7, 435 ackcnt: 11, 436 resp: 1, 437 ack: 1, 438/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 439 hold: 1, 440 wb_pend:1, 441 intvn: 1, 442 stall_ib: 1, 443/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 444 stall_intr: 1; 445 } icrbb_field_s; 446} icrbb_t; 447typedef union h1_icrbb_u { 448/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 449 u64 reg_value; 450 struct { 451 u64 rsvd1: 5, 452 btenum: 1, 453/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 454 cohtrans: 1, 455 xtsize: 2, 456 srcnode: 9, 457 srcinit: 2, 458/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 459 useold: 1, 460 imsgtype: 2, 461 imsg: 8, 462 initator: 3, 463/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 464 rsvd2: 1, 465 pcache: 1, 466 reqtype: 5, 467 stl_ib: 1, 468/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 469 stl_intr: 1, 470 stl_bte0: 1, 471 stl_bte1: 1, 472 intrvn: 1, 473/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 474 ackcnt: 11, 475 resp: 1, 476 ack: 1, 477 hold: 1, 478/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 479 wb_pend:1, 480 sleep: 1, 481 pnd_reply: 1, 482 pnd_req: 1; 483/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 484 } h1_icrbb_field_s; 485} h1_icrbb_t; 486#define b_imsgtype icrbb_field_s.imsgtype 487#define b_btenum icrbb_field_s.btenum 488/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 489#define b_cohtrans icrbb_field_s.cohtrans 490#define b_xtsize icrbb_field_s.xtsize 491#define b_srcnode icrbb_field_s.srcnode 492#define b_srcinit icrbb_field_s.srcinit 493/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 494#define b_imsgtype icrbb_field_s.imsgtype 495#define b_imsg icrbb_field_s.imsg 496#define b_initiator icrbb_field_s.initiator 497#endif 498/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 499#define IIO_ICRB_XTSIZE_DW 0 500#define IIO_ICRB_XTSIZE_32 1 501#define IIO_ICRB_XTSIZE_128 2 502#define IIO_ICRB_PROC0 0 503/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 504#define IIO_ICRB_PROC1 1 505#define IIO_ICRB_GB_REQ 2 506#define IIO_ICRB_IO_REQ 3 507#define IIO_ICRB_IMSGT_XTALK 0 508/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 509#define IIO_ICRB_IMSGT_BTE 1 510#define IIO_ICRB_IMSGT_SN0NET 2 511#define IIO_ICRB_IMSGT_CRB 3 512#define IIO_ICRB_INIT_XTALK 0 513/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 514#define IIO_ICRB_INIT_BTE0 0x1 515#define IIO_ICRB_INIT_SN0NET 0x2 516#define IIO_ICRB_INIT_CRB 0x3 517#define IIO_ICRB_INIT_BTE1 0x5 518/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 519#define IIO_ICRB_REQ_DWRD 0 520#define IIO_ICRB_REQ_QCLRD 1 521#define IIO_ICRB_REQ_BLKRD 2 522#define IIO_ICRB_REQ_RSHU 6 523/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 524#define IIO_ICRB_REQ_REXU 7 525#define IIO_ICRB_REQ_RDEX 8 526#define IIO_ICRB_REQ_WINC 9 527#define IIO_ICRB_REQ_BWINV 10 528/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 529#define IIO_ICRB_REQ_PIORD 11 530#define IIO_ICRB_REQ_PIOWR 12 531#define IIO_ICRB_REQ_PRDM 13 532#define IIO_ICRB_REQ_PWRM 14 533/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 534#define IIO_ICRB_REQ_PTPWR 15 535#define IIO_ICRB_REQ_WB 16 536#define IIO_ICRB_REQ_DEX 17 537#ifndef __ASSEMBLY__ 538/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 539typedef union icrbc_s { 540 u64 reg_value; 541 struct { 542 u64 rsvd: 6, 543/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 544 sleep: 1, 545 pricnt: 4, 546 pripsc: 4, 547 bteop: 1, 548/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 549 push_be: 34, 550 suppl: 11, 551 barrop: 1, 552 doresp: 1, 553/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 554 gbr: 1; 555 } icrbc_field_s; 556} icrbc_t; 557#define c_pricnt icrbc_field_s.pricnt 558/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 559#define c_pripsc icrbc_field_s.pripsc 560#define c_bteop icrbc_field_s.bteop 561#define c_bteaddr icrbc_field_s.push_be 562#define c_benable icrbc_field_s.push_be 563/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 564#define c_suppl icrbc_field_s.suppl 565#define c_barrop icrbc_field_s.barrop 566#define c_doresp icrbc_field_s.doresp 567#define c_gbr icrbc_field_s.gbr 568/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 569#endif 570#ifndef __ASSEMBLY__ 571typedef union icrbd_s { 572 u64 reg_value; 573/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 574 struct { 575 u64 rsvd: 38, 576 toutvld: 1, 577 ctxtvld: 1, 578/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 579 rsvd2: 1, 580 context: 15, 581 timeout: 8; 582 } icrbd_field_s; 583/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 584} icrbd_t; 585#define icrbd_toutvld icrbd_field_s.toutvld 586#define icrbd_ctxtvld icrbd_field_s.ctxtvld 587#define icrbd_context icrbd_field_s.context 588/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 589typedef union hubii_ifdr_u { 590 u64 hi_ifdr_value; 591 struct { 592 u64 ifdr_rsvd: 49, 593/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 594 ifdr_maxrp: 7, 595 ifdr_rsvd1: 1, 596 ifdr_maxrq: 7; 597 } hi_ifdr_fields; 598/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 599} hubii_ifdr_t; 600#endif 601#define IIO_IBLS_0 0x410000 602#define IIO_IBSA_0 0x410008 603/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 604#define IIO_IBDA_0 0x410010 605#define IIO_IBCT_0 0x410018 606#define IIO_IBNA_0 0x410020 607#define IIO_IBNR_0 IIO_IBNA_0 608/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 609#define IIO_IBIA_0 0x410028 610#define IIO_IBLS_1 0x420000 611#define IIO_IBSA_1 0x420008 612#define IIO_IBDA_1 0x420010 613/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 614#define IIO_IBCT_1 0x420018 615#define IIO_IBNA_1 0x420020 616#define IIO_IBNR_1 IIO_IBNA_1 617#define IIO_IBIA_1 0x420028 618/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 619#define IIO_IPCR 0x430000 620#define IIO_IPPR 0x430008 621#define IECLR_BTE1 (1 << 18) 622#define IECLR_BTE0 (1 << 17) 623/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 624#define IECLR_CRAZY (1 << 16) 625#define IECLR_PRB_F (1 << 15) 626#define IECLR_PRB_E (1 << 14) 627#define IECLR_PRB_D (1 << 13) 628/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 629#define IECLR_PRB_C (1 << 12) 630#define IECLR_PRB_B (1 << 11) 631#define IECLR_PRB_A (1 << 10) 632#define IECLR_PRB_9 (1 << 9) 633/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 634#define IECLR_PRB_8 (1 << 8) 635#define IECLR_PRB_0 (1 << 0) 636#ifndef __ASSEMBLY__ 637typedef union iprte_a { 638/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 639 u64 entry; 640 struct { 641 u64 rsvd1 : 7, 642 valid : 1, 643/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 644 rsvd2 : 1, 645 srcnode : 9, 646 initiator : 2, 647 rsvd3 : 3, 648/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 649 addr : 38, 650 rsvd4 : 3; 651 } iprte_fields; 652} iprte_a_t; 653/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 654#define iprte_valid iprte_fields.valid 655#define iprte_timeout iprte_fields.timeout 656#define iprte_srcnode iprte_fields.srcnode 657#define iprte_init iprte_fields.initiator 658/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 659#define iprte_addr iprte_fields.addr 660#endif 661#define IPRTE_ADDRSHFT 3 662#ifndef __ASSEMBLY__ 663/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 664typedef union iprb_u { 665 u64 reg_value; 666 struct { 667 u64 rsvd1: 15, 668/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 669 error: 1, 670 ovflow: 5, 671 fire_and_forget: 1, 672 mode: 2, 673/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 674 rsvd2: 2, 675 bnakctr: 14, 676 rsvd3: 2, 677 anakctr: 14, 678/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 679 xtalkctr: 8; 680 } iprb_fields_s; 681} iprb_t; 682#define iprb_regval reg_value 683/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 684#define iprb_error iprb_fields_s.error 685#define iprb_ovflow iprb_fields_s.ovflow 686#define iprb_ff iprb_fields_s.fire_and_forget 687#define iprb_mode iprb_fields_s.mode 688/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 689#define iprb_bnakctr iprb_fields_s.bnakctr 690#define iprb_anakctr iprb_fields_s.anakctr 691#define iprb_xtalkctr iprb_fields_s.xtalkctr 692#endif 693/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 694#define IPRB_MODE_NORMAL (0) 695#define IPRB_MODE_COLLECT_A (1) 696#define IPRB_MODE_SERVICE_A (2) 697#define IPRB_MODE_SERVICE_B (3) 698/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 699#ifndef __ASSEMBLY__ 700typedef union icrbp_a { 701 u64 ip_reg; 702 struct { 703/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 704 u64 error: 1, 705 ln_uce: 1, 706 ln_ae: 1, 707 ln_werr:1, 708/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 709 ln_aerr:1, 710 ln_perr:1, 711 timeout:1, 712 l_bdpkt:1, 713/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 714 c_bdpkt:1, 715 c_err: 1, 716 rsvd1: 12, 717 valid: 1, 718/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 719 sidn: 4, 720 tnum: 5, 721 bo: 1, 722 resprqd:1, 723/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 724 gbr: 1, 725 size: 2, 726 excl: 4, 727 stall: 3, 728/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 729 intvn: 1, 730 resp: 1, 731 ack: 1, 732 hold: 1, 733/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 734 wb: 1, 735 ack_cnt:11, 736 tscaler:4; 737 } ip_fmt; 738/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 739} icrbp_a_t; 740#endif 741#define ICRBP_A_CERR_SHFT 54 742#define ICRBP_A_ERR_MASK 0x3ff 743/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 744#ifndef __ASSEMBLY__ 745typedef union hubii_idsr { 746 u64 iin_reg; 747 struct { 748/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 749 u64 rsvd1 : 35, 750 isent : 1, 751 rsvd2 : 3, 752 ienable: 1, 753/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 754 rsvd : 7, 755 node : 9, 756 rsvd4 : 1, 757 level : 7; 758/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 759 } iin_fmt; 760} hubii_idsr_t; 761#endif 762#define IBLS_BUSY (0x1 << 20) 763/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 764#define IBLS_ERROR_SHFT 16 765#define IBLS_ERROR (0x1 << IBLS_ERROR_SHFT) 766#define IBLS_LENGTH_MASK 0xffff 767#define IBCT_POISON (0x1 << 8) 768/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 769#define IBCT_NOTIFY (0x1 << 4) 770#define IBCT_ZFIL_MODE (0x1 << 0) 771#define IBIA_LEVEL_SHFT 16 772#define IBIA_LEVEL_MASK (0x7f << IBIA_LEVEL_SHFT) 773/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 774#define IBIA_NODE_ID_SHFT 0 775#define IBIA_NODE_ID_MASK (0x1ff) 776#define HUB_NUM_WIDGET 9 777#define HUB_WIDGET_ID_MIN 0x8 778/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 779#define HUB_WIDGET_ID_MAX 0xf 780#define HUB_WIDGET_PART_NUM 0xc101 781#define MAX_HUBS_PER_XBOW 2 782#define IIO_WCR_WID_GET(nasid) (REMOTE_HUB_L(nasid, III_WCR) & 0xf) 783/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 784#define IIO_WST_ERROR_MASK (UINT64_CAST 1 << 32) 785#define HUBII_XBOW_CREDIT 3 786#define HUBII_XBOW_REV2_CREDIT 4 787#endif 788/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 789