components/open-fabrics/libsif/include/psifapi/psif_hw_csr.h
changeset 5564 e533d5840fdd
child 7120 b01185225eaa
equal deleted inserted replaced
5563:f50fba81e706 5564:e533d5840fdd
       
     1 /*
       
     2  * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
       
     3  */
       
     4 
       
     5 /*
       
     6  * Redistribution and use in source and binary forms, with or without modification,
       
     7  * are permitted provided that the following conditions are met:
       
     8  *
       
     9  * 1. Redistributions of source code must retain the above copyright notice,
       
    10  *    this list of conditions and the following disclaimer.
       
    11  *
       
    12  * 2. Redistributions in binary form must reproduce the above copyright notice,
       
    13  *    this list of conditions and the following disclaimer in the documentation
       
    14  *    and/or other materials provided with the distribution.
       
    15  *
       
    16  * 3. Neither the name of the copyright holder nor the names of its contributors
       
    17  *    may be used to endorse or promote products derived from this software without
       
    18  *    specific prior written permission.
       
    19  *
       
    20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
       
    21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
       
    22  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
       
    23  * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
       
    24  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
       
    25  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
       
    26  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
       
    27  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
       
    28  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
       
    29  * OF THE POSSIBILITY OF SUCH DAMAGE.
       
    30  */
       
    31 
       
    32 #ifndef	_PSIF_HW_CSR_H
       
    33 #define	_PSIF_HW_CSR_H
       
    34 #ifdef __cplusplus
       
    35 extern "C" {
       
    36 #endif
       
    37 
       
    38 #include "psif_api.h"
       
    39 
       
    40 /* The psif base address setup access ids */
       
    41 enum psif_csr_map {
       
    42 	PSIF_CSR_ADDR_BASE_ADDR_ATSP                 = 0x5248,
       
    43 	PSIF_CSR_ADDR_BASE_ADDR_AH                   = 0x55948,
       
    44 	PSIF_CSR_ADDR_BASE_ADDR_QP	             = 0x55960,
       
    45 	PSIF_CSR_ADDR_BASE_ADDR_SQ_CMPL              = 0x59d68,
       
    46 	PSIF_CSR_ADDR_BASE_ADDR_KEY                  = 0x59d80,
       
    47 	PSIF_CSR_ADDR_BASE_ADDR_RQSP                 = 0x59e08,
       
    48 	PSIF_CSR_ADDR_BASE_ADDR_RQ_SW                = 0x59e20,
       
    49 	PSIF_CSR_ADDR_BASE_ADDR_RQ_HW                = 0x59e38,
       
    50 	PSIF_CSR_ADDR_BASE_ADDR_SQ_SW                = 0xc4548,
       
    51 	PSIF_CSR_ADDR_BASE_ADDR_SQ_HW                = 0xc4560,
       
    52 	PSIF_CSR_ADDR_BASE_ADDR_SQ_RING              = 0xc4d18,
       
    53 	PSIF_CSR_ADDR_BASE_ADDR_SQ_RSPQ              = 0xc4f68,
       
    54 	PSIF_CSR_ADDR_BASE_ADDR_SQ_TVL               = 0xc5388,
       
    55 	PSIF_CSR_ADDR_BASE_ADDR_CQ_SW                = 0xcd7a0,
       
    56 	PSIF_CSR_ADDR_BASE_ADDR_CQ_HW                = 0xcd7b8,
       
    57     PSIF_CSR_ADDR_END                            = 0xce9f0
       
    58 }; /* enum psif_csr_map */
       
    59 
       
    60 /* The psif base address setup access ids as offset in a struct */
       
    61 /* *** DEPRECATED DATA TYPE *** */
       
    62 struct psif_csr_be {
       
    63 	__be64 ingenting_01[((0x5248) / sizeof(__be64))];
       
    64 	/* HW:TSU_HOST_QP_BASE_ADDR_0 -> struct base_addr_atsp [165 bits] */
       
    65 	__be64 base_addr_atsp[3];	 /* Offset   0x5248 */
       
    66 	/* HW:TSU_QPS_AHA_BASE_ADDR_0 -> struct base_addr_ah [165 bits] */
       
    67 	__be64 ingenting_03[((0x55948 - 0x5248) / sizeof(__be64)) - 3];
       
    68 	__be64 base_addr_ah[3];	 /* Offset  0x55948 */
       
    69 	/* HW:TSU_QPS_QP_BASE_ADDR_0 -> struct base_addr_qp [165 bits] */
       
    70 	__be64 ingenting_04[((0x55960 - 0x55948) / sizeof(__be64)) - 3];
       
    71 	__be64 base_addr_qp[3];	 /* Offset  0x55960 */
       
    72 	/* HW:TSU_CMPL_SQ_BASE_ADDR_0 -> struct base_addr_sq_cmpl [165 bits] */
       
    73 	__be64 ingenting_05[((0x59d68 - 0x55960) / sizeof(__be64)) - 3];
       
    74 	__be64 base_addr_sq_cmpl[3];	 /* Offset  0x59d68 */
       
    75 	/* HW:TSU_VAL_KEY_BASE_ADDR_0 -> struct base_addr_key [165 bits] */
       
    76 	__be64 ingenting_06[((0x59d80 - 0x59d68) / sizeof(__be64)) - 3];
       
    77 	__be64 base_addr_key[3];	 /* Offset  0x59d80 */
       
    78 	/* HW:TSU_RQH_QP_BASE_ADDR_0 -> struct base_addr_rqsp [165 bits] */
       
    79 	__be64 ingenting_07[((0x59e08 - 0x59d80) / sizeof(__be64)) - 3];
       
    80 	__be64 base_addr_rqsp[3];	 /* Offset  0x59e08 */
       
    81 	/* HW:TSU_DSCR_RQ_BASE_ADDR_SW_0 -> struct base_addr_rq_sw [165 bits] */
       
    82 	__be64 ingenting_08[((0x59e20 - 0x59e08) / sizeof(__be64)) - 3];
       
    83 	__be64 base_addr_rq_sw[3];	 /* Offset  0x59e20 */
       
    84 	/* HW:TSU_DSCR_RQ_BASE_ADDR_HW_0 -> struct base_addr_rq_hw [165 bits] */
       
    85 	__be64 ingenting_09[((0x59e38 - 0x59e20) / sizeof(__be64)) - 3];
       
    86 	__be64 base_addr_rq_hw[3];	 /* Offset  0x59e38 */
       
    87 	/* HW:TSU_IBPR_P1_EOIB_MAC1 SW:ibpr_p1_eoib_mac1
       
    88 	 * -> struct psif_csr_ibpr_p1_eoib_mac1 [64 bits] */
       
    89 	__be64 ingenting_10[((0xbfcb8 - 0x59e38) / sizeof(__be64)) - 1];
       
    90 	__be64 ibpr_p1_eoib_mac1;	 /* Offset  0xbfcb8 */
       
    91 	/* HW:TSU_IBPR_P1_EOIB_MAC2 SW:ibpr_p1_eoib_mac2
       
    92 	 * -> struct psif_csr_ibpr_p1_eoib_mac2 [64 bits] */
       
    93 	__be64 ingenting_11[((0xbfcc0 - 0xbfcb8) / sizeof(__be64)) - 1];
       
    94 	__be64 ibpr_p1_eoib_mac2;	 /* Offset  0xbfcc0 */
       
    95 	/* HW:TSU_IBPR_P2_EOIB_MAC1 SW:ibpr_p2_eoib_mac1
       
    96 	 * -> struct psif_csr_ibpr_p2_eoib_mac1 [64 bits] */
       
    97 	__be64 ingenting_12[((0xbfcc8 - 0xbfcc0) / sizeof(__be64)) - 1];
       
    98 	__be64 ibpr_p2_eoib_mac1;	 /* Offset  0xbfcc8 */
       
    99 	/* HW:TSU_IBPR_P2_EOIB_MAC2 SW:ibpr_p2_eoib_mac2
       
   100 	 * -> struct psif_csr_ibpr_p2_eoib_mac2 [64 bits] */
       
   101 	__be64 ingenting_13[((0xbfcd0 - 0xbfcc8) / sizeof(__be64)) - 1];
       
   102 	__be64 ibpr_p2_eoib_mac2;	 /* Offset  0xbfcd0 */
       
   103 	/* HW:TSU_SQS_SQ_BASE_ADDR_SW_0 -> struct base_addr_sq_sw [165 bits] */
       
   104 	__be64 ingenting_14[((0xc4548 - 0xbfcd0) / sizeof(__be64)) - 3];
       
   105 	__be64 base_addr_sq_sw[3];	 /* Offset  0xc4548 */
       
   106 	/* HW:TSU_SQS_SQ_BASE_ADDR_HW_0 -> struct base_addr_sq_hw [165 bits] */
       
   107 	__be64 ingenting_15[((0xc4560 - 0xc4548) / sizeof(__be64)) - 3];
       
   108 	__be64 base_addr_sq_hw[3];	 /* Offset  0xc4560 */
       
   109 	/* HW:TSU_SQS_PIO_RING_BASE_ADDR_0 -> struct base_addr_sq_ring [165 bits] */
       
   110 	__be64 ingenting_16[((0xc4d18 - 0xc4560) / sizeof(__be64)) - 3];
       
   111 	__be64 base_addr_sq_ring[3];	 /* Offset  0xc4d18 */
       
   112 	/* HW:TSU_SQS_RSPQ_BASE_ADDR_0 -> struct base_addr_sq_rspq [165 bits] */
       
   113 	__be64 ingenting_17[((0xc4f68 - 0xc4d18) / sizeof(__be64)) - 3];
       
   114 	__be64 base_addr_sq_rspq[3];	 /* Offset  0xc4f68 */
       
   115 	/* HW:TSU_SQS_RSPQ_TVL_BASE_ADDR_0 -> struct base_addr_sq_tvl [165 bits] */
       
   116 	__be64 ingenting_18[((0xc5388 - 0xc4f68) / sizeof(__be64)) - 3];
       
   117 	__be64 base_addr_sq_tvl[3];	 /* Offset  0xc5388 */
       
   118 	/* HW:TSU_CBLD_CQ_BASE_ADDR_SW_0 -> struct base_addr_cq_sw [165 bits] */
       
   119 	__be64 ingenting_19[((0xcd7a0 - 0xc5388) / sizeof(__be64)) - 3];
       
   120 	__be64 base_addr_cq_sw[3];	 /* Offset  0xcd7a0 */
       
   121 	/* HW:TSU_CBLD_CQ_BASE_ADDR_HW_0 -> struct base_addr_cq_hw [165 bits] */
       
   122 	__be64 ingenting_20[((0xcd7b8 - 0xcd7a0) / sizeof(__be64)) - 3];
       
   123 	__be64 base_addr_cq_hw[3];	 /* Offset  0xcd7b8 */
       
   124 	__be64 ingenting_21[((0xce9f0 - 0xcd7b8) / sizeof(__be64)) - 3];
       
   125 }; /* struct psif_csr_be [6770560 bits] */
       
   126 
       
   127 #ifdef __cplusplus
       
   128 }
       
   129 #endif
       
   130 #endif	/* _PSIF_HW_CSR_H */