/* * Copyright (c) 2003-2008 Chelsio, Inc. All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, available from the file * COPYING in the main directory of this source tree, or the * OpenIB.org BSD license below: * * Redistribution and use in source and binary forms, with or * without modification, are permitted provided that the following * conditions are met: * * - Redistributions of source code must retain the above * copyright notice, this list of conditions and the following * disclaimer. * * - Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following * disclaimer in the documentation and/or other materials * provided with the distribution. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE.
*/ #ifndef _CXGB3_OFFLOAD_CTL_DEFS_H #define _CXGB3_OFFLOAD_CTL_DEFS_H
/* * Structure used to describe a TID range. Valid TIDs are [base, base+num).
*/ struct tid_range { unsignedint base; /* first TID */ unsignedint num; /* number of TIDs in range */
};
/* * Structure used to request the size and contents of the MTU table.
*/ struct mtutab { unsignedint size; /* # of entries in the MTU table */ constunsignedshort *mtus; /* the MTU table values */
};
struct net_device;
/* * Structure used to request the adapter net_device owning a given MAC address.
*/ struct iff_mac { struct net_device *dev; /* the net_device */ constunsignedchar *mac_addr; /* MAC address to lookup */
u16 vlan_tag;
};
/* Structure used to request a port's iSCSI IPv4 address */ struct iscsi_ipv4addr { struct net_device *dev; /* the net_device */
__be32 ipv4addr; /* the return iSCSI IPv4 address */
};
struct pci_dev;
/* * Structure used to request the TCP DDP parameters.
*/ struct ddp_params { unsignedint llimit; /* TDDP region start address */ unsignedint ulimit; /* TDDP region end address */ unsignedint tag_mask; /* TDDP tag mask */ struct pci_dev *pdev;
};
struct adap_ports { unsignedint nports; /* number of ports on this adapter */ struct net_device *lldevs[2];
};
/* * Structure used to return information to the iscsi layer.
*/ struct ulp_iscsi_info { unsignedint offset; unsignedint llimit; unsignedint ulimit; unsignedint tagmask;
u8 pgsz_factor[4]; unsignedint max_rxsz; unsignedint max_txsz; struct pci_dev *pdev;
};
/* * Structure used to return information to the RDMA layer.
*/ struct rdma_info { unsignedint tpt_base; /* TPT base address */ unsignedint tpt_top; /* TPT last entry address */ unsignedint pbl_base; /* PBL base address */ unsignedint pbl_top; /* PBL last entry address */ unsignedint rqt_base; /* RQT base address */ unsignedint rqt_top; /* RQT last entry address */ unsignedint udbell_len; /* user doorbell region length */ unsignedlong udbell_physbase; /* user doorbell physical start addr */ void __iomem *kdb_addr; /* kernel doorbell register address */ struct pci_dev *pdev; /* associated PCI device */
};
/* * Structure used to request an operation on an RDMA completion queue.
*/ struct rdma_cq_op { unsignedint id; unsignedint op; unsignedint credits;
};
/* * Structure used to setup the RDMA control egress context.
*/ struct rdma_ctrlqp_setup { unsignedlonglong base_addr; unsignedint size;
};
/* * Offload TX/RX page information.
*/ struct ofld_page_info { unsignedint page_size; /* Page size, should be a power of 2 */ unsignedint num; /* Number of pages */
};
/* * Structure used to get firmware and protocol engine versions.
*/ struct ch_embedded_info {
u32 fw_vers;
u32 tp_vers;
}; #endif/* _CXGB3_OFFLOAD_CTL_DEFS_H */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.