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