The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/qlxgbe/ql_tmplt.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    3  *
    4  * Copyright (c) 2013-2016 Qlogic Corporation
    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  *
   11  *  1. Redistributions of source code must retain the above copyright
   12  *     notice, this list of conditions and the following disclaimer.
   13  *  2. Redistributions in binary form must reproduce the above copyright
   14  *     notice, this list of conditions and the following disclaimer in the
   15  *     documentation and/or other materials provided with the distribution.
   16  *
   17  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
   18  *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   19  *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   20  *  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
   21  *  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   22  *  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   23  *  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   24  *  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   25  *  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   26  *  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   27  *  POSSIBILITY OF SUCH DAMAGE.
   28  *
   29  * $FreeBSD$
   30  */
   31 /*
   32  * File: ql_tmplt.h
   33  * Author : David C Somayajulu, Qlogic Corporation, Aliso Viejo, CA 92656.
   34  */
   35 #ifndef _QL_TMPLT_H_
   36 #define _QL_TMPLT_H_
   37 
   38 typedef struct _q8_tmplt_hdr {
   39         uint16_t        version;
   40         uint16_t        signature;
   41         uint16_t        size;
   42         uint16_t        nentries;
   43         uint16_t        stop_seq_off;
   44         uint16_t        csum;
   45         uint16_t        init_seq_off;
   46         uint16_t        start_seq_off;
   47 } __packed q8_tmplt_hdr_t;
   48 
   49 typedef struct _q8_ce_hdr {
   50         uint16_t        opcode;
   51         uint16_t        size;
   52         uint16_t        opcount;
   53         uint16_t        delay_to;
   54 } __packed q8_ce_hdr_t;
   55 
   56 /*
   57  * Values for opcode field in q8_ce_hdr_t
   58  */
   59 #define Q8_CE_OPCODE_NOP                0x000
   60 #define Q8_CE_OPCODE_WRITE_LIST         0x001
   61 #define Q8_CE_OPCODE_READ_WRITE_LIST    0x002
   62 #define Q8_CE_OPCODE_POLL_LIST          0x004
   63 #define Q8_CE_OPCODE_POLL_WRITE_LIST    0x008
   64 #define Q8_CE_OPCODE_READ_MODIFY_WRITE  0x010
   65 #define Q8_CE_OPCODE_SEQ_PAUSE          0x020
   66 #define Q8_CE_OPCODE_SEQ_END            0x040
   67 #define Q8_CE_OPCODE_TMPLT_END          0x080
   68 #define Q8_CE_OPCODE_POLL_RD_LIST       0x100
   69 
   70 /*
   71  * structure for Q8_CE_OPCODE_WRITE_LIST
   72  */
   73 typedef struct _q8_wrl_e {
   74         uint32_t        addr;
   75         uint32_t        value;
   76 } __packed q8_wrl_e_t;
   77 
   78 /*
   79  * structure for Q8_CE_OPCODE_READ_WRITE_LIST
   80  */
   81 typedef struct _q8_rdwrl_e {
   82         uint32_t        rd_addr;
   83         uint32_t        wr_addr;
   84 } __packed q8_rdwrl_e_t;
   85 
   86 /*
   87  * common for
   88  *      Q8_CE_OPCODE_POLL_LIST
   89  *      Q8_CE_OPCODE_POLL_WRITE_LIST
   90  *      Q8_CE_OPCODE_POLL_RD_LIST
   91  */
   92 typedef struct _q8_poll_hdr {
   93         uint32_t        tmask;
   94         uint32_t        tvalue;
   95 } q8_poll_hdr_t;
   96 
   97 /*
   98  * structure for Q8_CE_OPCODE_POLL_LIST
   99  */
  100 typedef struct _q8_poll_e {
  101         uint32_t        addr;
  102         uint32_t        to_addr;
  103 } q8_poll_e_t;
  104 
  105 /*
  106  * structure for Q8_CE_OPCODE_POLL_WRITE_LIST
  107  */
  108 typedef struct _q8_poll_wr_e {
  109         uint32_t        dr_addr;
  110         uint32_t        dr_value;
  111         uint32_t        ar_addr;
  112         uint32_t        ar_value;
  113 } q8_poll_wr_e_t;
  114 
  115 /*
  116  * structure for Q8_CE_OPCODE_POLL_RD_LIST
  117  */
  118 typedef struct _q8_poll_rd_e {
  119         uint32_t        ar_addr;
  120         uint32_t        ar_value;
  121         uint32_t        dr_addr;
  122         uint32_t        rsrvd;
  123 } q8_poll_rd_e_t;
  124 
  125 /*
  126  * structure for Q8_CE_OPCODE_READ_MODIFY_WRITE
  127  */
  128 typedef struct _q8_rdmwr_hdr {
  129         uint32_t        and_value;
  130         uint32_t        xor_value;
  131         uint32_t        or_value;
  132         uint8_t         shl;
  133         uint8_t         shr;
  134         uint8_t         index_a;
  135         uint8_t         rsrvd;
  136 } q8_rdmwr_hdr_t;
  137 
  138 typedef struct _q8_rdmwr_e {
  139         uint32_t        rd_addr;
  140         uint32_t        wr_addr;
  141 } q8_rdmwr_e_t;
  142 
  143 #endif /* #ifndef _QL_TMPLT_H_ */

Cache object: dafaa2af990d930d61032b627c0b9492


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.