Home | History | Annotate | Line # | Download | only in dev
octeon_pkoreg.h revision 1.1
      1 /*	$NetBSD: octeon_pkoreg.h,v 1.1 2015/04/29 08:32:01 hikaru Exp $	*/
      2 
      3 /*
      4  * Copyright (c) 2007 Internet Initiative Japan, Inc.
      5  * All rights reserved.
      6  *
      7  * Redistribution and use in source and binary forms, with or without
      8  * modification, are permitted provided that the following conditions
      9  * are met:
     10  * 1. Redistributions of source code must retain the above copyright
     11  *    notice, this list of conditions and the following disclaimer.
     12  * 2. Redistributions in binary form must reproduce the above copyright
     13  *    notice, this list of conditions and the following disclaimer in the
     14  *    documentation and/or other materials provided with the distribution.
     15  *
     16  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     17  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     19  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     20  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     21  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     22  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     23  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     24  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     25  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     26  * SUCH DAMAGE.
     27  */
     28 
     29 /*
     30  * PKO Registers
     31  */
     32 
     33 #ifndef _OCTEON_PKOREG_H_
     34 #define _OCTEON_PKOREG_H_
     35 
     36 #define	PKO_REG_FLAGS				0x0001180050000000ULL
     37 #define	PKO_REG_READ_IDX			0x0001180050000008ULL
     38 #define	PKO_REG_CMD_BUF				0x0001180050000010ULL
     39 #define	PKO_REG_GMX_PORT_MODE			0x0001180050000018ULL
     40 #define	PKO_REG_QUEUE_MODE			0x0001180050000048ULL
     41 #define	PKO_REG_BIST_RESULT			0x0001180050000050ULL
     42 #define	PKO_REG_ERROR				0x0001180050000058ULL
     43 #define	PKO_REG_INT_MASK			0x0001180050000090ULL
     44 #define	PKO_REG_DEBUG0				0x0001180050000098ULL
     45 #define	PKO_MEM_QUEUE_PTRS			0x0001180050001000ULL
     46 #define	PKO_MEM_QUEUE_QOS			0x0001180050001008ULL
     47 #define	PKO_MEM_COUNT0				0x0001180050001080ULL
     48 #define	PKO_MEM_COUNT1				0x0001180050001088ULL
     49 #define	PKO_DEBUG0				0x0001180050001100ULL
     50 #define	PKO_DEBUG1				0x0001180050001108ULL
     51 #define	PKO_DEBUG2				0x0001180050001110ULL
     52 #define	PKO_DEBUG3				0x0001180050001118ULL
     53 #define	PKO_DEBUG4				0x0001180050001120ULL
     54 #define	PKO_DEBUG5				0x0001180050001128ULL
     55 #define	PKO_DEBUG6				0x0001180050001130ULL
     56 #define	PKO_DEBUG7				0x0001180050001138ULL
     57 #define	PKO_DEBUG8				0x0001180050001140ULL
     58 #define	PKO_DEBUG9				0x0001180050001148ULL
     59 #define	PKO_DEBUG10				0x0001180050001150ULL
     60 #define	PKO_DEBUG11				0x0001180050001158ULL
     61 #define	PKO_DEBUG12				0x0001180050001160ULL
     62 #define	PKO_DEBUG13				0x0001180050001168ULL
     63 #define	PKO_DEBUG14				0x0001180050001170ULL
     64 
     65 #define PKO_BASE				0x0001180050000000ULL
     66 #define	PKO_SIZE				0x01178ULL
     67 
     68 #define PKO_REG_FLAGS_OFFSET			0x00000ULL
     69 #define PKO_REG_READ_IDX_OFFSET			0x00008ULL
     70 #define	PKO_REG_CMD_BUF_OFFSET			0x00010ULL
     71 #define	PKO_REG_GMX_PORT_MODE_OFFSET		0x00018ULL
     72 #define	PKO_REG_QUEUE_MODE_OFFSET		0x00048ULL
     73 #define	PKO_REG_BIST_RESULT_OFFSET		0x00080ULL
     74 #define	PKO_REG_ERROR_OFFSET			0x00088ULL
     75 #define	PKO_REG_INT_MASK_OFFSET			0x00090ULL
     76 #define	PKO_REG_DEBUG0_OFFSET			0x00098ULL
     77 #define	PKO_MEM_QUEUE_PTRS_OFFSET		0x01000ULL
     78 #define	PKO_MEM_QUEUE_QOS_OFFSET		0x01008ULL
     79 #define	PKO_MEM_COUNT0_OFFSET			0x01080ULL
     80 #define	PKO_MEM_COUNT1_OFFSET			0x01088ULL
     81 #define	PKO_MEM_DEBUG0_OFFSET			0x01100ULL
     82 #define	PKO_MEM_DEBUG1_OFFSET			0x01108ULL
     83 #define	PKO_MEM_DEBUG2_OFFSET			0x01110ULL
     84 #define	PKO_MEM_DEBUG3_OFFSET			0x01118ULL
     85 #define	PKO_MEM_DEBUG4_OFFSET			0x01120ULL
     86 #define	PKO_MEM_DEBUG5_OFFSET			0x01128ULL
     87 #define	PKO_MEM_DEBUG6_OFFSET			0x01130ULL
     88 #define	PKO_MEM_DEBUG7_OFFSET			0x01138ULL
     89 #define	PKO_MEM_DEBUG8_OFFSET			0x01140ULL
     90 #define	PKO_MEM_DEBUG9_OFFSET			0x01148ULL
     91 #define	PKO_MEM_DEBUG10_OFFSET			0x01150ULL
     92 #define	PKO_MEM_DEBUG11_OFFSET			0x01158ULL
     93 #define	PKO_MEM_DEBUG12_OFFSET			0x01160ULL
     94 #define	PKO_MEM_DEBUG13_OFFSET			0x01168ULL
     95 #define	PKO_MEM_DEBUG14_OFFSET			0x01170ULL
     96 
     97 /*
     98  * PKO_REG_FLAGS
     99  */
    100 #define PKO_REG_FLAGS_63_7		UINT64_C(0xfffffffffffffff0)
    101 #define PKO_REG_FLAGS_RESET		UINT64_C(0x0000000000000008)
    102 #define PKO_REG_FLAGS_STORE_BE		UINT64_C(0x0000000000000004)
    103 #define PKO_REG_FLAGS_ENA_DWB		UINT64_C(0x0000000000000002)
    104 #define PKO_REG_FLAGS_ENA_PKO		UINT64_C(0x0000000000000001)
    105 
    106 /*
    107  * PKO_REG_READ_IDX
    108  */
    109 #define PKO_REG_READ_IDX_63_16		UINT64_C(0xffffffffffff0000)
    110 #define PKO_REG_READ_IDX_INC		UINT64_C(0x000000000000ff00)
    111 #define PKO_REG_READ_IDX_IDX		UINT64_C(0x00000000000000ff)
    112 
    113 /*
    114  * PKO_REG_CMD_BUF
    115  */
    116 #define PKO_REG_CMD_BUF_63_23		UINT64_C(0xffffffffff800000)
    117 #define PKO_REG_CMD_BUF_POOL		UINT64_C(0x0000000000700000)
    118 #define PKO_REG_CMD_BUF_19_13		UINT64_C(0x00000000000fe000)
    119 #define PKO_REG_CMD_BUF_SIZE		UINT64_C(0x0000000000001fff)
    120 
    121 /*
    122  * PKO_REG_GMX_PORT_MODE
    123  */
    124 #define PKO_REG_GMX_PORT_MODE_63_6	UINT64_C(0xffffffffffffffc0)
    125 #define PKO_REG_GMX_PORT_MODE_MODE1	UINT64_C(0x0000000000000038)
    126 #define PKO_REG_GMX_PORT_MODE_MODE0	UINT64_C(0x0000000000000007)
    127 
    128 /*
    129  * PKO_REG_QUEUE_MODE
    130  */
    131 #define PKO_REG_QUEUE_MODE_63_6		UINT64_C(0xfffffffffffffffc)
    132 #define PKO_REG_QUEUE_MODE_MODE		UINT64_C(0x000000000000000e)
    133 
    134 /*
    135  * PKO_REG_BIST_RESULT
    136  */
    137 #define PKO_REG_BIST_RESULT_63_27	UINT64_C(0xfffffffff8000000)
    138 #define PKO_REG_BIST_RESULT_PSB2	UINT64_C(0x0000000007c00000)
    139 #define PKO_REG_BIST_RESULT_COUNT	UINT64_C(0x0000000000200000)
    140 #define PKO_REG_BIST_RESULT_RIF		UINT64_C(0x0000000000100000)
    141 #define PKO_REG_BIST_RESULT_WIF		UINT64_C(0x0000000000080000)
    142 #define PKO_REG_BIST_RESULT_NCB		UINT64_C(0x0000000000040000)
    143 #define PKO_REG_BIST_RESULT_OUT		UINT64_C(0x0000000000020000)
    144 #define PKO_REG_BIST_RESULT_CRC		UINT64_C(0x0000000000010000)
    145 #define PKO_REG_BIST_RESULT_CHK		UINT64_C(0x0000000000008000)
    146 #define PKO_REG_BIST_RESULT_QSB		UINT64_C(0x0000000000006000)
    147 #define PKO_REG_BIST_RESULT_QCB		UINT64_C(0x0000000000001800)
    148 #define PKO_REG_BIST_RESULT_PDB		UINT64_C(0x0000000000000780)
    149 #define PKO_REG_BIST_RESULT_PSB		UINT64_C(0x000000000000007f)
    150 
    151 /*
    152  * PKO_REG_ERROR
    153  */
    154 #define PKO_REG_ERROR_63_2		UINT64_C(0xfffffffffffffffc)
    155 #define PKO_REG_ERROR_DOORBELL		UINT64_C(0x0000000000000002)
    156 #define PKO_REG_ERROR_PARITY		UINT64_C(0x0000000000000001)
    157 
    158 /*
    159  * PKO_REG_INT_MASK
    160  */
    161 #define PKO_REG_INT_MASK_63_2		UINT64_C(0xfffffffffffffffc)
    162 #define PKO_REG_INT_MASK_DOORBELL	UINT64_C(0x0000000000000002)
    163 #define PKO_REG_INT_MASK_PARITY		UINT64_C(0x0000000000000001)
    164 
    165 /*
    166  * PKO_REG_DEBUG0
    167  */
    168 #define PKO_REG_DEBUG0_63_17		UINT64_C(0xfffffffffffe0000)
    169 #define PKO_REG_DEBUG0_ASSERTS		UINT64_C(0x000000000001ffff)
    170 
    171 /*
    172  * PKO_MEM_QUEUE_PTRS
    173  */
    174 #define PKO_MEM_QUEUE_PTRS_S_TAIL	UINT64_C(0x8000000000000000)
    175 #define PKO_MEM_QUEUE_PTRS_STATIC_P	UINT64_C(0x4000000000000000)
    176 #define PKO_MEM_QUEUE_PTRS_STATIC_Q	UINT64_C(0x2000000000000000)
    177 #define PKO_MEM_QUEUE_PTRS_QOS_MASK	UINT64_C(0x1fe0000000000000)
    178 #define PKO_MEM_QUEUE_PTRS_BUF_PTR	UINT64_C(0x001ffffffffe0000)
    179 #define PKO_MEM_QUEUE_PTRS_TAIL		UINT64_C(0x0000000000010000)
    180 #define PKO_MEM_QUEUE_PTRS_IDX		UINT64_C(0x000000000000e000)
    181 #define PKO_MEM_QUEUE_PTRS_PID		UINT64_C(0x0000000000001f80)
    182 #define PKO_MEM_QUEUE_PTRS_QID		UINT64_C(0x000000000000007f)
    183 
    184 /*
    185  * PKO_MEM_QUEUE_QOS
    186  */
    187 #define PKO_MEM_QUEUE_QOS_63_61		UINT64_C(0xe000000000000000)
    188 #define PKO_MEM_QUEUE_QOS_QOS_MASK	UINT64_C(0x1fe0000000000000)
    189 #define PKO_MEM_QUEUE_QOS_52_13		UINT64_C(0x001fffffffffe000)
    190 #define PKO_MEM_QUEUE_QOS_PID		UINT64_C(0x0000000000001f80)
    191 #define PKO_MEM_QUEUE_QOS_QID		UINT64_C(0x000000000000007f)
    192 
    193 /*
    194  * PKO_MEM_COUNT0
    195  */
    196 #define PKO_MEM_COUNT0_63_32		UINT64_C(0xffffffff00000000)
    197 #define PKO_MEM_COUNT0_COUNT		UINT64_C(0x00000000ffffffff)
    198 
    199 /*
    200  * PKO_MEM_COUNT1
    201  */
    202 #define PKO_MEM_COUNT1_63_48		UINT64_C(0xffff000000000000)
    203 #define PKO_MEM_COUNT1_COUNT		UINT64_C(0x0000ffffffffffff)
    204 
    205 /*
    206  * PKO_MEM_DEBUG0
    207  */
    208 #define PKO_MEM_DEBUG0_FAU		UINT64_C(0xfffffff000000000)
    209 #define PKO_MEM_DEBUG0_CMD		UINT64_C(0x0000000fffc00000)
    210 #define PKO_MEM_DEBUG0_SEGS		UINT64_C(0x00000000003f0000)
    211 #define PKO_MEM_DEBUG0_SIZE		UINT64_C(0x000000000000ffff)
    212 
    213 /*
    214  * PKO_MEM_DEBUG1
    215  */
    216 #define PKO_MEM_DEBUG1_I		UINT64_C(0x8000000000000000)
    217 #define PKO_MEM_DEBUG1_BACK		UINT64_C(0x7800000000000000)
    218 #define PKO_MEM_DEBUG1_POOL		UINT64_C(0x0700000000000000)
    219 #define PKO_MEM_DEBUG1_SIZE		UINT64_C(0x00ffff0000000000)
    220 #define PKO_MEM_DEBUG1_PTR		UINT64_C(0x000000ffffffffff)
    221 
    222 /*
    223  * PKO_MEM_DEBUG2
    224  */
    225 #define PKO_MEM_DEBUG2_I		UINT64_C(0x8000000000000000)
    226 #define PKO_MEM_DEBUG2_BACK		UINT64_C(0x7800000000000000)
    227 #define PKO_MEM_DEBUG2_POOL		UINT64_C(0x0700000000000000)
    228 #define PKO_MEM_DEBUG2_SIZE		UINT64_C(0x00ffff0000000000)
    229 #define PKO_MEM_DEBUG2_PTR		UINT64_C(0x000000ffffffffff)
    230 
    231 /*
    232  * PKO_MEM_DEBUG3
    233  */
    234 #define PKO_MEM_DEBUG3_I		UINT64_C(0x8000000000000000)
    235 #define PKO_MEM_DEBUG3_BACK		UINT64_C(0x7800000000000000)
    236 #define PKO_MEM_DEBUG3_POOL		UINT64_C(0x0700000000000000)
    237 #define PKO_MEM_DEBUG3_SIZE		UINT64_C(0x00ffff0000000000)
    238 #define PKO_MEM_DEBUG3_PTR		UINT64_C(0x000000ffffffffff)
    239 
    240 /*
    241  * PKO_MEM_DEBUG4
    242  */
    243 #define PKO_MEM_DEBUG4_DATA		UINT64_C(0xffffffffffffffff)
    244 
    245 /*
    246  * PKO_MEM_DEBUG5
    247  */
    248 #define PKO_MEM_DEBUG5_DWRI_MOD			UINT64_C(0x8000000000000000)
    249 #define PKO_MEM_DEBUG5_DWRI_SOP			UINT64_C(0x4000000000000000)
    250 #define PKO_MEM_DEBUG5_DWRI_LEN			UINT64_C(0x2000000000000000)
    251 #define PKO_MEM_DEBUG5_DWRI_CNT			UINT64_C(0x1fff000000000000)
    252 #define PKO_MEM_DEBUG5_CMND_SIZ			UINT64_C(0x0000ffff00000000)
    253 #define PKO_MEM_DEBUG5_UID			UINT64_C(0x0000000080000000)
    254 #define PKO_MEM_DEBUG5_XFER_WOR			UINT64_C(0x0000000040000000)
    255 #define PKO_MEM_DEBUG5_XFER_DWR			UINT64_C(0x0000000020000000)
    256 #define PKO_MEM_DEBUG5_CBUF_FRE			UINT64_C(0x0000000010000000)
    257 #define PKO_MEM_DEBUG5_27			UINT64_C(0x0000000008000000)
    258 #define PKO_MEM_DEBUG5_CHK_MODE			UINT64_C(0x0000000004000000)
    259 #define PKO_MEM_DEBUG5_ACTIVE			UINT64_C(0x0000000002000000)
    260 #define PKO_MEM_DEBUG5_QOS			UINT64_C(0x0000000001c00000)
    261 #define PKO_MEM_DEBUG5_QCB_RIDX			UINT64_C(0x00000000003e0000)
    262 #define PKO_MEM_DEBUG5_QID_OFF			UINT64_C(0x000000000001c000)
    263 #define PKO_MEM_DEBUG5_QID_BASE			UINT64_C(0x0000000000003f80)
    264 #define PKO_MEM_DEBUG5_WAIT			UINT64_C(0x0000000000000040)
    265 #define PKO_MEM_DEBUG5_MINOR			UINT64_C(0x0000000000000030)
    266 #define PKO_MEM_DEBUG5_MAJOR			UINT64_C(0x000000000000000f)
    267 
    268 /*
    269  * PKO_MEM_DEBUG6
    270  */
    271 #define PKO_MEM_DEBUG6_63_11		UINT64_C(0xfffffffffffff800)
    272 #define PKO_MEM_DEBUG6_QID_OFFM		UINT64_C(0x0000000000000700)
    273 #define PKO_MEM_DEBUG6_STATIC_P		UINT64_C(0x0000000000000080)
    274 #define PKO_MEM_DEBUG6_WORK_MIN		UINT64_C(0x0000000000000070)
    275 #define PKO_MEM_DEBUG6_DWRI_CHK		UINT64_C(0x0000000000000008)
    276 #define PKO_MEM_DEBUG6_DWRI_UID		UINT64_C(0x0000000000000004)
    277 #define PKO_MEM_DEBUG6_DWRI_MOD		UINT64_C(0x0000000000000003)
    278 
    279 /*
    280  * PKO_MEM_DEBUG7
    281  */
    282 #define PKO_MEM_DEBUG7_63_58		UINT64_C(0xfc00000000000000)
    283 #define PKO_MEM_DEBUG7_DWB		UINT64_C(0x03fe000000000000)
    284 #define PKO_MEM_DEBUG7_START		UINT64_C(0x0001ffffffff0000)
    285 #define PKO_MEM_DEBUG7_SIZE		UINT64_C(0x000000000000ffff)
    286 
    287 /*
    288  * PKO_MEM_DEBUG8
    289  */
    290 #define PKO_MEM_DEBUG8_QOS		UINT64_C(0xf800000000000000)
    291 #define PKO_MEM_DEBUG8_TAIL		UINT64_C(0x0400000000000000)
    292 #define PKO_MEM_DEBUG8_BUF_SIZ		UINT64_C(0x03ffe00000000000)
    293 #define PKO_MEM_DEBUG8_BUF_PTR		UINT64_C(0x00001ffffffff000)
    294 #define PKO_MEM_DEBUG8_QCB_WIDX		UINT64_C(0x0000000000000fc0)
    295 #define PKO_MEM_DEBUG8_QCB_RIDX		UINT64_C(0x000000000000003f)
    296 
    297 /*
    298  * PKO_MEM_DEBUG9
    299  */
    300 #define PKO_MEM_DEBUG9_63_28		UINT64_C(0xfffffffff0000000)
    301 #define PKO_MEM_DEBUG9_DOORBELL		UINT64_C(0x000000000fffff00)
    302 #define PKO_MEM_DEBUG9_7_5		UINT64_C(0x00000000000000e0)
    303 #define PKO_MEM_DEBUG9_S_TAIL		UINT64_C(0x0000000000000010)
    304 #define PKO_MEM_DEBUG9_STATIC_Q		UINT64_C(0x0000000000000008)
    305 #define PKO_MEM_DEBUG9_QOOS		UINT64_C(0x0000000000000007)
    306 
    307 /*
    308  * PKO_MEM_DEBUG10
    309  */
    310 #define PKO_MEM_DEBUG10_FAU		UINT64_C(0xfffffff000000000)
    311 #define PKO_MEM_DEBUG10_CMD		UINT64_C(0x0000000fffc00000)
    312 #define PKO_MEM_DEBUG10_SEGS		UINT64_C(0x00000000003f0000)
    313 #define PKO_MEM_DEBUG10_SIZE		UINT64_C(0x000000000000ffff)
    314 
    315 /*
    316  * PKO_MEM_DEBUG11
    317  */
    318 #define PKO_MEM_DEBUG11_I		UINT64_C(0x8000000000000000)
    319 #define PKO_MEM_DEBUG11_BACK		UINT64_C(0x7800000000000000)
    320 #define PKO_MEM_DEBUG11_POOL		UINT64_C(0x0700000000000000)
    321 #define PKO_MEM_DEBUG11_SIZE		UINT64_C(0x00ffff0000000000)
    322 #define PKO_MEM_DEBUG11_PTR		UINT64_C(0x000000ffffffffff)
    323 
    324 /*
    325  * PKO_MEM_DEBUG12
    326  */
    327 #define PKO_MEM_DEBUG12_DATA		UINT64_C(0xffffffffffffffff)
    328 
    329 /*
    330  * PKO_MEM_DEBUG13
    331  */
    332 #define PKO_MEM_DEBUG13_63_51		UINT64_C(0xfff8000000000000)
    333 #define PKO_MEM_DEBUG13_WIDX		UINT64_C(0x0007fffc00000000)
    334 #define PKO_MEM_DEBUG13_RIDX2		UINT64_C(0x00000003fffe0000)
    335 #define PKO_MEM_DEBUG13_WIDX2		UINT64_C(0x000000000001ffff)
    336 
    337 /*
    338  * PKO_MEM_DEBUG14
    339  */
    340 #define PKO_MEM_DEBUG13_63_17		UINT64_C(0xfffffffffffe0000)
    341 #define PKO_MEM_DEBUG13_RIDX		UINT64_C(0x000000000001ffff)
    342 
    343 /*
    344  * PKO_CMD_WORD0
    345  */
    346 #define PKO_CMD_WORD0_SZ1		UINT64_C(0xc000000000000000)
    347 #define PKO_CMD_WORD0_SZ0		UINT64_C(0x3000000000000000)
    348 #define PKO_CMD_WORD0_S1		UINT64_C(0x0800000000000000)
    349 #define PKO_CMD_WORD0_REG1		UINT64_C(0x07ff000000000000)
    350 #define PKO_CMD_WORD0_S0		UINT64_C(0x0000800000000000)
    351 #define PKO_CMD_WORD0_REG0		UINT64_C(0x00007ff000000000)
    352 #define PKO_CMD_WORD0_LE		UINT64_C(0x0000000800000000)
    353 #define PKO_CMD_WORD0_N2		UINT64_C(0x0000000400000000)
    354 #define PKO_CMD_WORD0_Q			UINT64_C(0x0000000200000000)
    355 #define PKO_CMD_WORD0_R			UINT64_C(0x0000000100000000)
    356 #define PKO_CMD_WORD0_G			UINT64_C(0x0000000080000000)
    357 #define PKO_CMD_WORD0_IPOFFP1		UINT64_C(0x000000007f000000)
    358 #define PKO_CMD_WORD0_II		UINT64_C(0x0000000000800000)
    359 #define PKO_CMD_WORD0_DF		UINT64_C(0x0000000000400000)
    360 #define PKO_CMD_WORD0_SEGS		UINT64_C(0x00000000003f0000)
    361 #define PKO_CMD_WORD0_TOTALBYTES	UINT64_C(0x000000000000ffff)
    362 
    363 /*
    364  * PKO_CMD_WORD1
    365  */
    366 #define PKO_CMD_WORD1_I			UINT64_C(0x8000000000000000)
    367 #define PKO_CMD_WORD1_BACK		UINT64_C(0x7800000000000000)
    368 #define PKO_CMD_WORD1_POOL		UINT64_C(0x0700000000000000)
    369 #define PKO_CMD_WORD1_SIZE		UINT64_C(0x00ffff0000000000)
    370 #define PKO_CMD_WORD1_ADDR		UINT64_C(0x000000ffffffffff)
    371 
    372 /*
    373  * PKO_CMD_WORD2
    374  */
    375 #define PKO_CMD_WORD2_63_36		UINT64_C(0xfffffff000000000)
    376 #define PKO_CMD_WORD2_PTR		UINT64_C(0x0000000fffffffff)
    377 
    378 /*
    379  *  DOORBELL_WRITE
    380  */
    381 #define PKO_DOORBELL_WRITE_IO_BIT	UINT64_C(0x0001000000000000)
    382 #define PKO_DOORBELL_WRITE_MAJOR_DID	UINT64_C(0x0000f80000000000)
    383 #define PKO_DOORBELL_WRITE_SUB_DID	UINT64_C(0x0000070000000000)
    384 #define PKO_DOORBELL_WRITE_39_16	UINT64_C(0x000000ffffff0000)
    385 #define PKO_DOORBELL_WRITE_PID		UINT64_C(0x000000000003f000)
    386 #define PKO_DOORBELL_WRITE_QID		UINT64_C(0x0000000000000ff8)
    387 #define PKO_DOORBELL_WRITE_2_0		UINT64_C(0x0000000000000007)
    388 
    389 #define PKO_DOORBELL_WRITE_WDC		UINT64_C(0x00000000000fffff)
    390 
    391 /* ---- operations */
    392 
    393 #define	CN30XXPKO_MAJORDID	0x0a
    394 #define	CN30XXPKO_SUBDID	0x02
    395 
    396 #endif /* _OCTEON_PKOREG_H_ */
    397