79 lines · c
1/*2 * Copyright (c) 2015 Mellanox Technologies. All rights reserved.3 *4 * This software is available to you under a choice of one of two5 * licenses. You may choose to be licensed under the terms of the GNU6 * General Public License (GPL) Version 2, available from the file7 * COPYING in the main directory of this source tree, or the8 * OpenIB.org BSD license below:9 *10 * Redistribution and use in source and binary forms, with or11 * without modification, are permitted provided that the following12 * conditions are met:13 *14 * - Redistributions of source code must retain the above15 * copyright notice, this list of conditions and the following16 * disclaimer.17 *18 * - Redistributions in binary form must reproduce the above19 * copyright notice, this list of conditions and the following20 * disclaimer in the documentation and/or other materials21 * provided with the distribution.22 *23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,24 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF25 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND26 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS27 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN28 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN29 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE30 * SOFTWARE.31 */32#ifndef ISCSI_ISER_H33#define ISCSI_ISER_H34 35#define ISER_ZBVA_NOT_SUP 0x8036#define ISER_SEND_W_INV_NOT_SUP 0x4037#define ISERT_ZBVA_NOT_USED 0x8038#define ISERT_SEND_W_INV_NOT_USED 0x4039 40#define ISCSI_CTRL 0x1041#define ISER_HELLO 0x2042#define ISER_HELLORPLY 0x3043 44#define ISER_VER 0x1045#define ISER_WSV 0x0846#define ISER_RSV 0x0447 48/**49 * struct iser_cm_hdr - iSER CM header (from iSER Annex A12)50 *51 * @flags: flags support (zbva, send_w_inv)52 * @rsvd: reserved53 */54struct iser_cm_hdr {55 u8 flags;56 u8 rsvd[3];57} __packed;58 59/**60 * struct iser_ctrl - iSER header of iSCSI control PDU61 *62 * @flags: opcode and read/write valid bits63 * @rsvd: reserved64 * @write_stag: write rkey65 * @write_va: write virtual address66 * @read_stag: read rkey67 * @read_va: read virtual address68 */69struct iser_ctrl {70 u8 flags;71 u8 rsvd[3];72 __be32 write_stag;73 __be64 write_va;74 __be32 read_stag;75 __be64 read_va;76} __packed;77 78#endif /* ISCSI_ISER_H */79