1 /******************************************************************************* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 * 21 * Copyright 2014 QLogic Corporation 22 * The contents of this file are subject to the terms of the 23 * QLogic End User License (the "License"). 24 * You may not use this file except in compliance with the License. 25 * 26 * You can obtain a copy of the License at 27 * http://www.qlogic.com/Resources/Documents/DriverDownloadHelp/ 28 * QLogic_End_User_Software_License.txt 29 * See the License for the specific language governing permissions 30 * and limitations under the License. 31 * 32 * 33 * FILE : I S C S I _ I N F O . H 34 * AUTHOR : Kevin Tran 35 * 36 * DESCRIPTION : This file contains macro definitions for ISCSI shared 37 * information. 38 * 39 * Revision History: 40 * Kevin Tran 07/23/2004 Created 41 * 42 ******************************************************************************/ 43 44 #ifndef __ISCSI_INFO_H__ 45 #define __ISCSI_INFO_H__ 46 47 typedef struct _iscsi_info_block_hdr_t 48 { 49 #define ISCSI_INFO_BLOCK_SIGNATURE 0x6b627369 50 u32_t signature; 51 u16_t length; 52 u8_t checksum; 53 u8_t boot_flags; 54 #define ISCSI_INFO_FLAGS_WINDOWS_HBA_BOOT (1 << 0) 55 #define BOOT_INFO_FLAGS_UEFI_BOOT (1 << 1) 56 } iscsi_info_block_hdr_t; 57 58 #define UEFI_BOOT_SIGNATURE 0x0EF10EF1 59 60 #define ISCSI_INFO_DATA_SIZE 1016 61 62 typedef struct _iscsi_info_block_t 63 { 64 iscsi_info_block_hdr_t hdr ; 65 u8_t data[ISCSI_INFO_DATA_SIZE]; 66 } iscsi_info_block_t; 67 68 #define ISCSI_INFO_ID_TARGET_NAME 0x0 69 #define ISCSI_INFO_ID_TARGET_IP_ADDR 0x1 70 #define ISCSI_INFO_ID_TARGET_TCP_PORT 0x2 71 #define ISCSI_INFO_ID_INITIATOR_NAME 0x3 72 #define ISCSI_INFO_ID_IP_ADDRESS 0x4 73 #define ISCSI_INFO_ID_SUBNET_MASK 0x5 74 #define ISCSI_INFO_ID_DEFAULT_GATEWAY 0x6 75 #define ISCSI_INFO_ID_AUTHEN_MODE 0x7 76 #define ISCSI_INFO_ID_INIT_CHAP_ID 0x8 77 #define ISCSI_INFO_ID_INIT_CHAP_PW 0x9 78 #define ISCSI_INFO_ID_TARGET_CHAP_ID 0xa 79 #define ISCSI_INFO_ID_TARGET_CHAP_PW 0xb 80 #define ISCSI_INFO_ID_VLAN_ID 0xc 81 #define ISCSI_INFO_ID_PRIMARY_DNS 0xd 82 #define ISCSI_INFO_ID_SECONDARY_DNS 0xe 83 #define ISCSI_INFO_ID_INTF_MAC_ADDR 0xf 84 85 #define ISCSI_INFO_ID_IP_ADDRESS2 0x10 86 #define ISCSI_INFO_ID_SUBNET_MASK2 0x11 87 #define ISCSI_INFO_ID_DEFAULT_GATEWAY2 0x12 88 #define ISCSI_INFO_ID_VLAN_ID2 0x13 89 #define ISCSI_INFO_ID_INTF_MAC_ADDR2 0x14 90 #define ISCSI_INFO_ID_PRIMARY_DNS2 0x15 91 #define ISCSI_INFO_ID_SECONDARY_DNS2 0x16 92 #define ISCSI_INFO_ID_DHCP_SERVER_IP_ADDR 0x17 93 #define ISCSI_INFO_ID_BOOT_INTF 0x18 94 #define ISCSI_INFO_ID_TARGET_LUN_NUM 0x19 95 #define ISCSI_INFO_ID_PRIMARY_INTF 0x1a 96 #define ISCSI_INFO_ID_PCI_FUNCTION_NUM 0x1b 97 #define ISCSI_INFO_ID_DHCP_SERVER_IP_ADDR2 0x1c 98 #define ISCSI_INFO_ID_TARGET_IP_ADDR2 0x1d 99 #define ISCSI_INFO_ID_TARGET_TCP_PORT2 0x1e 100 #define ISCSI_INFO_ID_BOOT_PARAMETERS 0x1f 101 #define ISCSI_INFO_ID_BOOT_PARAMETERS2 0x20 102 103 #define ISCSI_INFO_ID_END 0xff 104 105 #define ISCSI_INFO_BOOT_PARAMS_IPv6_RA (1 << 0) 106 107 typedef struct iscsi_info_hdr 108 { 109 u16_t id; 110 u16_t length; 111 }iscsi_info_hdr; 112 113 typedef struct iscsi_info_entry 114 { 115 iscsi_info_hdr hdr; 116 u8_t data[1]; 117 }iscsi_info_entry; 118 119 #endif /* __ISCSI_INFO_H__ */ 120