Go to the documentation of this file.
9 #ifndef _ASM_IA64_SN_SHUBIO_H
10 #define _ASM_IA64_SN_SHUBIO_H
12 #define HUB_WIDGET_ID_MAX 0xf
13 #define IIO_NUM_ITTES 7
14 #define HUB_NUM_BIG_WINDOW (IIO_NUM_ITTES - 1)
16 #define IIO_WID 0x00400000
19 #define IIO_WSTAT 0x00400008
20 #define IIO_WCR 0x00400020
21 #define IIO_ILAPR 0x00400100
22 #define IIO_ILAPO 0x00400108
23 #define IIO_IOWA 0x00400110
24 #define IIO_IIWA 0x00400118
25 #define IIO_IIDEM 0x00400120
26 #define IIO_ILCSR 0x00400128
27 #define IIO_ILLR 0x00400130
28 #define IIO_IIDSR 0x00400138
30 #define IIO_IGFX0 0x00400140
31 #define IIO_IGFX1 0x00400148
33 #define IIO_ISCR0 0x00400150
34 #define IIO_ISCR1 0x00400158
36 #define IIO_ITTE1 0x00400160
37 #define IIO_ITTE2 0x00400168
38 #define IIO_ITTE3 0x00400170
39 #define IIO_ITTE4 0x00400178
40 #define IIO_ITTE5 0x00400180
41 #define IIO_ITTE6 0x00400188
42 #define IIO_ITTE7 0x00400190
44 #define IIO_IPRB0 0x00400198
45 #define IIO_IPRB8 0x004001A0
46 #define IIO_IPRB9 0x004001A8
47 #define IIO_IPRBA 0x004001B0
48 #define IIO_IPRBB 0x004001B8
49 #define IIO_IPRBC 0x004001C0
50 #define IIO_IPRBD 0x004001C8
51 #define IIO_IPRBE 0x004001D0
52 #define IIO_IPRBF 0x004001D8
54 #define IIO_IXCC 0x004001E0
55 #define IIO_IMEM 0x004001E8
56 #define IIO_IXTT 0x004001F0
57 #define IIO_IECLR 0x004001F8
58 #define IIO_IBCR 0x00400200
60 #define IIO_IXSM 0x00400208
61 #define IIO_IXSS 0x00400210
63 #define IIO_ILCT 0x00400218
65 #define IIO_IIEPH1 0x00400220
66 #define IIO_IIEPH2 0x00400228
68 #define IIO_ISLAPR 0x00400230
69 #define IIO_ISLAPO 0x00400238
71 #define IIO_IWI 0x00400240
72 #define IIO_IWEL 0x00400248
73 #define IIO_IWC 0x00400250
74 #define IIO_IWS 0x00400258
75 #define IIO_IWEIM 0x00400260
77 #define IIO_IPCA 0x00400300
79 #define IIO_IPRTE0_A 0x00400308
80 #define IIO_IPRTE1_A 0x00400310
81 #define IIO_IPRTE2_A 0x00400318
82 #define IIO_IPRTE3_A 0x00400320
83 #define IIO_IPRTE4_A 0x00400328
84 #define IIO_IPRTE5_A 0x00400330
85 #define IIO_IPRTE6_A 0x00400338
86 #define IIO_IPRTE7_A 0x00400340
88 #define IIO_IPRTE0_B 0x00400348
89 #define IIO_IPRTE1_B 0x00400350
90 #define IIO_IPRTE2_B 0x00400358
91 #define IIO_IPRTE3_B 0x00400360
92 #define IIO_IPRTE4_B 0x00400368
93 #define IIO_IPRTE5_B 0x00400370
94 #define IIO_IPRTE6_B 0x00400378
95 #define IIO_IPRTE7_B 0x00400380
97 #define IIO_IPDR 0x00400388
98 #define IIO_ICDR 0x00400390
99 #define IIO_IFDR 0x00400398
100 #define IIO_IIAP 0x004003A0
101 #define IIO_ICMR 0x004003A8
102 #define IIO_ICCR 0x004003B0
103 #define IIO_ICTO 0x004003B8
104 #define IIO_ICTP 0x004003C0
106 #define IIO_ICRB0_A 0x00400400
107 #define IIO_ICRB0_B 0x00400408
108 #define IIO_ICRB0_C 0x00400410
109 #define IIO_ICRB0_D 0x00400418
110 #define IIO_ICRB0_E 0x00400420
112 #define IIO_ICRB1_A 0x00400430
113 #define IIO_ICRB1_B 0x00400438
114 #define IIO_ICRB1_C 0x00400440
115 #define IIO_ICRB1_D 0x00400448
116 #define IIO_ICRB1_E 0x00400450
118 #define IIO_ICRB2_A 0x00400460
119 #define IIO_ICRB2_B 0x00400468
120 #define IIO_ICRB2_C 0x00400470
121 #define IIO_ICRB2_D 0x00400478
122 #define IIO_ICRB2_E 0x00400480
124 #define IIO_ICRB3_A 0x00400490
125 #define IIO_ICRB3_B 0x00400498
126 #define IIO_ICRB3_C 0x004004a0
127 #define IIO_ICRB3_D 0x004004a8
128 #define IIO_ICRB3_E 0x004004b0
130 #define IIO_ICRB4_A 0x004004c0
131 #define IIO_ICRB4_B 0x004004c8
132 #define IIO_ICRB4_C 0x004004d0
133 #define IIO_ICRB4_D 0x004004d8
134 #define IIO_ICRB4_E 0x004004e0
136 #define IIO_ICRB5_A 0x004004f0
137 #define IIO_ICRB5_B 0x004004f8
138 #define IIO_ICRB5_C 0x00400500
139 #define IIO_ICRB5_D 0x00400508
140 #define IIO_ICRB5_E 0x00400510
142 #define IIO_ICRB6_A 0x00400520
143 #define IIO_ICRB6_B 0x00400528
144 #define IIO_ICRB6_C 0x00400530
145 #define IIO_ICRB6_D 0x00400538
146 #define IIO_ICRB6_E 0x00400540
148 #define IIO_ICRB7_A 0x00400550
149 #define IIO_ICRB7_B 0x00400558
150 #define IIO_ICRB7_C 0x00400560
151 #define IIO_ICRB7_D 0x00400568
152 #define IIO_ICRB7_E 0x00400570
154 #define IIO_ICRB8_A 0x00400580
155 #define IIO_ICRB8_B 0x00400588
156 #define IIO_ICRB8_C 0x00400590
157 #define IIO_ICRB8_D 0x00400598
158 #define IIO_ICRB8_E 0x004005a0
160 #define IIO_ICRB9_A 0x004005b0
161 #define IIO_ICRB9_B 0x004005b8
162 #define IIO_ICRB9_C 0x004005c0
163 #define IIO_ICRB9_D 0x004005c8
164 #define IIO_ICRB9_E 0x004005d0
166 #define IIO_ICRBA_A 0x004005e0
167 #define IIO_ICRBA_B 0x004005e8
168 #define IIO_ICRBA_C 0x004005f0
169 #define IIO_ICRBA_D 0x004005f8
170 #define IIO_ICRBA_E 0x00400600
172 #define IIO_ICRBB_A 0x00400610
173 #define IIO_ICRBB_B 0x00400618
174 #define IIO_ICRBB_C 0x00400620
175 #define IIO_ICRBB_D 0x00400628
176 #define IIO_ICRBB_E 0x00400630
178 #define IIO_ICRBC_A 0x00400640
179 #define IIO_ICRBC_B 0x00400648
180 #define IIO_ICRBC_C 0x00400650
181 #define IIO_ICRBC_D 0x00400658
182 #define IIO_ICRBC_E 0x00400660
184 #define IIO_ICRBD_A 0x00400670
185 #define IIO_ICRBD_B 0x00400678
186 #define IIO_ICRBD_C 0x00400680
187 #define IIO_ICRBD_D 0x00400688
188 #define IIO_ICRBD_E 0x00400690
190 #define IIO_ICRBE_A 0x004006a0
191 #define IIO_ICRBE_B 0x004006a8
192 #define IIO_ICRBE_C 0x004006b0
193 #define IIO_ICRBE_D 0x004006b8
194 #define IIO_ICRBE_E 0x004006c0
196 #define IIO_ICSML 0x00400700
197 #define IIO_ICSMM 0x00400708
198 #define IIO_ICSMH 0x00400710
200 #define IIO_IDBSS 0x00400718
202 #define IIO_IBLS0 0x00410000
203 #define IIO_IBSA0 0x00410008
204 #define IIO_IBDA0 0x00410010
205 #define IIO_IBCT0 0x00410018
206 #define IIO_IBNA0 0x00410020
207 #define IIO_IBIA0 0x00410028
208 #define IIO_IBLS1 0x00420000
209 #define IIO_IBSA1 0x00420008
210 #define IIO_IBDA1 0x00420010
211 #define IIO_IBCT1 0x00420018
212 #define IIO_IBNA1 0x00420020
213 #define IIO_IBIA1 0x00420028
215 #define IIO_IPCR 0x00430000
216 #define IIO_IPPR 0x00430008
2821 #define IIO_WIDGET IIO_WID
2822 #define IIO_WIDGET_STAT IIO_WSTAT
2823 #define IIO_WIDGET_CTRL IIO_WCR
2824 #define IIO_PROTECT IIO_ILAPR
2825 #define IIO_PROTECT_OVRRD IIO_ILAPO
2826 #define IIO_OUTWIDGET_ACCESS IIO_IOWA
2827 #define IIO_INWIDGET_ACCESS IIO_IIWA
2828 #define IIO_INDEV_ERR_MASK IIO_IIDEM
2829 #define IIO_LLP_CSR IIO_ILCSR
2830 #define IIO_LLP_LOG IIO_ILLR
2831 #define IIO_XTALKCC_TOUT IIO_IXCC
2832 #define IIO_XTALKTT_TOUT IIO_IXTT
2833 #define IIO_IO_ERR_CLR IIO_IECLR
2834 #define IIO_IGFX_0 IIO_IGFX0
2835 #define IIO_IGFX_1 IIO_IGFX1
2836 #define IIO_IBCT_0 IIO_IBCT0
2837 #define IIO_IBCT_1 IIO_IBCT1
2838 #define IIO_IBLS_0 IIO_IBLS0
2839 #define IIO_IBLS_1 IIO_IBLS1
2840 #define IIO_IBSA_0 IIO_IBSA0
2841 #define IIO_IBSA_1 IIO_IBSA1
2842 #define IIO_IBDA_0 IIO_IBDA0
2843 #define IIO_IBDA_1 IIO_IBDA1
2844 #define IIO_IBNA_0 IIO_IBNA0
2845 #define IIO_IBNA_1 IIO_IBNA1
2846 #define IIO_IBIA_0 IIO_IBIA0
2847 #define IIO_IBIA_1 IIO_IBIA1
2848 #define IIO_IOPRB_0 IIO_IPRB0
2850 #define IIO_PRTE_A(_x) (IIO_IPRTE0_A + (8 * (_x)))
2851 #define IIO_PRTE_B(_x) (IIO_IPRTE0_B + (8 * (_x)))
2852 #define IIO_NUM_PRTES 8
2853 #define IIO_WIDPRTE_A(x) IIO_PRTE_A(((x) - 8))
2854 #define IIO_WIDPRTE_B(x) IIO_PRTE_B(((x) - 8))
2856 #define IIO_NUM_IPRBS 9
2858 #define IIO_LLP_CSR_IS_UP 0x00002000
2859 #define IIO_LLP_CSR_LLP_STAT_MASK 0x00003000
2860 #define IIO_LLP_CSR_LLP_STAT_SHFT 12
2862 #define IIO_LLP_CB_MAX 0xffff
2863 #define IIO_LLP_SN_MAX 0xffff
2866 #define IIO_PROTECT_OVRRD_KEY 0x53474972756c6573ull
2869 #define IIO_BTE_STAT_0 IIO_IBLS_0
2870 #define IIO_BTE_SRC_0 IIO_IBSA_0
2871 #define IIO_BTE_DEST_0 IIO_IBDA_0
2872 #define IIO_BTE_CTRL_0 IIO_IBCT_0
2873 #define IIO_BTE_NOTIFY_0 IIO_IBNA_0
2874 #define IIO_BTE_INT_0 IIO_IBIA_0
2875 #define IIO_BTE_OFF_0 0
2876 #define IIO_BTE_OFF_1 (IIO_IBLS_1 - IIO_IBLS_0)
2879 #define BTEOFF_STAT 0
2880 #define BTEOFF_SRC (IIO_BTE_SRC_0 - IIO_BTE_STAT_0)
2881 #define BTEOFF_DEST (IIO_BTE_DEST_0 - IIO_BTE_STAT_0)
2882 #define BTEOFF_CTRL (IIO_BTE_CTRL_0 - IIO_BTE_STAT_0)
2883 #define BTEOFF_NOTIFY (IIO_BTE_NOTIFY_0 - IIO_BTE_STAT_0)
2884 #define BTEOFF_INT (IIO_BTE_INT_0 - IIO_BTE_STAT_0)
2887 #define IIO_BASE_BTE0 IIO_IBLS_0
2888 #define IIO_BASE_BTE1 IIO_IBLS_1
2896 #define IIO_IOPRB(_x) (IIO_IOPRB_0 + ( ( (_x) < HUB_WIDGET_ID_MIN ? \
2898 (_x) - (HUB_WIDGET_ID_MIN-1)) << 3) )
2901 #define IIO_IGFX_W_NUM_BITS 4
2902 #define IIO_IGFX_W_NUM_MASK ((1<<IIO_IGFX_W_NUM_BITS)-1)
2903 #define IIO_IGFX_W_NUM_SHIFT 0
2904 #define IIO_IGFX_PI_NUM_BITS 1
2905 #define IIO_IGFX_PI_NUM_MASK ((1<<IIO_IGFX_PI_NUM_BITS)-1)
2906 #define IIO_IGFX_PI_NUM_SHIFT 4
2907 #define IIO_IGFX_N_NUM_BITS 8
2908 #define IIO_IGFX_N_NUM_MASK ((1<<IIO_IGFX_N_NUM_BITS)-1)
2909 #define IIO_IGFX_N_NUM_SHIFT 5
2910 #define IIO_IGFX_P_NUM_BITS 1
2911 #define IIO_IGFX_P_NUM_MASK ((1<<IIO_IGFX_P_NUM_BITS)-1)
2912 #define IIO_IGFX_P_NUM_SHIFT 16
2913 #define IIO_IGFX_INIT(widget, pi, node, cpu) (\
2914 (((widget) & IIO_IGFX_W_NUM_MASK) << IIO_IGFX_W_NUM_SHIFT) | \
2915 (((pi) & IIO_IGFX_PI_NUM_MASK)<< IIO_IGFX_PI_NUM_SHIFT)| \
2916 (((node) & IIO_IGFX_N_NUM_MASK) << IIO_IGFX_N_NUM_SHIFT) | \
2917 (((cpu) & IIO_IGFX_P_NUM_MASK) << IIO_IGFX_P_NUM_SHIFT))
2920 #define IIO_SCRATCH_REG0 IIO_ISCR0
2921 #define IIO_SCRATCH_REG1 IIO_ISCR1
2922 #define IIO_SCRATCH_MASK 0xffffffffffffffffUL
2924 #define IIO_SCRATCH_BIT0_0 0x0000000000000001UL
2925 #define IIO_SCRATCH_BIT0_1 0x0000000000000002UL
2926 #define IIO_SCRATCH_BIT0_2 0x0000000000000004UL
2927 #define IIO_SCRATCH_BIT0_3 0x0000000000000008UL
2928 #define IIO_SCRATCH_BIT0_4 0x0000000000000010UL
2929 #define IIO_SCRATCH_BIT0_5 0x0000000000000020UL
2930 #define IIO_SCRATCH_BIT0_6 0x0000000000000040UL
2931 #define IIO_SCRATCH_BIT0_7 0x0000000000000080UL
2932 #define IIO_SCRATCH_BIT0_8 0x0000000000000100UL
2933 #define IIO_SCRATCH_BIT0_9 0x0000000000000200UL
2934 #define IIO_SCRATCH_BIT0_A 0x0000000000000400UL
2936 #define IIO_SCRATCH_BIT1_0 0x0000000000000001UL
2937 #define IIO_SCRATCH_BIT1_1 0x0000000000000002UL
2939 #define IIO_NUM_ITTES 7
2944 #define IIO_IMEM_W0ESD 0x1UL
2945 #define IIO_IMEM_B0ESD (1UL << 4)
2946 #define IIO_IMEM_B1ESD (1UL << 8)
2953 #define HUB_NUM_BIG_WINDOW (IIO_NUM_ITTES - 1)
2958 #define SWIN0_BIGWIN HUB_NUM_BIG_WINDOW
2960 #define ILCSR_WARM_RESET 0x100
2967 #define IIO_NUM_CRBS 15
2968 #define IIO_NUM_PC_CRBS 4
2969 #define IIO_ICRB_OFFSET 8
2970 #define IIO_ICRB_0 IIO_ICRB0_A
2971 #define IIO_ICRB_ADDR_SHFT 2
2976 #define IIO_ICRB_A(_x) ((u64)(IIO_ICRB_0 + (6 * IIO_ICRB_OFFSET * (_x))))
2977 #define IIO_ICRB_B(_x) ((u64)((char *)IIO_ICRB_A(_x) + 1*IIO_ICRB_OFFSET))
2978 #define IIO_ICRB_C(_x) ((u64)((char *)IIO_ICRB_A(_x) + 2*IIO_ICRB_OFFSET))
2979 #define IIO_ICRB_D(_x) ((u64)((char *)IIO_ICRB_A(_x) + 3*IIO_ICRB_OFFSET))
2980 #define IIO_ICRB_E(_x) ((u64)((char *)IIO_ICRB_A(_x) + 4*IIO_ICRB_OFFSET))
2982 #define TNUM_TO_WIDGET_DEV(_tnum) (_tnum & 0x7)
2987 #define IIO_ICRB_ECODE_DERR 0
2988 #define IIO_ICRB_ECODE_PERR 1
2989 #define IIO_ICRB_ECODE_WERR 2
2991 #define IIO_ICRB_ECODE_AERR 3
2992 #define IIO_ICRB_ECODE_PWERR 4
2993 #define IIO_ICRB_ECODE_PRERR 5
2994 #define IIO_ICRB_ECODE_TOUT 6
2995 #define IIO_ICRB_ECODE_XTERR 7
3000 #define IIO_ICRB_IMSGT_XTALK 0
3001 #define IIO_ICRB_IMSGT_BTE 1
3002 #define IIO_ICRB_IMSGT_SN1NET 2
3003 #define IIO_ICRB_IMSGT_CRB 3
3008 #define IIO_ICRB_INIT_XTALK 0
3009 #define IIO_ICRB_INIT_BTE0 0x1
3010 #define IIO_ICRB_INIT_SN1NET 0x2
3011 #define IIO_ICRB_INIT_CRB 0x3
3012 #define IIO_ICRB_INIT_BTE1 0x5
3020 #define HUBII_XBOW_CREDIT 3
3021 #define HUBII_XBOW_REV2_CREDIT 4
3027 #define HUB_CREDIT 4
3032 #define IIO_PRB_MULTI_ERR (1LL << 63)
3033 #define IIO_PRB_SPUR_RD (1LL << 51)
3034 #define IIO_PRB_SPUR_WR (1LL << 50)
3035 #define IIO_PRB_RD_TO (1LL << 49)
3036 #define IIO_PRB_ERROR (1LL << 48)
3051 #define IIO_ICMR_CRB_VLD_SHFT 20
3052 #define IIO_ICMR_CRB_VLD_MASK (0x7fffUL << IIO_ICMR_CRB_VLD_SHFT)
3054 #define IIO_ICMR_FC_CNT_SHFT 16
3055 #define IIO_ICMR_FC_CNT_MASK (0xf << IIO_ICMR_FC_CNT_SHFT)
3057 #define IIO_ICMR_C_CNT_SHFT 4
3058 #define IIO_ICMR_C_CNT_MASK (0xf << IIO_ICMR_C_CNT_SHFT)
3060 #define IIO_ICMR_PRECISE (1UL << 52)
3061 #define IIO_ICMR_CLR_RPPD (1UL << 13)
3062 #define IIO_ICMR_CLR_RQPD (1UL << 12)
3068 #define IIO_IPDR_PND (1 << 4)
3073 #define IIO_ICDR_PND (1 << 4)
3078 #define IBLS_BUSY (0x1UL << 20)
3079 #define IBLS_ERROR_SHFT 16
3080 #define IBLS_ERROR (0x1UL << IBLS_ERROR_SHFT)
3081 #define IBLS_LENGTH_MASK 0xffff
3086 #define IBCT_POISON (0x1UL << 8)
3087 #define IBCT_NOTIFY (0x1UL << 4)
3088 #define IBCT_ZFIL_MODE (0x1UL << 0)
3093 #define IIEPH1_VALID (1UL << 44)
3094 #define IIEPH1_OVERRUN (1UL << 40)
3095 #define IIEPH1_ERR_TYPE_SHFT 32
3096 #define IIEPH1_ERR_TYPE_MASK 0xf
3097 #define IIEPH1_SOURCE_SHFT 20
3098 #define IIEPH1_SOURCE_MASK 11
3099 #define IIEPH1_SUPPL_SHFT 8
3100 #define IIEPH1_SUPPL_MASK 11
3101 #define IIEPH1_CMD_SHFT 0
3102 #define IIEPH1_CMD_MASK 7
3104 #define IIEPH2_TAIL (1UL << 40)
3105 #define IIEPH2_ADDRESS_SHFT 0
3106 #define IIEPH2_ADDRESS_MASK 38
3108 #define IIEPH1_ERR_SHORT_REQ 2
3109 #define IIEPH1_ERR_SHORT_REPLY 3
3110 #define IIEPH1_ERR_LONG_REQ 4
3111 #define IIEPH1_ERR_LONG_REPLY 5
3116 #define IECLR_PI1_FWD_INT (1UL << 31)
3117 #define IECLR_PI0_FWD_INT (1UL << 30)
3118 #define IECLR_SPUR_RD_HDR (1UL << 29)
3119 #define IECLR_BTE1 (1UL << 18)
3120 #define IECLR_BTE0 (1UL << 17)
3121 #define IECLR_CRAZY (1UL << 16)
3122 #define IECLR_PRB_F (1UL << 15)
3123 #define IECLR_PRB_E (1UL << 14)
3124 #define IECLR_PRB_D (1UL << 13)
3125 #define IECLR_PRB_C (1UL << 12)
3126 #define IECLR_PRB_B (1UL << 11)
3127 #define IECLR_PRB_A (1UL << 10)
3128 #define IECLR_PRB_9 (1UL << 9)
3129 #define IECLR_PRB_8 (1UL << 8)
3130 #define IECLR_PRB_0 (1UL << 0)
3135 #define IIO_ICCR_PENDING 0x10000
3136 #define IIO_ICCR_CMD_MASK 0xFF
3137 #define IIO_ICCR_CMD_SHFT 7
3138 #define IIO_ICCR_CMD_NOP 0x0
3139 #define IIO_ICCR_CMD_WAKE 0x100
3140 #define IIO_ICCR_CMD_TIMEOUT 0x200
3141 #define IIO_ICCR_CMD_EJECT 0x400
3144 #define IIO_ICCR_CMD_FLUSH 0x800
3176 #define a_sidn ii_icrb0_a_fld_s.ia_sidn
3177 #define a_tnum ii_icrb0_a_fld_s.ia_tnum
3178 #define a_addr ii_icrb0_a_fld_s.ia_addr
3179 #define a_valid ii_icrb0_a_fld_s.ia_vld
3180 #define a_iow ii_icrb0_a_fld_s.ia_iow
3181 #define a_regvalue ii_icrb0_a_regval
3184 #define b_use_old ii_icrb0_b_fld_s.ib_use_old
3185 #define b_imsgtype ii_icrb0_b_fld_s.ib_imsgtype
3186 #define b_imsg ii_icrb0_b_fld_s.ib_imsg
3187 #define b_initiator ii_icrb0_b_fld_s.ib_init
3188 #define b_exc ii_icrb0_b_fld_s.ib_exc
3189 #define b_ackcnt ii_icrb0_b_fld_s.ib_ack_cnt
3190 #define b_resp ii_icrb0_b_fld_s.ib_resp
3191 #define b_ack ii_icrb0_b_fld_s.ib_ack
3192 #define b_hold ii_icrb0_b_fld_s.ib_hold
3193 #define b_wb ii_icrb0_b_fld_s.ib_wb
3194 #define b_intvn ii_icrb0_b_fld_s.ib_intvn
3195 #define b_stall_ib ii_icrb0_b_fld_s.ib_stall_ib
3196 #define b_stall_int ii_icrb0_b_fld_s.ib_stall__intr
3197 #define b_stall_bte_0 ii_icrb0_b_fld_s.ib_stall__bte_0
3198 #define b_stall_bte_1 ii_icrb0_b_fld_s.ib_stall__bte_1
3199 #define b_error ii_icrb0_b_fld_s.ib_error
3200 #define b_ecode ii_icrb0_b_fld_s.ib_errcode
3201 #define b_lnetuce ii_icrb0_b_fld_s.ib_ln_uce
3202 #define b_mark ii_icrb0_b_fld_s.ib_mark
3203 #define b_xerr ii_icrb0_b_fld_s.ib_xt_err
3204 #define b_regvalue ii_icrb0_b_regval
3207 #define c_suppl ii_icrb0_c_fld_s.ic_suppl
3208 #define c_barrop ii_icrb0_c_fld_s.ic_bo
3209 #define c_doresp ii_icrb0_c_fld_s.ic_resprqd
3210 #define c_gbr ii_icrb0_c_fld_s.ic_gbr
3211 #define c_btenum ii_icrb0_c_fld_s.ic_bte_num
3212 #define c_cohtrans ii_icrb0_c_fld_s.ic_ct
3213 #define c_xtsize ii_icrb0_c_fld_s.ic_size
3214 #define c_source ii_icrb0_c_fld_s.ic_source
3215 #define c_regvalue ii_icrb0_c_regval
3218 #define d_sleep ii_icrb0_d_fld_s.id_sleep
3219 #define d_pricnt ii_icrb0_d_fld_s.id_pr_cnt
3220 #define d_pripsc ii_icrb0_d_fld_s.id_pr_psc
3221 #define d_bteop ii_icrb0_d_fld_s.id_bte_op
3222 #define d_bteaddr ii_icrb0_d_fld_s.id_pa_be
3223 #define d_benable ii_icrb0_d_fld_s.id_pa_be
3224 #define d_regvalue ii_icrb0_d_regval
3227 #define icrbe_ctxtvld ii_icrb0_e_fld_s.ie_cvld
3228 #define icrbe_toutvld ii_icrb0_e_fld_s.ie_tvld
3229 #define icrbe_context ii_icrb0_e_fld_s.ie_context
3230 #define icrbe_timeout ii_icrb0_e_fld_s.ie_timeout
3231 #define e_regvalue ii_icrb0_e_regval
3234 #define HUB_NUM_WIDGET 9
3235 #define HUB_WIDGET_ID_MIN 0x8
3236 #define HUB_WIDGET_ID_MAX 0xf
3238 #define HUB_WIDGET_PART_NUM 0xc120
3239 #define MAX_HUBS_PER_XBOW 2
3242 #define iprb_t ii_iprb0_u_t
3243 #define iprb_regval ii_iprb0_regval
3244 #define iprb_mult_err ii_iprb0_fld_s.i_mult_err
3245 #define iprb_spur_rd ii_iprb0_fld_s.i_spur_rd
3246 #define iprb_spur_wr ii_iprb0_fld_s.i_spur_wr
3247 #define iprb_rd_to ii_iprb0_fld_s.i_rd_to
3248 #define iprb_ovflow ii_iprb0_fld_s.i_of_cnt
3249 #define iprb_error ii_iprb0_fld_s.i_error
3250 #define iprb_ff ii_iprb0_fld_s.i_f
3251 #define iprb_mode ii_iprb0_fld_s.i_m
3252 #define iprb_bnakctr ii_iprb0_fld_s.i_nb
3253 #define iprb_anakctr ii_iprb0_fld_s.i_na
3254 #define iprb_xtalkctr ii_iprb0_fld_s.i_c
3256 #define LNK_STAT_WORKING 0x2
3258 #define IIO_WSTAT_ECRAZY (1ULL << 32)
3259 #define IIO_WSTAT_TXRETRY (1ULL << 9)
3260 #define IIO_WSTAT_TXRETRY_MASK 0x7F
3261 #define IIO_WSTAT_TXRETRY_SHFT 16
3262 #define IIO_WSTAT_TXRETRY_CNT(w) (((w) >> IIO_WSTAT_TXRETRY_SHFT) & \
3263 IIO_WSTAT_TXRETRY_MASK)
3267 #define IO_PERF_SETS 32
3270 #define IIO_IIWA_WIDGET(_w) ((u64)(1ULL << _w))
3272 #define IIO_IOWA_WIDGET(_w) ((u64)(1ULL << _w))
3278 #define IIO_IIDEM_WIDGETDEV_MASK(w, d) ((u64)(1ULL << (8 * ((w) - 8) + (d))))
3281 #define IIO_IIDSR_SENT_SHIFT 28
3282 #define IIO_IIDSR_SENT_MASK 0x30000000
3283 #define IIO_IIDSR_ENB_SHIFT 24
3284 #define IIO_IIDSR_ENB_MASK 0x01000000
3285 #define IIO_IIDSR_NODE_SHIFT 9
3286 #define IIO_IIDSR_NODE_MASK 0x000ff700
3287 #define IIO_IIDSR_PI_ID_SHIFT 8
3288 #define IIO_IIDSR_PI_ID_MASK 0x00000100
3289 #define IIO_IIDSR_LVL_SHIFT 0
3290 #define IIO_IIDSR_LVL_MASK 0x000000ff
3293 #define IXTT_RRSP_TO_SHFT 55
3294 #define IXTT_RRSP_TO_MASK (0x1FULL << IXTT_RRSP_TO_SHFT)
3295 #define IXTT_RRSP_PS_SHFT 32
3296 #define IXTT_RRSP_PS_MASK (0x7FFFFFULL << IXTT_RRSP_PS_SHFT)
3297 #define IXTT_TAIL_TO_SHFT 0
3298 #define IXTT_TAIL_TO_MASK (0x3FFFFFFULL << IXTT_TAIL_TO_SHFT)
3318 #define iwcr_dir_con wcr_fields_s.wcr_dir_con