| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1 | /* | 
 | 2 |  * CAAM descriptor composition header | 
 | 3 |  * Definitions to support CAAM descriptor instruction generation | 
 | 4 |  * | 
 | 5 |  * Copyright 2008-2011 Freescale Semiconductor, Inc. | 
 | 6 |  */ | 
 | 7 |  | 
 | 8 | #ifndef DESC_H | 
 | 9 | #define DESC_H | 
 | 10 |  | 
 | 11 | /* Max size of any CAAM descriptor in 32-bit words, inclusive of header */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 12 | #define MAX_CAAM_DESCSIZE	64 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 13 |  | 
 | 14 | /* Block size of any entity covered/uncovered with a KEK/TKEK */ | 
 | 15 | #define KEK_BLOCKSIZE		16 | 
 | 16 |  | 
 | 17 | /* | 
 | 18 |  * Supported descriptor command types as they show up | 
 | 19 |  * inside a descriptor command word. | 
 | 20 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 21 | #define CMD_SHIFT		27 | 
 | 22 | #define CMD_MASK		0xf8000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 23 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 24 | #define CMD_KEY			(0x00 << CMD_SHIFT) | 
 | 25 | #define CMD_SEQ_KEY		(0x01 << CMD_SHIFT) | 
 | 26 | #define CMD_LOAD		(0x02 << CMD_SHIFT) | 
 | 27 | #define CMD_SEQ_LOAD		(0x03 << CMD_SHIFT) | 
 | 28 | #define CMD_FIFO_LOAD		(0x04 << CMD_SHIFT) | 
 | 29 | #define CMD_SEQ_FIFO_LOAD	(0x05 << CMD_SHIFT) | 
 | 30 | #define CMD_STORE		(0x0a << CMD_SHIFT) | 
 | 31 | #define CMD_SEQ_STORE		(0x0b << CMD_SHIFT) | 
 | 32 | #define CMD_FIFO_STORE		(0x0c << CMD_SHIFT) | 
 | 33 | #define CMD_SEQ_FIFO_STORE	(0x0d << CMD_SHIFT) | 
 | 34 | #define CMD_MOVE_LEN		(0x0e << CMD_SHIFT) | 
 | 35 | #define CMD_MOVE		(0x0f << CMD_SHIFT) | 
 | 36 | #define CMD_OPERATION		(0x10 << CMD_SHIFT) | 
 | 37 | #define CMD_SIGNATURE		(0x12 << CMD_SHIFT) | 
 | 38 | #define CMD_JUMP		(0x14 << CMD_SHIFT) | 
 | 39 | #define CMD_MATH		(0x15 << CMD_SHIFT) | 
 | 40 | #define CMD_DESC_HDR		(0x16 << CMD_SHIFT) | 
 | 41 | #define CMD_SHARED_DESC_HDR	(0x17 << CMD_SHIFT) | 
 | 42 | #define CMD_SEQ_IN_PTR		(0x1e << CMD_SHIFT) | 
 | 43 | #define CMD_SEQ_OUT_PTR		(0x1f << CMD_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 44 |  | 
 | 45 | /* General-purpose class selector for all commands */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 46 | #define CLASS_SHIFT		25 | 
 | 47 | #define CLASS_MASK		(0x03 << CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 48 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 49 | #define CLASS_NONE		(0x00 << CLASS_SHIFT) | 
 | 50 | #define CLASS_1			(0x01 << CLASS_SHIFT) | 
 | 51 | #define CLASS_2			(0x02 << CLASS_SHIFT) | 
 | 52 | #define CLASS_BOTH		(0x03 << CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 53 |  | 
 | 54 | /* | 
 | 55 |  * Descriptor header command constructs | 
 | 56 |  * Covers shared, job, and trusted descriptor headers | 
 | 57 |  */ | 
 | 58 |  | 
 | 59 | /* | 
 | 60 |  * Do Not Run - marks a descriptor inexecutable if there was | 
 | 61 |  * a preceding error somewhere | 
 | 62 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 63 | #define HDR_DNR			0x01000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 64 |  | 
 | 65 | /* | 
 | 66 |  * ONE - should always be set. Combination of ONE (always | 
 | 67 |  * set) and ZRO (always clear) forms an endianness sanity check | 
 | 68 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 69 | #define HDR_ONE			0x00800000 | 
 | 70 | #define HDR_ZRO			0x00008000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 71 |  | 
 | 72 | /* Start Index or SharedDesc Length */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 73 | #define HDR_START_IDX_MASK	0x3f | 
 | 74 | #define HDR_START_IDX_SHIFT	16 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 75 |  | 
 | 76 | /* If shared descriptor header, 6-bit length */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 77 | #define HDR_DESCLEN_SHR_MASK	0x3f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 78 |  | 
 | 79 | /* If non-shared header, 7-bit length */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 80 | #define HDR_DESCLEN_MASK	0x7f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 81 |  | 
 | 82 | /* This is a TrustedDesc (if not SharedDesc) */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 83 | #define HDR_TRUSTED		0x00004000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 84 |  | 
 | 85 | /* Make into TrustedDesc (if not SharedDesc) */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 86 | #define HDR_MAKE_TRUSTED	0x00002000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 87 |  | 
 | 88 | /* Save context if self-shared (if SharedDesc) */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 89 | #define HDR_SAVECTX		0x00001000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 90 |  | 
 | 91 | /* Next item points to SharedDesc */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 92 | #define HDR_SHARED		0x00001000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 93 |  | 
 | 94 | /* | 
 | 95 |  * Reverse Execution Order - execute JobDesc first, then | 
 | 96 |  * execute SharedDesc (normally SharedDesc goes first). | 
 | 97 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 98 | #define HDR_REVERSE		0x00000800 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 99 |  | 
 | 100 | /* Propogate DNR property to SharedDesc */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 101 | #define HDR_PROP_DNR		0x00000800 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 102 |  | 
 | 103 | /* JobDesc/SharedDesc share property */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 104 | #define HDR_SD_SHARE_MASK	0x03 | 
 | 105 | #define HDR_SD_SHARE_SHIFT	8 | 
 | 106 | #define HDR_JD_SHARE_MASK	0x07 | 
 | 107 | #define HDR_JD_SHARE_SHIFT	8 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 108 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 109 | #define HDR_SHARE_NEVER		(0x00 << HDR_SD_SHARE_SHIFT) | 
 | 110 | #define HDR_SHARE_WAIT		(0x01 << HDR_SD_SHARE_SHIFT) | 
 | 111 | #define HDR_SHARE_SERIAL	(0x02 << HDR_SD_SHARE_SHIFT) | 
 | 112 | #define HDR_SHARE_ALWAYS	(0x03 << HDR_SD_SHARE_SHIFT) | 
 | 113 | #define HDR_SHARE_DEFER		(0x04 << HDR_SD_SHARE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 114 |  | 
 | 115 | /* JobDesc/SharedDesc descriptor length */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 116 | #define HDR_JD_LENGTH_MASK	0x7f | 
 | 117 | #define HDR_SD_LENGTH_MASK	0x3f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 118 |  | 
 | 119 | /* | 
 | 120 |  * KEY/SEQ_KEY Command Constructs | 
 | 121 |  */ | 
 | 122 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 123 | /* Key Destination Class: 01 = Class 1, 02 - Class 2 */ | 
 | 124 | #define KEY_DEST_CLASS_SHIFT	25	/* use CLASS_1 or CLASS_2 */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 125 | #define KEY_DEST_CLASS_MASK	(0x03 << KEY_DEST_CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 126 |  | 
 | 127 | /* Scatter-Gather Table/Variable Length Field */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 128 | #define KEY_SGF			0x01000000 | 
 | 129 | #define KEY_VLF			0x01000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 130 |  | 
 | 131 | /* Immediate - Key follows command in the descriptor */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 132 | #define KEY_IMM			0x00800000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 133 |  | 
 | 134 | /* | 
 | 135 |  * Encrypted - Key is encrypted either with the KEK, or | 
 | 136 |  * with the TDKEK if TK is set | 
 | 137 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 138 | #define KEY_ENC			0x00400000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 139 |  | 
 | 140 | /* | 
 | 141 |  * No Write Back - Do not allow key to be FIFO STOREd | 
 | 142 |  */ | 
 | 143 | #define KEY_NWB			0x00200000 | 
 | 144 |  | 
 | 145 | /* | 
 | 146 |  * Enhanced Encryption of Key | 
 | 147 |  */ | 
 | 148 | #define KEY_EKT			0x00100000 | 
 | 149 |  | 
 | 150 | /* | 
 | 151 |  * Encrypted with Trusted Key | 
 | 152 |  */ | 
 | 153 | #define KEY_TK			0x00008000 | 
 | 154 |  | 
 | 155 | /* | 
 | 156 |  * KDEST - Key Destination: 0 - class key register, | 
 | 157 |  * 1 - PKHA 'e', 2 - AFHA Sbox, 3 - MDHA split-key | 
 | 158 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 159 | #define KEY_DEST_SHIFT		16 | 
 | 160 | #define KEY_DEST_MASK		(0x03 << KEY_DEST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 161 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 162 | #define KEY_DEST_CLASS_REG	(0x00 << KEY_DEST_SHIFT) | 
 | 163 | #define KEY_DEST_PKHA_E		(0x01 << KEY_DEST_SHIFT) | 
 | 164 | #define KEY_DEST_AFHA_SBOX	(0x02 << KEY_DEST_SHIFT) | 
 | 165 | #define KEY_DEST_MDHA_SPLIT	(0x03 << KEY_DEST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 166 |  | 
 | 167 | /* Length in bytes */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 168 | #define KEY_LENGTH_MASK		0x000003ff | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 169 |  | 
 | 170 | /* | 
 | 171 |  * LOAD/SEQ_LOAD/STORE/SEQ_STORE Command Constructs | 
 | 172 |  */ | 
 | 173 |  | 
 | 174 | /* | 
 | 175 |  * Load/Store Destination: 0 = class independent CCB, | 
 | 176 |  * 1 = class 1 CCB, 2 = class 2 CCB, 3 = DECO | 
 | 177 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 178 | #define LDST_CLASS_SHIFT	25 | 
 | 179 | #define LDST_CLASS_MASK		(0x03 << LDST_CLASS_SHIFT) | 
 | 180 | #define LDST_CLASS_IND_CCB	(0x00 << LDST_CLASS_SHIFT) | 
 | 181 | #define LDST_CLASS_1_CCB	(0x01 << LDST_CLASS_SHIFT) | 
 | 182 | #define LDST_CLASS_2_CCB	(0x02 << LDST_CLASS_SHIFT) | 
 | 183 | #define LDST_CLASS_DECO		(0x03 << LDST_CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 184 |  | 
 | 185 | /* Scatter-Gather Table/Variable Length Field */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 186 | #define LDST_SGF		0x01000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 187 | #define LDST_VLF		LDST_SGF | 
 | 188 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 189 | /* Immediate - Key follows this command in descriptor */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 190 | #define LDST_IMM_MASK		1 | 
 | 191 | #define LDST_IMM_SHIFT		23 | 
 | 192 | #define LDST_IMM		(LDST_IMM_MASK << LDST_IMM_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 193 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 194 | /* SRC/DST - Destination for LOAD, Source for STORE */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 195 | #define LDST_SRCDST_SHIFT	16 | 
 | 196 | #define LDST_SRCDST_MASK	(0x7f << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 197 |  | 
 | 198 | #define LDST_SRCDST_BYTE_CONTEXT	(0x20 << LDST_SRCDST_SHIFT) | 
 | 199 | #define LDST_SRCDST_BYTE_KEY		(0x40 << LDST_SRCDST_SHIFT) | 
 | 200 | #define LDST_SRCDST_BYTE_INFIFO		(0x7c << LDST_SRCDST_SHIFT) | 
 | 201 | #define LDST_SRCDST_BYTE_OUTFIFO	(0x7e << LDST_SRCDST_SHIFT) | 
 | 202 |  | 
 | 203 | #define LDST_SRCDST_WORD_MODE_REG	(0x00 << LDST_SRCDST_SHIFT) | 
 | 204 | #define LDST_SRCDST_WORD_KEYSZ_REG	(0x01 << LDST_SRCDST_SHIFT) | 
 | 205 | #define LDST_SRCDST_WORD_DATASZ_REG	(0x02 << LDST_SRCDST_SHIFT) | 
 | 206 | #define LDST_SRCDST_WORD_ICVSZ_REG	(0x03 << LDST_SRCDST_SHIFT) | 
 | 207 | #define LDST_SRCDST_WORD_CHACTRL	(0x06 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 208 | #define LDST_SRCDST_WORD_DECOCTRL	(0x06 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 209 | #define LDST_SRCDST_WORD_IRQCTRL	(0x07 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 210 | #define LDST_SRCDST_WORD_DECO_PCLOVRD	(0x07 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 211 | #define LDST_SRCDST_WORD_CLRW		(0x08 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 212 | #define LDST_SRCDST_WORD_DECO_MATH0	(0x08 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 213 | #define LDST_SRCDST_WORD_STAT		(0x09 << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 214 | #define LDST_SRCDST_WORD_DECO_MATH1	(0x09 << LDST_SRCDST_SHIFT) | 
 | 215 | #define LDST_SRCDST_WORD_DECO_MATH2	(0x0a << LDST_SRCDST_SHIFT) | 
 | 216 | #define LDST_SRCDST_WORD_DECO_AAD_SZ	(0x0b << LDST_SRCDST_SHIFT) | 
 | 217 | #define LDST_SRCDST_WORD_DECO_MATH3	(0x0b << LDST_SRCDST_SHIFT) | 
 | 218 | #define LDST_SRCDST_WORD_CLASS1_ICV_SZ	(0x0c << LDST_SRCDST_SHIFT) | 
 | 219 | #define LDST_SRCDST_WORD_ALTDS_CLASS1	(0x0f << LDST_SRCDST_SHIFT) | 
 | 220 | #define LDST_SRCDST_WORD_PKHA_A_SZ	(0x10 << LDST_SRCDST_SHIFT) | 
 | 221 | #define LDST_SRCDST_WORD_PKHA_B_SZ	(0x11 << LDST_SRCDST_SHIFT) | 
 | 222 | #define LDST_SRCDST_WORD_PKHA_N_SZ	(0x12 << LDST_SRCDST_SHIFT) | 
 | 223 | #define LDST_SRCDST_WORD_PKHA_E_SZ	(0x13 << LDST_SRCDST_SHIFT) | 
 | 224 | #define LDST_SRCDST_WORD_DESCBUF	(0x40 << LDST_SRCDST_SHIFT) | 
 | 225 | #define LDST_SRCDST_WORD_INFO_FIFO	(0x7a << LDST_SRCDST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 226 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 227 | /* Offset in source/destination */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 228 | #define LDST_OFFSET_SHIFT	8 | 
 | 229 | #define LDST_OFFSET_MASK	(0xff << LDST_OFFSET_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 230 |  | 
 | 231 | /* LDOFF definitions used when DST = LDST_SRCDST_WORD_DECOCTRL */ | 
 | 232 | /* These could also be shifted by LDST_OFFSET_SHIFT - this reads better */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 233 | #define LDOFF_CHG_SHARE_SHIFT		0 | 
 | 234 | #define LDOFF_CHG_SHARE_MASK		(0x3 << LDOFF_CHG_SHARE_SHIFT) | 
 | 235 | #define LDOFF_CHG_SHARE_NEVER		(0x1 << LDOFF_CHG_SHARE_SHIFT) | 
| Kim Phillips | a2ecb15 | 2011-12-12 14:59:15 -0600 | [diff] [blame] | 236 | #define LDOFF_CHG_SHARE_OK_PROP		(0x2 << LDOFF_CHG_SHARE_SHIFT) | 
 | 237 | #define LDOFF_CHG_SHARE_OK_NO_PROP	(0x3 << LDOFF_CHG_SHARE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 238 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 239 | #define LDOFF_ENABLE_AUTO_NFIFO		(1 << 2) | 
 | 240 | #define LDOFF_DISABLE_AUTO_NFIFO	(1 << 3) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 241 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 242 | #define LDOFF_CHG_NONSEQLIODN_SHIFT	4 | 
 | 243 | #define LDOFF_CHG_NONSEQLIODN_MASK	(0x3 << LDOFF_CHG_NONSEQLIODN_SHIFT) | 
 | 244 | #define LDOFF_CHG_NONSEQLIODN_SEQ	(0x1 << LDOFF_CHG_NONSEQLIODN_SHIFT) | 
 | 245 | #define LDOFF_CHG_NONSEQLIODN_NON_SEQ	(0x2 << LDOFF_CHG_NONSEQLIODN_SHIFT) | 
 | 246 | #define LDOFF_CHG_NONSEQLIODN_TRUSTED	(0x3 << LDOFF_CHG_NONSEQLIODN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 247 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 248 | #define LDOFF_CHG_SEQLIODN_SHIFT	6 | 
 | 249 | #define LDOFF_CHG_SEQLIODN_MASK		(0x3 << LDOFF_CHG_SEQLIODN_SHIFT) | 
 | 250 | #define LDOFF_CHG_SEQLIODN_SEQ		(0x1 << LDOFF_CHG_SEQLIODN_SHIFT) | 
 | 251 | #define LDOFF_CHG_SEQLIODN_NON_SEQ	(0x2 << LDOFF_CHG_SEQLIODN_SHIFT) | 
 | 252 | #define LDOFF_CHG_SEQLIODN_TRUSTED	(0x3 << LDOFF_CHG_SEQLIODN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 253 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 254 | /* Data length in bytes	*/ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 255 | #define LDST_LEN_SHIFT		0 | 
 | 256 | #define LDST_LEN_MASK		(0xff << LDST_LEN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 257 |  | 
 | 258 | /* Special Length definitions when dst=deco-ctrl */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 259 | #define LDLEN_ENABLE_OSL_COUNT		(1 << 7) | 
 | 260 | #define LDLEN_RST_CHA_OFIFO_PTR		(1 << 6) | 
 | 261 | #define LDLEN_RST_OFIFO			(1 << 5) | 
 | 262 | #define LDLEN_SET_OFIFO_OFF_VALID	(1 << 4) | 
 | 263 | #define LDLEN_SET_OFIFO_OFF_RSVD	(1 << 3) | 
 | 264 | #define LDLEN_SET_OFIFO_OFFSET_SHIFT	0 | 
 | 265 | #define LDLEN_SET_OFIFO_OFFSET_MASK	(3 << LDLEN_SET_OFIFO_OFFSET_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 266 |  | 
 | 267 | /* | 
 | 268 |  * FIFO_LOAD/FIFO_STORE/SEQ_FIFO_LOAD/SEQ_FIFO_STORE | 
 | 269 |  * Command Constructs | 
 | 270 |  */ | 
 | 271 |  | 
 | 272 | /* | 
 | 273 |  * Load Destination: 0 = skip (SEQ_FIFO_LOAD only), | 
 | 274 |  * 1 = Load for Class1, 2 = Load for Class2, 3 = Load both | 
 | 275 |  * Store Source: 0 = normal, 1 = Class1key, 2 = Class2key | 
 | 276 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 277 | #define FIFOLD_CLASS_SHIFT	25 | 
 | 278 | #define FIFOLD_CLASS_MASK	(0x03 << FIFOLD_CLASS_SHIFT) | 
 | 279 | #define FIFOLD_CLASS_SKIP	(0x00 << FIFOLD_CLASS_SHIFT) | 
 | 280 | #define FIFOLD_CLASS_CLASS1	(0x01 << FIFOLD_CLASS_SHIFT) | 
 | 281 | #define FIFOLD_CLASS_CLASS2	(0x02 << FIFOLD_CLASS_SHIFT) | 
 | 282 | #define FIFOLD_CLASS_BOTH	(0x03 << FIFOLD_CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 283 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 284 | #define FIFOST_CLASS_SHIFT	25 | 
 | 285 | #define FIFOST_CLASS_MASK	(0x03 << FIFOST_CLASS_SHIFT) | 
 | 286 | #define FIFOST_CLASS_NORMAL	(0x00 << FIFOST_CLASS_SHIFT) | 
 | 287 | #define FIFOST_CLASS_CLASS1KEY	(0x01 << FIFOST_CLASS_SHIFT) | 
 | 288 | #define FIFOST_CLASS_CLASS2KEY	(0x02 << FIFOST_CLASS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 289 |  | 
 | 290 | /* | 
 | 291 |  * Scatter-Gather Table/Variable Length Field | 
 | 292 |  * If set for FIFO_LOAD, refers to a SG table. Within | 
 | 293 |  * SEQ_FIFO_LOAD, is variable input sequence | 
 | 294 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 295 | #define FIFOLDST_SGF_SHIFT	24 | 
 | 296 | #define FIFOLDST_SGF_MASK	(1 << FIFOLDST_SGF_SHIFT) | 
 | 297 | #define FIFOLDST_VLF_MASK	(1 << FIFOLDST_SGF_SHIFT) | 
 | 298 | #define FIFOLDST_SGF		(1 << FIFOLDST_SGF_SHIFT) | 
 | 299 | #define FIFOLDST_VLF		(1 << FIFOLDST_SGF_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 300 |  | 
 | 301 | /* Immediate - Data follows command in descriptor */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 302 | #define FIFOLD_IMM_SHIFT	23 | 
 | 303 | #define FIFOLD_IMM_MASK		(1 << FIFOLD_IMM_SHIFT) | 
 | 304 | #define FIFOLD_IMM		(1 << FIFOLD_IMM_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 305 |  | 
 | 306 | /* Continue - Not the last FIFO store to come */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 307 | #define FIFOST_CONT_SHIFT	23 | 
 | 308 | #define FIFOST_CONT_MASK	(1 << FIFOST_CONT_SHIFT) | 
 | 309 | #define FIFOST_CONT_MASK	(1 << FIFOST_CONT_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 310 |  | 
 | 311 | /* | 
 | 312 |  * Extended Length - use 32-bit extended length that | 
 | 313 |  * follows the pointer field. Illegal with IMM set | 
 | 314 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 315 | #define FIFOLDST_EXT_SHIFT	22 | 
 | 316 | #define FIFOLDST_EXT_MASK	(1 << FIFOLDST_EXT_SHIFT) | 
 | 317 | #define FIFOLDST_EXT		(1 << FIFOLDST_EXT_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 318 |  | 
 | 319 | /* Input data type.*/ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 320 | #define FIFOLD_TYPE_SHIFT	16 | 
 | 321 | #define FIFOLD_CONT_TYPE_SHIFT	19 /* shift past last-flush bits */ | 
 | 322 | #define FIFOLD_TYPE_MASK	(0x3f << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 323 |  | 
 | 324 | /* PK types */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 325 | #define FIFOLD_TYPE_PK		(0x00 << FIFOLD_TYPE_SHIFT) | 
 | 326 | #define FIFOLD_TYPE_PK_MASK	(0x30 << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 327 | #define FIFOLD_TYPE_PK_TYPEMASK (0x0f << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 328 | #define FIFOLD_TYPE_PK_A0	(0x00 << FIFOLD_TYPE_SHIFT) | 
 | 329 | #define FIFOLD_TYPE_PK_A1	(0x01 << FIFOLD_TYPE_SHIFT) | 
 | 330 | #define FIFOLD_TYPE_PK_A2	(0x02 << FIFOLD_TYPE_SHIFT) | 
 | 331 | #define FIFOLD_TYPE_PK_A3	(0x03 << FIFOLD_TYPE_SHIFT) | 
 | 332 | #define FIFOLD_TYPE_PK_B0	(0x04 << FIFOLD_TYPE_SHIFT) | 
 | 333 | #define FIFOLD_TYPE_PK_B1	(0x05 << FIFOLD_TYPE_SHIFT) | 
 | 334 | #define FIFOLD_TYPE_PK_B2	(0x06 << FIFOLD_TYPE_SHIFT) | 
 | 335 | #define FIFOLD_TYPE_PK_B3	(0x07 << FIFOLD_TYPE_SHIFT) | 
 | 336 | #define FIFOLD_TYPE_PK_N	(0x08 << FIFOLD_TYPE_SHIFT) | 
 | 337 | #define FIFOLD_TYPE_PK_A	(0x0c << FIFOLD_TYPE_SHIFT) | 
 | 338 | #define FIFOLD_TYPE_PK_B	(0x0d << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 339 |  | 
 | 340 | /* Other types. Need to OR in last/flush bits as desired */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 341 | #define FIFOLD_TYPE_MSG_MASK	(0x38 << FIFOLD_TYPE_SHIFT) | 
 | 342 | #define FIFOLD_TYPE_MSG		(0x10 << FIFOLD_TYPE_SHIFT) | 
 | 343 | #define FIFOLD_TYPE_MSG1OUT2	(0x18 << FIFOLD_TYPE_SHIFT) | 
 | 344 | #define FIFOLD_TYPE_IV		(0x20 << FIFOLD_TYPE_SHIFT) | 
 | 345 | #define FIFOLD_TYPE_BITDATA	(0x28 << FIFOLD_TYPE_SHIFT) | 
 | 346 | #define FIFOLD_TYPE_AAD		(0x30 << FIFOLD_TYPE_SHIFT) | 
 | 347 | #define FIFOLD_TYPE_ICV		(0x38 << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 348 |  | 
 | 349 | /* Last/Flush bits for use with "other" types above */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 350 | #define FIFOLD_TYPE_ACT_MASK	(0x07 << FIFOLD_TYPE_SHIFT) | 
 | 351 | #define FIFOLD_TYPE_NOACTION	(0x00 << FIFOLD_TYPE_SHIFT) | 
 | 352 | #define FIFOLD_TYPE_FLUSH1	(0x01 << FIFOLD_TYPE_SHIFT) | 
 | 353 | #define FIFOLD_TYPE_LAST1	(0x02 << FIFOLD_TYPE_SHIFT) | 
 | 354 | #define FIFOLD_TYPE_LAST2FLUSH	(0x03 << FIFOLD_TYPE_SHIFT) | 
 | 355 | #define FIFOLD_TYPE_LAST2	(0x04 << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 356 | #define FIFOLD_TYPE_LAST2FLUSH1 (0x05 << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 357 | #define FIFOLD_TYPE_LASTBOTH	(0x06 << FIFOLD_TYPE_SHIFT) | 
 | 358 | #define FIFOLD_TYPE_LASTBOTHFL	(0x07 << FIFOLD_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 359 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 360 | #define FIFOLDST_LEN_MASK	0xffff | 
 | 361 | #define FIFOLDST_EXT_LEN_MASK	0xffffffff | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 362 |  | 
 | 363 | /* Output data types */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 364 | #define FIFOST_TYPE_SHIFT	16 | 
 | 365 | #define FIFOST_TYPE_MASK	(0x3f << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 366 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 367 | #define FIFOST_TYPE_PKHA_A0	 (0x00 << FIFOST_TYPE_SHIFT) | 
 | 368 | #define FIFOST_TYPE_PKHA_A1	 (0x01 << FIFOST_TYPE_SHIFT) | 
 | 369 | #define FIFOST_TYPE_PKHA_A2	 (0x02 << FIFOST_TYPE_SHIFT) | 
 | 370 | #define FIFOST_TYPE_PKHA_A3	 (0x03 << FIFOST_TYPE_SHIFT) | 
 | 371 | #define FIFOST_TYPE_PKHA_B0	 (0x04 << FIFOST_TYPE_SHIFT) | 
 | 372 | #define FIFOST_TYPE_PKHA_B1	 (0x05 << FIFOST_TYPE_SHIFT) | 
 | 373 | #define FIFOST_TYPE_PKHA_B2	 (0x06 << FIFOST_TYPE_SHIFT) | 
 | 374 | #define FIFOST_TYPE_PKHA_B3	 (0x07 << FIFOST_TYPE_SHIFT) | 
 | 375 | #define FIFOST_TYPE_PKHA_N	 (0x08 << FIFOST_TYPE_SHIFT) | 
 | 376 | #define FIFOST_TYPE_PKHA_A	 (0x0c << FIFOST_TYPE_SHIFT) | 
 | 377 | #define FIFOST_TYPE_PKHA_B	 (0x0d << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 378 | #define FIFOST_TYPE_AF_SBOX_JKEK (0x10 << FIFOST_TYPE_SHIFT) | 
 | 379 | #define FIFOST_TYPE_AF_SBOX_TKEK (0x21 << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 380 | #define FIFOST_TYPE_PKHA_E_JKEK	 (0x22 << FIFOST_TYPE_SHIFT) | 
 | 381 | #define FIFOST_TYPE_PKHA_E_TKEK	 (0x23 << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 382 | #define FIFOST_TYPE_KEY_KEK	 (0x24 << FIFOST_TYPE_SHIFT) | 
 | 383 | #define FIFOST_TYPE_KEY_TKEK	 (0x25 << FIFOST_TYPE_SHIFT) | 
 | 384 | #define FIFOST_TYPE_SPLIT_KEK	 (0x26 << FIFOST_TYPE_SHIFT) | 
 | 385 | #define FIFOST_TYPE_SPLIT_TKEK	 (0x27 << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 386 | #define FIFOST_TYPE_OUTFIFO_KEK	 (0x28 << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 387 | #define FIFOST_TYPE_OUTFIFO_TKEK (0x29 << FIFOST_TYPE_SHIFT) | 
 | 388 | #define FIFOST_TYPE_MESSAGE_DATA (0x30 << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 389 | #define FIFOST_TYPE_RNGSTORE	 (0x34 << FIFOST_TYPE_SHIFT) | 
 | 390 | #define FIFOST_TYPE_RNGFIFO	 (0x35 << FIFOST_TYPE_SHIFT) | 
 | 391 | #define FIFOST_TYPE_SKIP	 (0x3f << FIFOST_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 392 |  | 
 | 393 | /* | 
 | 394 |  * OPERATION Command Constructs | 
 | 395 |  */ | 
 | 396 |  | 
 | 397 | /* Operation type selectors - OP TYPE */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 398 | #define OP_TYPE_SHIFT		24 | 
 | 399 | #define OP_TYPE_MASK		(0x07 << OP_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 400 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 401 | #define OP_TYPE_UNI_PROTOCOL	(0x00 << OP_TYPE_SHIFT) | 
 | 402 | #define OP_TYPE_PK		(0x01 << OP_TYPE_SHIFT) | 
 | 403 | #define OP_TYPE_CLASS1_ALG	(0x02 << OP_TYPE_SHIFT) | 
 | 404 | #define OP_TYPE_CLASS2_ALG	(0x04 << OP_TYPE_SHIFT) | 
 | 405 | #define OP_TYPE_DECAP_PROTOCOL	(0x06 << OP_TYPE_SHIFT) | 
 | 406 | #define OP_TYPE_ENCAP_PROTOCOL	(0x07 << OP_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 407 |  | 
 | 408 | /* ProtocolID selectors - PROTID */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 409 | #define OP_PCLID_SHIFT		16 | 
 | 410 | #define OP_PCLID_MASK		(0xff << 16) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 411 |  | 
 | 412 | /* Assuming OP_TYPE = OP_TYPE_UNI_PROTOCOL */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 413 | #define OP_PCLID_IKEV1_PRF	(0x01 << OP_PCLID_SHIFT) | 
 | 414 | #define OP_PCLID_IKEV2_PRF	(0x02 << OP_PCLID_SHIFT) | 
 | 415 | #define OP_PCLID_SSL30_PRF	(0x08 << OP_PCLID_SHIFT) | 
 | 416 | #define OP_PCLID_TLS10_PRF	(0x09 << OP_PCLID_SHIFT) | 
 | 417 | #define OP_PCLID_TLS11_PRF	(0x0a << OP_PCLID_SHIFT) | 
 | 418 | #define OP_PCLID_DTLS10_PRF	(0x0c << OP_PCLID_SHIFT) | 
 | 419 | #define OP_PCLID_PRF		(0x06 << OP_PCLID_SHIFT) | 
 | 420 | #define OP_PCLID_BLOB		(0x0d << OP_PCLID_SHIFT) | 
 | 421 | #define OP_PCLID_SECRETKEY	(0x11 << OP_PCLID_SHIFT) | 
 | 422 | #define OP_PCLID_PUBLICKEYPAIR	(0x14 << OP_PCLID_SHIFT) | 
 | 423 | #define OP_PCLID_DSASIGN	(0x15 << OP_PCLID_SHIFT) | 
 | 424 | #define OP_PCLID_DSAVERIFY	(0x16 << OP_PCLID_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 425 |  | 
 | 426 | /* Assuming OP_TYPE = OP_TYPE_DECAP_PROTOCOL/ENCAP_PROTOCOL */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 427 | #define OP_PCLID_IPSEC		(0x01 << OP_PCLID_SHIFT) | 
 | 428 | #define OP_PCLID_SRTP		(0x02 << OP_PCLID_SHIFT) | 
 | 429 | #define OP_PCLID_MACSEC		(0x03 << OP_PCLID_SHIFT) | 
 | 430 | #define OP_PCLID_WIFI		(0x04 << OP_PCLID_SHIFT) | 
 | 431 | #define OP_PCLID_WIMAX		(0x05 << OP_PCLID_SHIFT) | 
 | 432 | #define OP_PCLID_SSL30		(0x08 << OP_PCLID_SHIFT) | 
 | 433 | #define OP_PCLID_TLS10		(0x09 << OP_PCLID_SHIFT) | 
 | 434 | #define OP_PCLID_TLS11		(0x0a << OP_PCLID_SHIFT) | 
 | 435 | #define OP_PCLID_TLS12		(0x0b << OP_PCLID_SHIFT) | 
 | 436 | #define OP_PCLID_DTLS		(0x0c << OP_PCLID_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 437 |  | 
 | 438 | /* | 
 | 439 |  * ProtocolInfo selectors | 
 | 440 |  */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 441 | #define OP_PCLINFO_MASK				 0xffff | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 442 |  | 
 | 443 | /* for OP_PCLID_IPSEC */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 444 | #define OP_PCL_IPSEC_CIPHER_MASK		 0xff00 | 
 | 445 | #define OP_PCL_IPSEC_AUTH_MASK			 0x00ff | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 446 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 447 | #define OP_PCL_IPSEC_DES_IV64			 0x0100 | 
 | 448 | #define OP_PCL_IPSEC_DES			 0x0200 | 
 | 449 | #define OP_PCL_IPSEC_3DES			 0x0300 | 
 | 450 | #define OP_PCL_IPSEC_AES_CBC			 0x0c00 | 
 | 451 | #define OP_PCL_IPSEC_AES_CTR			 0x0d00 | 
 | 452 | #define OP_PCL_IPSEC_AES_XTS			 0x1600 | 
 | 453 | #define OP_PCL_IPSEC_AES_CCM8			 0x0e00 | 
 | 454 | #define OP_PCL_IPSEC_AES_CCM12			 0x0f00 | 
 | 455 | #define OP_PCL_IPSEC_AES_CCM16			 0x1000 | 
 | 456 | #define OP_PCL_IPSEC_AES_GCM8			 0x1200 | 
 | 457 | #define OP_PCL_IPSEC_AES_GCM12			 0x1300 | 
 | 458 | #define OP_PCL_IPSEC_AES_GCM16			 0x1400 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 459 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 460 | #define OP_PCL_IPSEC_HMAC_NULL			 0x0000 | 
 | 461 | #define OP_PCL_IPSEC_HMAC_MD5_96		 0x0001 | 
 | 462 | #define OP_PCL_IPSEC_HMAC_SHA1_96		 0x0002 | 
 | 463 | #define OP_PCL_IPSEC_AES_XCBC_MAC_96		 0x0005 | 
 | 464 | #define OP_PCL_IPSEC_HMAC_MD5_128		 0x0006 | 
 | 465 | #define OP_PCL_IPSEC_HMAC_SHA1_160		 0x0007 | 
 | 466 | #define OP_PCL_IPSEC_HMAC_SHA2_256_128		 0x000c | 
 | 467 | #define OP_PCL_IPSEC_HMAC_SHA2_384_192		 0x000d | 
 | 468 | #define OP_PCL_IPSEC_HMAC_SHA2_512_256		 0x000e | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 469 |  | 
 | 470 | /* For SRTP - OP_PCLID_SRTP */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 471 | #define OP_PCL_SRTP_CIPHER_MASK			 0xff00 | 
 | 472 | #define OP_PCL_SRTP_AUTH_MASK			 0x00ff | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 473 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 474 | #define OP_PCL_SRTP_AES_CTR			 0x0d00 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 475 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 476 | #define OP_PCL_SRTP_HMAC_SHA1_160		 0x0007 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 477 |  | 
 | 478 | /* For SSL 3.0 - OP_PCLID_SSL30 */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 479 | #define OP_PCL_SSL30_AES_128_CBC_SHA		 0x002f | 
 | 480 | #define OP_PCL_SSL30_AES_128_CBC_SHA_2		 0x0030 | 
 | 481 | #define OP_PCL_SSL30_AES_128_CBC_SHA_3		 0x0031 | 
 | 482 | #define OP_PCL_SSL30_AES_128_CBC_SHA_4		 0x0032 | 
 | 483 | #define OP_PCL_SSL30_AES_128_CBC_SHA_5		 0x0033 | 
 | 484 | #define OP_PCL_SSL30_AES_128_CBC_SHA_6		 0x0034 | 
 | 485 | #define OP_PCL_SSL30_AES_128_CBC_SHA_7		 0x008c | 
 | 486 | #define OP_PCL_SSL30_AES_128_CBC_SHA_8		 0x0090 | 
 | 487 | #define OP_PCL_SSL30_AES_128_CBC_SHA_9		 0x0094 | 
 | 488 | #define OP_PCL_SSL30_AES_128_CBC_SHA_10		 0xc004 | 
 | 489 | #define OP_PCL_SSL30_AES_128_CBC_SHA_11		 0xc009 | 
 | 490 | #define OP_PCL_SSL30_AES_128_CBC_SHA_12		 0xc00e | 
 | 491 | #define OP_PCL_SSL30_AES_128_CBC_SHA_13		 0xc013 | 
 | 492 | #define OP_PCL_SSL30_AES_128_CBC_SHA_14		 0xc018 | 
 | 493 | #define OP_PCL_SSL30_AES_128_CBC_SHA_15		 0xc01d | 
 | 494 | #define OP_PCL_SSL30_AES_128_CBC_SHA_16		 0xc01e | 
 | 495 | #define OP_PCL_SSL30_AES_128_CBC_SHA_17		 0xc01f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 496 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 497 | #define OP_PCL_SSL30_AES_256_CBC_SHA		 0x0035 | 
 | 498 | #define OP_PCL_SSL30_AES_256_CBC_SHA_2		 0x0036 | 
 | 499 | #define OP_PCL_SSL30_AES_256_CBC_SHA_3		 0x0037 | 
 | 500 | #define OP_PCL_SSL30_AES_256_CBC_SHA_4		 0x0038 | 
 | 501 | #define OP_PCL_SSL30_AES_256_CBC_SHA_5		 0x0039 | 
 | 502 | #define OP_PCL_SSL30_AES_256_CBC_SHA_6		 0x003a | 
 | 503 | #define OP_PCL_SSL30_AES_256_CBC_SHA_7		 0x008d | 
 | 504 | #define OP_PCL_SSL30_AES_256_CBC_SHA_8		 0x0091 | 
 | 505 | #define OP_PCL_SSL30_AES_256_CBC_SHA_9		 0x0095 | 
 | 506 | #define OP_PCL_SSL30_AES_256_CBC_SHA_10		 0xc005 | 
 | 507 | #define OP_PCL_SSL30_AES_256_CBC_SHA_11		 0xc00a | 
 | 508 | #define OP_PCL_SSL30_AES_256_CBC_SHA_12		 0xc00f | 
 | 509 | #define OP_PCL_SSL30_AES_256_CBC_SHA_13		 0xc014 | 
 | 510 | #define OP_PCL_SSL30_AES_256_CBC_SHA_14		 0xc019 | 
 | 511 | #define OP_PCL_SSL30_AES_256_CBC_SHA_15		 0xc020 | 
 | 512 | #define OP_PCL_SSL30_AES_256_CBC_SHA_16		 0xc021 | 
 | 513 | #define OP_PCL_SSL30_AES_256_CBC_SHA_17		 0xc022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 514 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 515 | #define OP_PCL_SSL30_3DES_EDE_CBC_MD5		 0x0023 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 516 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 517 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA		 0x001f | 
 | 518 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_2		 0x008b | 
 | 519 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_3		 0x008f | 
 | 520 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_4		 0x0093 | 
 | 521 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_5		 0x000a | 
 | 522 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_6		 0x000d | 
 | 523 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_7		 0x0010 | 
 | 524 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_8		 0x0013 | 
 | 525 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_9		 0x0016 | 
 | 526 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_10	 0x001b | 
 | 527 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_11	 0xc003 | 
 | 528 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_12	 0xc008 | 
 | 529 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_13	 0xc00d | 
 | 530 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_14	 0xc012 | 
 | 531 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_15	 0xc017 | 
 | 532 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_16	 0xc01a | 
 | 533 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_17	 0xc01b | 
 | 534 | #define OP_PCL_SSL30_3DES_EDE_CBC_SHA_18	 0xc01c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 535 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 536 | #define OP_PCL_SSL30_DES40_CBC_MD5		 0x0029 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 537 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 538 | #define OP_PCL_SSL30_DES_CBC_MD5		 0x0022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 539 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 540 | #define OP_PCL_SSL30_DES40_CBC_SHA		 0x0008 | 
 | 541 | #define OP_PCL_SSL30_DES40_CBC_SHA_2		 0x000b | 
 | 542 | #define OP_PCL_SSL30_DES40_CBC_SHA_3		 0x000e | 
 | 543 | #define OP_PCL_SSL30_DES40_CBC_SHA_4		 0x0011 | 
 | 544 | #define OP_PCL_SSL30_DES40_CBC_SHA_5		 0x0014 | 
 | 545 | #define OP_PCL_SSL30_DES40_CBC_SHA_6		 0x0019 | 
 | 546 | #define OP_PCL_SSL30_DES40_CBC_SHA_7		 0x0026 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 547 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 548 | #define OP_PCL_SSL30_DES_CBC_SHA		 0x001e | 
 | 549 | #define OP_PCL_SSL30_DES_CBC_SHA_2		 0x0009 | 
 | 550 | #define OP_PCL_SSL30_DES_CBC_SHA_3		 0x000c | 
 | 551 | #define OP_PCL_SSL30_DES_CBC_SHA_4		 0x000f | 
 | 552 | #define OP_PCL_SSL30_DES_CBC_SHA_5		 0x0012 | 
 | 553 | #define OP_PCL_SSL30_DES_CBC_SHA_6		 0x0015 | 
 | 554 | #define OP_PCL_SSL30_DES_CBC_SHA_7		 0x001a | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 555 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 556 | #define OP_PCL_SSL30_RC4_128_MD5		 0x0024 | 
 | 557 | #define OP_PCL_SSL30_RC4_128_MD5_2		 0x0004 | 
 | 558 | #define OP_PCL_SSL30_RC4_128_MD5_3		 0x0018 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 559 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 560 | #define OP_PCL_SSL30_RC4_40_MD5			 0x002b | 
 | 561 | #define OP_PCL_SSL30_RC4_40_MD5_2		 0x0003 | 
 | 562 | #define OP_PCL_SSL30_RC4_40_MD5_3		 0x0017 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 563 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 564 | #define OP_PCL_SSL30_RC4_128_SHA		 0x0020 | 
 | 565 | #define OP_PCL_SSL30_RC4_128_SHA_2		 0x008a | 
 | 566 | #define OP_PCL_SSL30_RC4_128_SHA_3		 0x008e | 
 | 567 | #define OP_PCL_SSL30_RC4_128_SHA_4		 0x0092 | 
 | 568 | #define OP_PCL_SSL30_RC4_128_SHA_5		 0x0005 | 
 | 569 | #define OP_PCL_SSL30_RC4_128_SHA_6		 0xc002 | 
 | 570 | #define OP_PCL_SSL30_RC4_128_SHA_7		 0xc007 | 
 | 571 | #define OP_PCL_SSL30_RC4_128_SHA_8		 0xc00c | 
 | 572 | #define OP_PCL_SSL30_RC4_128_SHA_9		 0xc011 | 
 | 573 | #define OP_PCL_SSL30_RC4_128_SHA_10		 0xc016 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 574 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 575 | #define OP_PCL_SSL30_RC4_40_SHA			 0x0028 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 576 |  | 
 | 577 |  | 
 | 578 | /* For TLS 1.0 - OP_PCLID_TLS10 */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 579 | #define OP_PCL_TLS10_AES_128_CBC_SHA		 0x002f | 
 | 580 | #define OP_PCL_TLS10_AES_128_CBC_SHA_2		 0x0030 | 
 | 581 | #define OP_PCL_TLS10_AES_128_CBC_SHA_3		 0x0031 | 
 | 582 | #define OP_PCL_TLS10_AES_128_CBC_SHA_4		 0x0032 | 
 | 583 | #define OP_PCL_TLS10_AES_128_CBC_SHA_5		 0x0033 | 
 | 584 | #define OP_PCL_TLS10_AES_128_CBC_SHA_6		 0x0034 | 
 | 585 | #define OP_PCL_TLS10_AES_128_CBC_SHA_7		 0x008c | 
 | 586 | #define OP_PCL_TLS10_AES_128_CBC_SHA_8		 0x0090 | 
 | 587 | #define OP_PCL_TLS10_AES_128_CBC_SHA_9		 0x0094 | 
 | 588 | #define OP_PCL_TLS10_AES_128_CBC_SHA_10		 0xc004 | 
 | 589 | #define OP_PCL_TLS10_AES_128_CBC_SHA_11		 0xc009 | 
 | 590 | #define OP_PCL_TLS10_AES_128_CBC_SHA_12		 0xc00e | 
 | 591 | #define OP_PCL_TLS10_AES_128_CBC_SHA_13		 0xc013 | 
 | 592 | #define OP_PCL_TLS10_AES_128_CBC_SHA_14		 0xc018 | 
 | 593 | #define OP_PCL_TLS10_AES_128_CBC_SHA_15		 0xc01d | 
 | 594 | #define OP_PCL_TLS10_AES_128_CBC_SHA_16		 0xc01e | 
 | 595 | #define OP_PCL_TLS10_AES_128_CBC_SHA_17		 0xc01f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 596 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 597 | #define OP_PCL_TLS10_AES_256_CBC_SHA		 0x0035 | 
 | 598 | #define OP_PCL_TLS10_AES_256_CBC_SHA_2		 0x0036 | 
 | 599 | #define OP_PCL_TLS10_AES_256_CBC_SHA_3		 0x0037 | 
 | 600 | #define OP_PCL_TLS10_AES_256_CBC_SHA_4		 0x0038 | 
 | 601 | #define OP_PCL_TLS10_AES_256_CBC_SHA_5		 0x0039 | 
 | 602 | #define OP_PCL_TLS10_AES_256_CBC_SHA_6		 0x003a | 
 | 603 | #define OP_PCL_TLS10_AES_256_CBC_SHA_7		 0x008d | 
 | 604 | #define OP_PCL_TLS10_AES_256_CBC_SHA_8		 0x0091 | 
 | 605 | #define OP_PCL_TLS10_AES_256_CBC_SHA_9		 0x0095 | 
 | 606 | #define OP_PCL_TLS10_AES_256_CBC_SHA_10		 0xc005 | 
 | 607 | #define OP_PCL_TLS10_AES_256_CBC_SHA_11		 0xc00a | 
 | 608 | #define OP_PCL_TLS10_AES_256_CBC_SHA_12		 0xc00f | 
 | 609 | #define OP_PCL_TLS10_AES_256_CBC_SHA_13		 0xc014 | 
 | 610 | #define OP_PCL_TLS10_AES_256_CBC_SHA_14		 0xc019 | 
 | 611 | #define OP_PCL_TLS10_AES_256_CBC_SHA_15		 0xc020 | 
 | 612 | #define OP_PCL_TLS10_AES_256_CBC_SHA_16		 0xc021 | 
 | 613 | #define OP_PCL_TLS10_AES_256_CBC_SHA_17		 0xc022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 614 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 615 | /* #define OP_PCL_TLS10_3DES_EDE_CBC_MD5	0x0023 */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 616 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 617 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA		 0x001f | 
 | 618 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_2		 0x008b | 
 | 619 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_3		 0x008f | 
 | 620 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_4		 0x0093 | 
 | 621 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_5		 0x000a | 
 | 622 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_6		 0x000d | 
 | 623 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_7		 0x0010 | 
 | 624 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_8		 0x0013 | 
 | 625 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_9		 0x0016 | 
 | 626 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_10	 0x001b | 
 | 627 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_11	 0xc003 | 
 | 628 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_12	 0xc008 | 
 | 629 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_13	 0xc00d | 
 | 630 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_14	 0xc012 | 
 | 631 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_15	 0xc017 | 
 | 632 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_16	 0xc01a | 
 | 633 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_17	 0xc01b | 
 | 634 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA_18	 0xc01c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 635 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 636 | #define OP_PCL_TLS10_DES40_CBC_MD5		 0x0029 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 637 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 638 | #define OP_PCL_TLS10_DES_CBC_MD5		 0x0022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 639 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 640 | #define OP_PCL_TLS10_DES40_CBC_SHA		 0x0008 | 
 | 641 | #define OP_PCL_TLS10_DES40_CBC_SHA_2		 0x000b | 
 | 642 | #define OP_PCL_TLS10_DES40_CBC_SHA_3		 0x000e | 
 | 643 | #define OP_PCL_TLS10_DES40_CBC_SHA_4		 0x0011 | 
 | 644 | #define OP_PCL_TLS10_DES40_CBC_SHA_5		 0x0014 | 
 | 645 | #define OP_PCL_TLS10_DES40_CBC_SHA_6		 0x0019 | 
 | 646 | #define OP_PCL_TLS10_DES40_CBC_SHA_7		 0x0026 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 647 |  | 
 | 648 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 649 | #define OP_PCL_TLS10_DES_CBC_SHA		 0x001e | 
 | 650 | #define OP_PCL_TLS10_DES_CBC_SHA_2		 0x0009 | 
 | 651 | #define OP_PCL_TLS10_DES_CBC_SHA_3		 0x000c | 
 | 652 | #define OP_PCL_TLS10_DES_CBC_SHA_4		 0x000f | 
 | 653 | #define OP_PCL_TLS10_DES_CBC_SHA_5		 0x0012 | 
 | 654 | #define OP_PCL_TLS10_DES_CBC_SHA_6		 0x0015 | 
 | 655 | #define OP_PCL_TLS10_DES_CBC_SHA_7		 0x001a | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 656 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 657 | #define OP_PCL_TLS10_RC4_128_MD5		 0x0024 | 
 | 658 | #define OP_PCL_TLS10_RC4_128_MD5_2		 0x0004 | 
 | 659 | #define OP_PCL_TLS10_RC4_128_MD5_3		 0x0018 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 660 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 661 | #define OP_PCL_TLS10_RC4_40_MD5			 0x002b | 
 | 662 | #define OP_PCL_TLS10_RC4_40_MD5_2		 0x0003 | 
 | 663 | #define OP_PCL_TLS10_RC4_40_MD5_3		 0x0017 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 664 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 665 | #define OP_PCL_TLS10_RC4_128_SHA		 0x0020 | 
 | 666 | #define OP_PCL_TLS10_RC4_128_SHA_2		 0x008a | 
 | 667 | #define OP_PCL_TLS10_RC4_128_SHA_3		 0x008e | 
 | 668 | #define OP_PCL_TLS10_RC4_128_SHA_4		 0x0092 | 
 | 669 | #define OP_PCL_TLS10_RC4_128_SHA_5		 0x0005 | 
 | 670 | #define OP_PCL_TLS10_RC4_128_SHA_6		 0xc002 | 
 | 671 | #define OP_PCL_TLS10_RC4_128_SHA_7		 0xc007 | 
 | 672 | #define OP_PCL_TLS10_RC4_128_SHA_8		 0xc00c | 
 | 673 | #define OP_PCL_TLS10_RC4_128_SHA_9		 0xc011 | 
 | 674 | #define OP_PCL_TLS10_RC4_128_SHA_10		 0xc016 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 675 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 676 | #define OP_PCL_TLS10_RC4_40_SHA			 0x0028 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 677 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 678 | #define OP_PCL_TLS10_3DES_EDE_CBC_MD5		 0xff23 | 
 | 679 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA160	 0xff30 | 
 | 680 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA224	 0xff34 | 
 | 681 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA256	 0xff36 | 
 | 682 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA384	 0xff33 | 
 | 683 | #define OP_PCL_TLS10_3DES_EDE_CBC_SHA512	 0xff35 | 
 | 684 | #define OP_PCL_TLS10_AES_128_CBC_SHA160		 0xff80 | 
 | 685 | #define OP_PCL_TLS10_AES_128_CBC_SHA224		 0xff84 | 
 | 686 | #define OP_PCL_TLS10_AES_128_CBC_SHA256		 0xff86 | 
 | 687 | #define OP_PCL_TLS10_AES_128_CBC_SHA384		 0xff83 | 
 | 688 | #define OP_PCL_TLS10_AES_128_CBC_SHA512		 0xff85 | 
 | 689 | #define OP_PCL_TLS10_AES_192_CBC_SHA160		 0xff20 | 
 | 690 | #define OP_PCL_TLS10_AES_192_CBC_SHA224		 0xff24 | 
 | 691 | #define OP_PCL_TLS10_AES_192_CBC_SHA256		 0xff26 | 
 | 692 | #define OP_PCL_TLS10_AES_192_CBC_SHA384		 0xff23 | 
 | 693 | #define OP_PCL_TLS10_AES_192_CBC_SHA512		 0xff25 | 
 | 694 | #define OP_PCL_TLS10_AES_256_CBC_SHA160		 0xff60 | 
 | 695 | #define OP_PCL_TLS10_AES_256_CBC_SHA224		 0xff64 | 
 | 696 | #define OP_PCL_TLS10_AES_256_CBC_SHA256		 0xff66 | 
 | 697 | #define OP_PCL_TLS10_AES_256_CBC_SHA384		 0xff63 | 
 | 698 | #define OP_PCL_TLS10_AES_256_CBC_SHA512		 0xff65 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 699 |  | 
 | 700 |  | 
 | 701 |  | 
 | 702 | /* For TLS 1.1 - OP_PCLID_TLS11 */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 703 | #define OP_PCL_TLS11_AES_128_CBC_SHA		 0x002f | 
 | 704 | #define OP_PCL_TLS11_AES_128_CBC_SHA_2		 0x0030 | 
 | 705 | #define OP_PCL_TLS11_AES_128_CBC_SHA_3		 0x0031 | 
 | 706 | #define OP_PCL_TLS11_AES_128_CBC_SHA_4		 0x0032 | 
 | 707 | #define OP_PCL_TLS11_AES_128_CBC_SHA_5		 0x0033 | 
 | 708 | #define OP_PCL_TLS11_AES_128_CBC_SHA_6		 0x0034 | 
 | 709 | #define OP_PCL_TLS11_AES_128_CBC_SHA_7		 0x008c | 
 | 710 | #define OP_PCL_TLS11_AES_128_CBC_SHA_8		 0x0090 | 
 | 711 | #define OP_PCL_TLS11_AES_128_CBC_SHA_9		 0x0094 | 
 | 712 | #define OP_PCL_TLS11_AES_128_CBC_SHA_10		 0xc004 | 
 | 713 | #define OP_PCL_TLS11_AES_128_CBC_SHA_11		 0xc009 | 
 | 714 | #define OP_PCL_TLS11_AES_128_CBC_SHA_12		 0xc00e | 
 | 715 | #define OP_PCL_TLS11_AES_128_CBC_SHA_13		 0xc013 | 
 | 716 | #define OP_PCL_TLS11_AES_128_CBC_SHA_14		 0xc018 | 
 | 717 | #define OP_PCL_TLS11_AES_128_CBC_SHA_15		 0xc01d | 
 | 718 | #define OP_PCL_TLS11_AES_128_CBC_SHA_16		 0xc01e | 
 | 719 | #define OP_PCL_TLS11_AES_128_CBC_SHA_17		 0xc01f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 720 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 721 | #define OP_PCL_TLS11_AES_256_CBC_SHA		 0x0035 | 
 | 722 | #define OP_PCL_TLS11_AES_256_CBC_SHA_2		 0x0036 | 
 | 723 | #define OP_PCL_TLS11_AES_256_CBC_SHA_3		 0x0037 | 
 | 724 | #define OP_PCL_TLS11_AES_256_CBC_SHA_4		 0x0038 | 
 | 725 | #define OP_PCL_TLS11_AES_256_CBC_SHA_5		 0x0039 | 
 | 726 | #define OP_PCL_TLS11_AES_256_CBC_SHA_6		 0x003a | 
 | 727 | #define OP_PCL_TLS11_AES_256_CBC_SHA_7		 0x008d | 
 | 728 | #define OP_PCL_TLS11_AES_256_CBC_SHA_8		 0x0091 | 
 | 729 | #define OP_PCL_TLS11_AES_256_CBC_SHA_9		 0x0095 | 
 | 730 | #define OP_PCL_TLS11_AES_256_CBC_SHA_10		 0xc005 | 
 | 731 | #define OP_PCL_TLS11_AES_256_CBC_SHA_11		 0xc00a | 
 | 732 | #define OP_PCL_TLS11_AES_256_CBC_SHA_12		 0xc00f | 
 | 733 | #define OP_PCL_TLS11_AES_256_CBC_SHA_13		 0xc014 | 
 | 734 | #define OP_PCL_TLS11_AES_256_CBC_SHA_14		 0xc019 | 
 | 735 | #define OP_PCL_TLS11_AES_256_CBC_SHA_15		 0xc020 | 
 | 736 | #define OP_PCL_TLS11_AES_256_CBC_SHA_16		 0xc021 | 
 | 737 | #define OP_PCL_TLS11_AES_256_CBC_SHA_17		 0xc022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 738 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 739 | /* #define OP_PCL_TLS11_3DES_EDE_CBC_MD5	0x0023 */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 740 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 741 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA		 0x001f | 
 | 742 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_2		 0x008b | 
 | 743 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_3		 0x008f | 
 | 744 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_4		 0x0093 | 
 | 745 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_5		 0x000a | 
 | 746 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_6		 0x000d | 
 | 747 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_7		 0x0010 | 
 | 748 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_8		 0x0013 | 
 | 749 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_9		 0x0016 | 
 | 750 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_10	 0x001b | 
 | 751 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_11	 0xc003 | 
 | 752 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_12	 0xc008 | 
 | 753 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_13	 0xc00d | 
 | 754 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_14	 0xc012 | 
 | 755 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_15	 0xc017 | 
 | 756 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_16	 0xc01a | 
 | 757 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_17	 0xc01b | 
 | 758 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA_18	 0xc01c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 759 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 760 | #define OP_PCL_TLS11_DES40_CBC_MD5		 0x0029 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 761 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 762 | #define OP_PCL_TLS11_DES_CBC_MD5		 0x0022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 763 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 764 | #define OP_PCL_TLS11_DES40_CBC_SHA		 0x0008 | 
 | 765 | #define OP_PCL_TLS11_DES40_CBC_SHA_2		 0x000b | 
 | 766 | #define OP_PCL_TLS11_DES40_CBC_SHA_3		 0x000e | 
 | 767 | #define OP_PCL_TLS11_DES40_CBC_SHA_4		 0x0011 | 
 | 768 | #define OP_PCL_TLS11_DES40_CBC_SHA_5		 0x0014 | 
 | 769 | #define OP_PCL_TLS11_DES40_CBC_SHA_6		 0x0019 | 
 | 770 | #define OP_PCL_TLS11_DES40_CBC_SHA_7		 0x0026 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 771 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 772 | #define OP_PCL_TLS11_DES_CBC_SHA		 0x001e | 
 | 773 | #define OP_PCL_TLS11_DES_CBC_SHA_2		 0x0009 | 
 | 774 | #define OP_PCL_TLS11_DES_CBC_SHA_3		 0x000c | 
 | 775 | #define OP_PCL_TLS11_DES_CBC_SHA_4		 0x000f | 
 | 776 | #define OP_PCL_TLS11_DES_CBC_SHA_5		 0x0012 | 
 | 777 | #define OP_PCL_TLS11_DES_CBC_SHA_6		 0x0015 | 
 | 778 | #define OP_PCL_TLS11_DES_CBC_SHA_7		 0x001a | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 779 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 780 | #define OP_PCL_TLS11_RC4_128_MD5		 0x0024 | 
 | 781 | #define OP_PCL_TLS11_RC4_128_MD5_2		 0x0004 | 
 | 782 | #define OP_PCL_TLS11_RC4_128_MD5_3		 0x0018 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 783 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 784 | #define OP_PCL_TLS11_RC4_40_MD5			 0x002b | 
 | 785 | #define OP_PCL_TLS11_RC4_40_MD5_2		 0x0003 | 
 | 786 | #define OP_PCL_TLS11_RC4_40_MD5_3		 0x0017 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 787 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 788 | #define OP_PCL_TLS11_RC4_128_SHA		 0x0020 | 
 | 789 | #define OP_PCL_TLS11_RC4_128_SHA_2		 0x008a | 
 | 790 | #define OP_PCL_TLS11_RC4_128_SHA_3		 0x008e | 
 | 791 | #define OP_PCL_TLS11_RC4_128_SHA_4		 0x0092 | 
 | 792 | #define OP_PCL_TLS11_RC4_128_SHA_5		 0x0005 | 
 | 793 | #define OP_PCL_TLS11_RC4_128_SHA_6		 0xc002 | 
 | 794 | #define OP_PCL_TLS11_RC4_128_SHA_7		 0xc007 | 
 | 795 | #define OP_PCL_TLS11_RC4_128_SHA_8		 0xc00c | 
 | 796 | #define OP_PCL_TLS11_RC4_128_SHA_9		 0xc011 | 
 | 797 | #define OP_PCL_TLS11_RC4_128_SHA_10		 0xc016 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 798 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 799 | #define OP_PCL_TLS11_RC4_40_SHA			 0x0028 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 800 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 801 | #define OP_PCL_TLS11_3DES_EDE_CBC_MD5		 0xff23 | 
 | 802 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA160	 0xff30 | 
 | 803 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA224	 0xff34 | 
 | 804 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA256	 0xff36 | 
 | 805 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA384	 0xff33 | 
 | 806 | #define OP_PCL_TLS11_3DES_EDE_CBC_SHA512	 0xff35 | 
 | 807 | #define OP_PCL_TLS11_AES_128_CBC_SHA160		 0xff80 | 
 | 808 | #define OP_PCL_TLS11_AES_128_CBC_SHA224		 0xff84 | 
 | 809 | #define OP_PCL_TLS11_AES_128_CBC_SHA256		 0xff86 | 
 | 810 | #define OP_PCL_TLS11_AES_128_CBC_SHA384		 0xff83 | 
 | 811 | #define OP_PCL_TLS11_AES_128_CBC_SHA512		 0xff85 | 
 | 812 | #define OP_PCL_TLS11_AES_192_CBC_SHA160		 0xff20 | 
 | 813 | #define OP_PCL_TLS11_AES_192_CBC_SHA224		 0xff24 | 
 | 814 | #define OP_PCL_TLS11_AES_192_CBC_SHA256		 0xff26 | 
 | 815 | #define OP_PCL_TLS11_AES_192_CBC_SHA384		 0xff23 | 
 | 816 | #define OP_PCL_TLS11_AES_192_CBC_SHA512		 0xff25 | 
 | 817 | #define OP_PCL_TLS11_AES_256_CBC_SHA160		 0xff60 | 
 | 818 | #define OP_PCL_TLS11_AES_256_CBC_SHA224		 0xff64 | 
 | 819 | #define OP_PCL_TLS11_AES_256_CBC_SHA256		 0xff66 | 
 | 820 | #define OP_PCL_TLS11_AES_256_CBC_SHA384		 0xff63 | 
 | 821 | #define OP_PCL_TLS11_AES_256_CBC_SHA512		 0xff65 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 822 |  | 
 | 823 |  | 
 | 824 | /* For TLS 1.2 - OP_PCLID_TLS12 */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 825 | #define OP_PCL_TLS12_AES_128_CBC_SHA		 0x002f | 
 | 826 | #define OP_PCL_TLS12_AES_128_CBC_SHA_2		 0x0030 | 
 | 827 | #define OP_PCL_TLS12_AES_128_CBC_SHA_3		 0x0031 | 
 | 828 | #define OP_PCL_TLS12_AES_128_CBC_SHA_4		 0x0032 | 
 | 829 | #define OP_PCL_TLS12_AES_128_CBC_SHA_5		 0x0033 | 
 | 830 | #define OP_PCL_TLS12_AES_128_CBC_SHA_6		 0x0034 | 
 | 831 | #define OP_PCL_TLS12_AES_128_CBC_SHA_7		 0x008c | 
 | 832 | #define OP_PCL_TLS12_AES_128_CBC_SHA_8		 0x0090 | 
 | 833 | #define OP_PCL_TLS12_AES_128_CBC_SHA_9		 0x0094 | 
 | 834 | #define OP_PCL_TLS12_AES_128_CBC_SHA_10		 0xc004 | 
 | 835 | #define OP_PCL_TLS12_AES_128_CBC_SHA_11		 0xc009 | 
 | 836 | #define OP_PCL_TLS12_AES_128_CBC_SHA_12		 0xc00e | 
 | 837 | #define OP_PCL_TLS12_AES_128_CBC_SHA_13		 0xc013 | 
 | 838 | #define OP_PCL_TLS12_AES_128_CBC_SHA_14		 0xc018 | 
 | 839 | #define OP_PCL_TLS12_AES_128_CBC_SHA_15		 0xc01d | 
 | 840 | #define OP_PCL_TLS12_AES_128_CBC_SHA_16		 0xc01e | 
 | 841 | #define OP_PCL_TLS12_AES_128_CBC_SHA_17		 0xc01f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 842 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 843 | #define OP_PCL_TLS12_AES_256_CBC_SHA		 0x0035 | 
 | 844 | #define OP_PCL_TLS12_AES_256_CBC_SHA_2		 0x0036 | 
 | 845 | #define OP_PCL_TLS12_AES_256_CBC_SHA_3		 0x0037 | 
 | 846 | #define OP_PCL_TLS12_AES_256_CBC_SHA_4		 0x0038 | 
 | 847 | #define OP_PCL_TLS12_AES_256_CBC_SHA_5		 0x0039 | 
 | 848 | #define OP_PCL_TLS12_AES_256_CBC_SHA_6		 0x003a | 
 | 849 | #define OP_PCL_TLS12_AES_256_CBC_SHA_7		 0x008d | 
 | 850 | #define OP_PCL_TLS12_AES_256_CBC_SHA_8		 0x0091 | 
 | 851 | #define OP_PCL_TLS12_AES_256_CBC_SHA_9		 0x0095 | 
 | 852 | #define OP_PCL_TLS12_AES_256_CBC_SHA_10		 0xc005 | 
 | 853 | #define OP_PCL_TLS12_AES_256_CBC_SHA_11		 0xc00a | 
 | 854 | #define OP_PCL_TLS12_AES_256_CBC_SHA_12		 0xc00f | 
 | 855 | #define OP_PCL_TLS12_AES_256_CBC_SHA_13		 0xc014 | 
 | 856 | #define OP_PCL_TLS12_AES_256_CBC_SHA_14		 0xc019 | 
 | 857 | #define OP_PCL_TLS12_AES_256_CBC_SHA_15		 0xc020 | 
 | 858 | #define OP_PCL_TLS12_AES_256_CBC_SHA_16		 0xc021 | 
 | 859 | #define OP_PCL_TLS12_AES_256_CBC_SHA_17		 0xc022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 860 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 861 | /* #define OP_PCL_TLS12_3DES_EDE_CBC_MD5	0x0023 */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 862 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 863 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA		 0x001f | 
 | 864 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_2		 0x008b | 
 | 865 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_3		 0x008f | 
 | 866 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_4		 0x0093 | 
 | 867 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_5		 0x000a | 
 | 868 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_6		 0x000d | 
 | 869 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_7		 0x0010 | 
 | 870 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_8		 0x0013 | 
 | 871 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_9		 0x0016 | 
 | 872 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_10	 0x001b | 
 | 873 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_11	 0xc003 | 
 | 874 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_12	 0xc008 | 
 | 875 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_13	 0xc00d | 
 | 876 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_14	 0xc012 | 
 | 877 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_15	 0xc017 | 
 | 878 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_16	 0xc01a | 
 | 879 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_17	 0xc01b | 
 | 880 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA_18	 0xc01c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 881 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 882 | #define OP_PCL_TLS12_DES40_CBC_MD5		 0x0029 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 883 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 884 | #define OP_PCL_TLS12_DES_CBC_MD5		 0x0022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 885 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 886 | #define OP_PCL_TLS12_DES40_CBC_SHA		 0x0008 | 
 | 887 | #define OP_PCL_TLS12_DES40_CBC_SHA_2		 0x000b | 
 | 888 | #define OP_PCL_TLS12_DES40_CBC_SHA_3		 0x000e | 
 | 889 | #define OP_PCL_TLS12_DES40_CBC_SHA_4		 0x0011 | 
 | 890 | #define OP_PCL_TLS12_DES40_CBC_SHA_5		 0x0014 | 
 | 891 | #define OP_PCL_TLS12_DES40_CBC_SHA_6		 0x0019 | 
 | 892 | #define OP_PCL_TLS12_DES40_CBC_SHA_7		 0x0026 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 893 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 894 | #define OP_PCL_TLS12_DES_CBC_SHA		 0x001e | 
 | 895 | #define OP_PCL_TLS12_DES_CBC_SHA_2		 0x0009 | 
 | 896 | #define OP_PCL_TLS12_DES_CBC_SHA_3		 0x000c | 
 | 897 | #define OP_PCL_TLS12_DES_CBC_SHA_4		 0x000f | 
 | 898 | #define OP_PCL_TLS12_DES_CBC_SHA_5		 0x0012 | 
 | 899 | #define OP_PCL_TLS12_DES_CBC_SHA_6		 0x0015 | 
 | 900 | #define OP_PCL_TLS12_DES_CBC_SHA_7		 0x001a | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 901 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 902 | #define OP_PCL_TLS12_RC4_128_MD5		 0x0024 | 
 | 903 | #define OP_PCL_TLS12_RC4_128_MD5_2		 0x0004 | 
 | 904 | #define OP_PCL_TLS12_RC4_128_MD5_3		 0x0018 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 905 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 906 | #define OP_PCL_TLS12_RC4_40_MD5			 0x002b | 
 | 907 | #define OP_PCL_TLS12_RC4_40_MD5_2		 0x0003 | 
 | 908 | #define OP_PCL_TLS12_RC4_40_MD5_3		 0x0017 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 909 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 910 | #define OP_PCL_TLS12_RC4_128_SHA		 0x0020 | 
 | 911 | #define OP_PCL_TLS12_RC4_128_SHA_2		 0x008a | 
 | 912 | #define OP_PCL_TLS12_RC4_128_SHA_3		 0x008e | 
 | 913 | #define OP_PCL_TLS12_RC4_128_SHA_4		 0x0092 | 
 | 914 | #define OP_PCL_TLS12_RC4_128_SHA_5		 0x0005 | 
 | 915 | #define OP_PCL_TLS12_RC4_128_SHA_6		 0xc002 | 
 | 916 | #define OP_PCL_TLS12_RC4_128_SHA_7		 0xc007 | 
 | 917 | #define OP_PCL_TLS12_RC4_128_SHA_8		 0xc00c | 
 | 918 | #define OP_PCL_TLS12_RC4_128_SHA_9		 0xc011 | 
 | 919 | #define OP_PCL_TLS12_RC4_128_SHA_10		 0xc016 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 920 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 921 | #define OP_PCL_TLS12_RC4_40_SHA			 0x0028 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 922 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 923 | /* #define OP_PCL_TLS12_AES_128_CBC_SHA256	0x003c */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 924 | #define OP_PCL_TLS12_AES_128_CBC_SHA256_2	 0x003e | 
 | 925 | #define OP_PCL_TLS12_AES_128_CBC_SHA256_3	 0x003f | 
 | 926 | #define OP_PCL_TLS12_AES_128_CBC_SHA256_4	 0x0040 | 
 | 927 | #define OP_PCL_TLS12_AES_128_CBC_SHA256_5	 0x0067 | 
 | 928 | #define OP_PCL_TLS12_AES_128_CBC_SHA256_6	 0x006c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 929 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 930 | /* #define OP_PCL_TLS12_AES_256_CBC_SHA256	0x003d */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 931 | #define OP_PCL_TLS12_AES_256_CBC_SHA256_2	 0x0068 | 
 | 932 | #define OP_PCL_TLS12_AES_256_CBC_SHA256_3	 0x0069 | 
 | 933 | #define OP_PCL_TLS12_AES_256_CBC_SHA256_4	 0x006a | 
 | 934 | #define OP_PCL_TLS12_AES_256_CBC_SHA256_5	 0x006b | 
 | 935 | #define OP_PCL_TLS12_AES_256_CBC_SHA256_6	 0x006d | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 936 |  | 
 | 937 | /* AEAD_AES_xxx_CCM/GCM remain to be defined... */ | 
 | 938 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 939 | #define OP_PCL_TLS12_3DES_EDE_CBC_MD5		 0xff23 | 
 | 940 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA160	 0xff30 | 
 | 941 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA224	 0xff34 | 
 | 942 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA256	 0xff36 | 
 | 943 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA384	 0xff33 | 
 | 944 | #define OP_PCL_TLS12_3DES_EDE_CBC_SHA512	 0xff35 | 
 | 945 | #define OP_PCL_TLS12_AES_128_CBC_SHA160		 0xff80 | 
 | 946 | #define OP_PCL_TLS12_AES_128_CBC_SHA224		 0xff84 | 
 | 947 | #define OP_PCL_TLS12_AES_128_CBC_SHA256		 0xff86 | 
 | 948 | #define OP_PCL_TLS12_AES_128_CBC_SHA384		 0xff83 | 
 | 949 | #define OP_PCL_TLS12_AES_128_CBC_SHA512		 0xff85 | 
 | 950 | #define OP_PCL_TLS12_AES_192_CBC_SHA160		 0xff20 | 
 | 951 | #define OP_PCL_TLS12_AES_192_CBC_SHA224		 0xff24 | 
 | 952 | #define OP_PCL_TLS12_AES_192_CBC_SHA256		 0xff26 | 
 | 953 | #define OP_PCL_TLS12_AES_192_CBC_SHA384		 0xff23 | 
 | 954 | #define OP_PCL_TLS12_AES_192_CBC_SHA512		 0xff25 | 
 | 955 | #define OP_PCL_TLS12_AES_256_CBC_SHA160		 0xff60 | 
 | 956 | #define OP_PCL_TLS12_AES_256_CBC_SHA224		 0xff64 | 
 | 957 | #define OP_PCL_TLS12_AES_256_CBC_SHA256		 0xff66 | 
 | 958 | #define OP_PCL_TLS12_AES_256_CBC_SHA384		 0xff63 | 
 | 959 | #define OP_PCL_TLS12_AES_256_CBC_SHA512		 0xff65 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 960 |  | 
 | 961 | /* For DTLS - OP_PCLID_DTLS */ | 
 | 962 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 963 | #define OP_PCL_DTLS_AES_128_CBC_SHA		 0x002f | 
 | 964 | #define OP_PCL_DTLS_AES_128_CBC_SHA_2		 0x0030 | 
 | 965 | #define OP_PCL_DTLS_AES_128_CBC_SHA_3		 0x0031 | 
 | 966 | #define OP_PCL_DTLS_AES_128_CBC_SHA_4		 0x0032 | 
 | 967 | #define OP_PCL_DTLS_AES_128_CBC_SHA_5		 0x0033 | 
 | 968 | #define OP_PCL_DTLS_AES_128_CBC_SHA_6		 0x0034 | 
 | 969 | #define OP_PCL_DTLS_AES_128_CBC_SHA_7		 0x008c | 
 | 970 | #define OP_PCL_DTLS_AES_128_CBC_SHA_8		 0x0090 | 
 | 971 | #define OP_PCL_DTLS_AES_128_CBC_SHA_9		 0x0094 | 
 | 972 | #define OP_PCL_DTLS_AES_128_CBC_SHA_10		 0xc004 | 
 | 973 | #define OP_PCL_DTLS_AES_128_CBC_SHA_11		 0xc009 | 
 | 974 | #define OP_PCL_DTLS_AES_128_CBC_SHA_12		 0xc00e | 
 | 975 | #define OP_PCL_DTLS_AES_128_CBC_SHA_13		 0xc013 | 
 | 976 | #define OP_PCL_DTLS_AES_128_CBC_SHA_14		 0xc018 | 
 | 977 | #define OP_PCL_DTLS_AES_128_CBC_SHA_15		 0xc01d | 
 | 978 | #define OP_PCL_DTLS_AES_128_CBC_SHA_16		 0xc01e | 
 | 979 | #define OP_PCL_DTLS_AES_128_CBC_SHA_17		 0xc01f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 980 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 981 | #define OP_PCL_DTLS_AES_256_CBC_SHA		 0x0035 | 
 | 982 | #define OP_PCL_DTLS_AES_256_CBC_SHA_2		 0x0036 | 
 | 983 | #define OP_PCL_DTLS_AES_256_CBC_SHA_3		 0x0037 | 
 | 984 | #define OP_PCL_DTLS_AES_256_CBC_SHA_4		 0x0038 | 
 | 985 | #define OP_PCL_DTLS_AES_256_CBC_SHA_5		 0x0039 | 
 | 986 | #define OP_PCL_DTLS_AES_256_CBC_SHA_6		 0x003a | 
 | 987 | #define OP_PCL_DTLS_AES_256_CBC_SHA_7		 0x008d | 
 | 988 | #define OP_PCL_DTLS_AES_256_CBC_SHA_8		 0x0091 | 
 | 989 | #define OP_PCL_DTLS_AES_256_CBC_SHA_9		 0x0095 | 
 | 990 | #define OP_PCL_DTLS_AES_256_CBC_SHA_10		 0xc005 | 
 | 991 | #define OP_PCL_DTLS_AES_256_CBC_SHA_11		 0xc00a | 
 | 992 | #define OP_PCL_DTLS_AES_256_CBC_SHA_12		 0xc00f | 
 | 993 | #define OP_PCL_DTLS_AES_256_CBC_SHA_13		 0xc014 | 
 | 994 | #define OP_PCL_DTLS_AES_256_CBC_SHA_14		 0xc019 | 
 | 995 | #define OP_PCL_DTLS_AES_256_CBC_SHA_15		 0xc020 | 
 | 996 | #define OP_PCL_DTLS_AES_256_CBC_SHA_16		 0xc021 | 
 | 997 | #define OP_PCL_DTLS_AES_256_CBC_SHA_17		 0xc022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 998 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 999 | /* #define OP_PCL_DTLS_3DES_EDE_CBC_MD5		0x0023 */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1000 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1001 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA		 0x001f | 
 | 1002 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_2		 0x008b | 
 | 1003 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_3		 0x008f | 
 | 1004 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_4		 0x0093 | 
 | 1005 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_5		 0x000a | 
 | 1006 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_6		 0x000d | 
 | 1007 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_7		 0x0010 | 
 | 1008 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_8		 0x0013 | 
 | 1009 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_9		 0x0016 | 
 | 1010 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_10		 0x001b | 
 | 1011 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_11		 0xc003 | 
 | 1012 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_12		 0xc008 | 
 | 1013 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_13		 0xc00d | 
 | 1014 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_14		 0xc012 | 
 | 1015 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_15		 0xc017 | 
 | 1016 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_16		 0xc01a | 
 | 1017 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_17		 0xc01b | 
 | 1018 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA_18		 0xc01c | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1019 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1020 | #define OP_PCL_DTLS_DES40_CBC_MD5		 0x0029 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1021 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1022 | #define OP_PCL_DTLS_DES_CBC_MD5			 0x0022 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1023 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1024 | #define OP_PCL_DTLS_DES40_CBC_SHA		 0x0008 | 
 | 1025 | #define OP_PCL_DTLS_DES40_CBC_SHA_2		 0x000b | 
 | 1026 | #define OP_PCL_DTLS_DES40_CBC_SHA_3		 0x000e | 
 | 1027 | #define OP_PCL_DTLS_DES40_CBC_SHA_4		 0x0011 | 
 | 1028 | #define OP_PCL_DTLS_DES40_CBC_SHA_5		 0x0014 | 
 | 1029 | #define OP_PCL_DTLS_DES40_CBC_SHA_6		 0x0019 | 
 | 1030 | #define OP_PCL_DTLS_DES40_CBC_SHA_7		 0x0026 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1031 |  | 
 | 1032 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1033 | #define OP_PCL_DTLS_DES_CBC_SHA			 0x001e | 
 | 1034 | #define OP_PCL_DTLS_DES_CBC_SHA_2		 0x0009 | 
 | 1035 | #define OP_PCL_DTLS_DES_CBC_SHA_3		 0x000c | 
 | 1036 | #define OP_PCL_DTLS_DES_CBC_SHA_4		 0x000f | 
 | 1037 | #define OP_PCL_DTLS_DES_CBC_SHA_5		 0x0012 | 
 | 1038 | #define OP_PCL_DTLS_DES_CBC_SHA_6		 0x0015 | 
 | 1039 | #define OP_PCL_DTLS_DES_CBC_SHA_7		 0x001a | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1040 |  | 
 | 1041 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1042 | #define OP_PCL_DTLS_3DES_EDE_CBC_MD5		 0xff23 | 
 | 1043 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA160		 0xff30 | 
 | 1044 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA224		 0xff34 | 
 | 1045 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA256		 0xff36 | 
 | 1046 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA384		 0xff33 | 
 | 1047 | #define OP_PCL_DTLS_3DES_EDE_CBC_SHA512		 0xff35 | 
 | 1048 | #define OP_PCL_DTLS_AES_128_CBC_SHA160		 0xff80 | 
 | 1049 | #define OP_PCL_DTLS_AES_128_CBC_SHA224		 0xff84 | 
 | 1050 | #define OP_PCL_DTLS_AES_128_CBC_SHA256		 0xff86 | 
 | 1051 | #define OP_PCL_DTLS_AES_128_CBC_SHA384		 0xff83 | 
 | 1052 | #define OP_PCL_DTLS_AES_128_CBC_SHA512		 0xff85 | 
 | 1053 | #define OP_PCL_DTLS_AES_192_CBC_SHA160		 0xff20 | 
 | 1054 | #define OP_PCL_DTLS_AES_192_CBC_SHA224		 0xff24 | 
 | 1055 | #define OP_PCL_DTLS_AES_192_CBC_SHA256		 0xff26 | 
 | 1056 | #define OP_PCL_DTLS_AES_192_CBC_SHA384		 0xff23 | 
 | 1057 | #define OP_PCL_DTLS_AES_192_CBC_SHA512		 0xff25 | 
 | 1058 | #define OP_PCL_DTLS_AES_256_CBC_SHA160		 0xff60 | 
 | 1059 | #define OP_PCL_DTLS_AES_256_CBC_SHA224		 0xff64 | 
 | 1060 | #define OP_PCL_DTLS_AES_256_CBC_SHA256		 0xff66 | 
 | 1061 | #define OP_PCL_DTLS_AES_256_CBC_SHA384		 0xff63 | 
 | 1062 | #define OP_PCL_DTLS_AES_256_CBC_SHA512		 0xff65 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1063 |  | 
 | 1064 | /* 802.16 WiMAX protinfos */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1065 | #define OP_PCL_WIMAX_OFDM			 0x0201 | 
 | 1066 | #define OP_PCL_WIMAX_OFDMA			 0x0231 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1067 |  | 
 | 1068 | /* 802.11 WiFi protinfos */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1069 | #define OP_PCL_WIFI				 0xac04 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1070 |  | 
 | 1071 | /* MacSec protinfos */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1072 | #define OP_PCL_MACSEC				 0x0001 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1073 |  | 
 | 1074 | /* PKI unidirectional protocol protinfo bits */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1075 | #define OP_PCL_PKPROT_TEST			 0x0008 | 
 | 1076 | #define OP_PCL_PKPROT_DECRYPT			 0x0004 | 
 | 1077 | #define OP_PCL_PKPROT_ECC			 0x0002 | 
 | 1078 | #define OP_PCL_PKPROT_F2M			 0x0001 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1079 |  | 
 | 1080 | /* For non-protocol/alg-only op commands */ | 
 | 1081 | #define OP_ALG_TYPE_SHIFT	24 | 
 | 1082 | #define OP_ALG_TYPE_MASK	(0x7 << OP_ALG_TYPE_SHIFT) | 
 | 1083 | #define OP_ALG_TYPE_CLASS1	2 | 
 | 1084 | #define OP_ALG_TYPE_CLASS2	4 | 
 | 1085 |  | 
 | 1086 | #define OP_ALG_ALGSEL_SHIFT	16 | 
 | 1087 | #define OP_ALG_ALGSEL_MASK	(0xff << OP_ALG_ALGSEL_SHIFT) | 
 | 1088 | #define OP_ALG_ALGSEL_SUBMASK	(0x0f << OP_ALG_ALGSEL_SHIFT) | 
 | 1089 | #define OP_ALG_ALGSEL_AES	(0x10 << OP_ALG_ALGSEL_SHIFT) | 
 | 1090 | #define OP_ALG_ALGSEL_DES	(0x20 << OP_ALG_ALGSEL_SHIFT) | 
 | 1091 | #define OP_ALG_ALGSEL_3DES	(0x21 << OP_ALG_ALGSEL_SHIFT) | 
 | 1092 | #define OP_ALG_ALGSEL_ARC4	(0x30 << OP_ALG_ALGSEL_SHIFT) | 
 | 1093 | #define OP_ALG_ALGSEL_MD5	(0x40 << OP_ALG_ALGSEL_SHIFT) | 
 | 1094 | #define OP_ALG_ALGSEL_SHA1	(0x41 << OP_ALG_ALGSEL_SHIFT) | 
 | 1095 | #define OP_ALG_ALGSEL_SHA224	(0x42 << OP_ALG_ALGSEL_SHIFT) | 
 | 1096 | #define OP_ALG_ALGSEL_SHA256	(0x43 << OP_ALG_ALGSEL_SHIFT) | 
 | 1097 | #define OP_ALG_ALGSEL_SHA384	(0x44 << OP_ALG_ALGSEL_SHIFT) | 
 | 1098 | #define OP_ALG_ALGSEL_SHA512	(0x45 << OP_ALG_ALGSEL_SHIFT) | 
 | 1099 | #define OP_ALG_ALGSEL_RNG	(0x50 << OP_ALG_ALGSEL_SHIFT) | 
 | 1100 | #define OP_ALG_ALGSEL_SNOW	(0x60 << OP_ALG_ALGSEL_SHIFT) | 
 | 1101 | #define OP_ALG_ALGSEL_SNOW_F8	(0x60 << OP_ALG_ALGSEL_SHIFT) | 
 | 1102 | #define OP_ALG_ALGSEL_KASUMI	(0x70 << OP_ALG_ALGSEL_SHIFT) | 
 | 1103 | #define OP_ALG_ALGSEL_CRC	(0x90 << OP_ALG_ALGSEL_SHIFT) | 
 | 1104 | #define OP_ALG_ALGSEL_SNOW_F9	(0xA0 << OP_ALG_ALGSEL_SHIFT) | 
 | 1105 |  | 
 | 1106 | #define OP_ALG_AAI_SHIFT	4 | 
 | 1107 | #define OP_ALG_AAI_MASK		(0x1ff << OP_ALG_AAI_SHIFT) | 
 | 1108 |  | 
 | 1109 | /* blockcipher AAI set */ | 
 | 1110 | #define OP_ALG_AAI_CTR_MOD128	(0x00 << OP_ALG_AAI_SHIFT) | 
 | 1111 | #define OP_ALG_AAI_CTR_MOD8	(0x01 << OP_ALG_AAI_SHIFT) | 
 | 1112 | #define OP_ALG_AAI_CTR_MOD16	(0x02 << OP_ALG_AAI_SHIFT) | 
 | 1113 | #define OP_ALG_AAI_CTR_MOD24	(0x03 << OP_ALG_AAI_SHIFT) | 
 | 1114 | #define OP_ALG_AAI_CTR_MOD32	(0x04 << OP_ALG_AAI_SHIFT) | 
 | 1115 | #define OP_ALG_AAI_CTR_MOD40	(0x05 << OP_ALG_AAI_SHIFT) | 
 | 1116 | #define OP_ALG_AAI_CTR_MOD48	(0x06 << OP_ALG_AAI_SHIFT) | 
 | 1117 | #define OP_ALG_AAI_CTR_MOD56	(0x07 << OP_ALG_AAI_SHIFT) | 
 | 1118 | #define OP_ALG_AAI_CTR_MOD64	(0x08 << OP_ALG_AAI_SHIFT) | 
 | 1119 | #define OP_ALG_AAI_CTR_MOD72	(0x09 << OP_ALG_AAI_SHIFT) | 
 | 1120 | #define OP_ALG_AAI_CTR_MOD80	(0x0a << OP_ALG_AAI_SHIFT) | 
 | 1121 | #define OP_ALG_AAI_CTR_MOD88	(0x0b << OP_ALG_AAI_SHIFT) | 
 | 1122 | #define OP_ALG_AAI_CTR_MOD96	(0x0c << OP_ALG_AAI_SHIFT) | 
 | 1123 | #define OP_ALG_AAI_CTR_MOD104	(0x0d << OP_ALG_AAI_SHIFT) | 
 | 1124 | #define OP_ALG_AAI_CTR_MOD112	(0x0e << OP_ALG_AAI_SHIFT) | 
 | 1125 | #define OP_ALG_AAI_CTR_MOD120	(0x0f << OP_ALG_AAI_SHIFT) | 
 | 1126 | #define OP_ALG_AAI_CBC		(0x10 << OP_ALG_AAI_SHIFT) | 
 | 1127 | #define OP_ALG_AAI_ECB		(0x20 << OP_ALG_AAI_SHIFT) | 
 | 1128 | #define OP_ALG_AAI_CFB		(0x30 << OP_ALG_AAI_SHIFT) | 
 | 1129 | #define OP_ALG_AAI_OFB		(0x40 << OP_ALG_AAI_SHIFT) | 
 | 1130 | #define OP_ALG_AAI_XTS		(0x50 << OP_ALG_AAI_SHIFT) | 
 | 1131 | #define OP_ALG_AAI_CMAC		(0x60 << OP_ALG_AAI_SHIFT) | 
 | 1132 | #define OP_ALG_AAI_XCBC_MAC	(0x70 << OP_ALG_AAI_SHIFT) | 
 | 1133 | #define OP_ALG_AAI_CCM		(0x80 << OP_ALG_AAI_SHIFT) | 
 | 1134 | #define OP_ALG_AAI_GCM		(0x90 << OP_ALG_AAI_SHIFT) | 
 | 1135 | #define OP_ALG_AAI_CBC_XCBCMAC	(0xa0 << OP_ALG_AAI_SHIFT) | 
 | 1136 | #define OP_ALG_AAI_CTR_XCBCMAC	(0xb0 << OP_ALG_AAI_SHIFT) | 
 | 1137 | #define OP_ALG_AAI_CHECKODD	(0x80 << OP_ALG_AAI_SHIFT) | 
 | 1138 | #define OP_ALG_AAI_DK		(0x100 << OP_ALG_AAI_SHIFT) | 
 | 1139 |  | 
 | 1140 | /* randomizer AAI set */ | 
 | 1141 | #define OP_ALG_AAI_RNG		(0x00 << OP_ALG_AAI_SHIFT) | 
 | 1142 | #define OP_ALG_AAI_RNG_NOZERO	(0x10 << OP_ALG_AAI_SHIFT) | 
 | 1143 | #define OP_ALG_AAI_RNG_ODD	(0x20 << OP_ALG_AAI_SHIFT) | 
 | 1144 |  | 
 | 1145 | /* hmac/smac AAI set */ | 
 | 1146 | #define OP_ALG_AAI_HASH		(0x00 << OP_ALG_AAI_SHIFT) | 
 | 1147 | #define OP_ALG_AAI_HMAC		(0x01 << OP_ALG_AAI_SHIFT) | 
 | 1148 | #define OP_ALG_AAI_SMAC		(0x02 << OP_ALG_AAI_SHIFT) | 
 | 1149 | #define OP_ALG_AAI_HMAC_PRECOMP	(0x04 << OP_ALG_AAI_SHIFT) | 
 | 1150 |  | 
 | 1151 | /* CRC AAI set*/ | 
 | 1152 | #define OP_ALG_AAI_802		(0x01 << OP_ALG_AAI_SHIFT) | 
 | 1153 | #define OP_ALG_AAI_3385		(0x02 << OP_ALG_AAI_SHIFT) | 
 | 1154 | #define OP_ALG_AAI_CUST_POLY	(0x04 << OP_ALG_AAI_SHIFT) | 
 | 1155 | #define OP_ALG_AAI_DIS		(0x10 << OP_ALG_AAI_SHIFT) | 
 | 1156 | #define OP_ALG_AAI_DOS		(0x20 << OP_ALG_AAI_SHIFT) | 
 | 1157 | #define OP_ALG_AAI_DOC		(0x40 << OP_ALG_AAI_SHIFT) | 
 | 1158 |  | 
 | 1159 | /* Kasumi/SNOW AAI set */ | 
 | 1160 | #define OP_ALG_AAI_F8		(0xc0 << OP_ALG_AAI_SHIFT) | 
 | 1161 | #define OP_ALG_AAI_F9		(0xc8 << OP_ALG_AAI_SHIFT) | 
 | 1162 | #define OP_ALG_AAI_GSM		(0x10 << OP_ALG_AAI_SHIFT) | 
 | 1163 | #define OP_ALG_AAI_EDGE		(0x20 << OP_ALG_AAI_SHIFT) | 
 | 1164 |  | 
 | 1165 |  | 
 | 1166 | #define OP_ALG_AS_SHIFT		2 | 
 | 1167 | #define OP_ALG_AS_MASK		(0x3 << OP_ALG_AS_SHIFT) | 
 | 1168 | #define OP_ALG_AS_UPDATE	(0 << OP_ALG_AS_SHIFT) | 
 | 1169 | #define OP_ALG_AS_INIT		(1 << OP_ALG_AS_SHIFT) | 
 | 1170 | #define OP_ALG_AS_FINALIZE	(2 << OP_ALG_AS_SHIFT) | 
 | 1171 | #define OP_ALG_AS_INITFINAL	(3 << OP_ALG_AS_SHIFT) | 
 | 1172 |  | 
 | 1173 | #define OP_ALG_ICV_SHIFT	1 | 
 | 1174 | #define OP_ALG_ICV_MASK		(1 << OP_ALG_ICV_SHIFT) | 
 | 1175 | #define OP_ALG_ICV_OFF		(0 << OP_ALG_ICV_SHIFT) | 
 | 1176 | #define OP_ALG_ICV_ON		(1 << OP_ALG_ICV_SHIFT) | 
 | 1177 |  | 
 | 1178 | #define OP_ALG_DIR_SHIFT	0 | 
 | 1179 | #define OP_ALG_DIR_MASK		1 | 
 | 1180 | #define OP_ALG_DECRYPT		0 | 
 | 1181 | #define OP_ALG_ENCRYPT		1 | 
 | 1182 |  | 
 | 1183 | /* PKHA algorithm type set */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1184 | #define OP_ALG_PK		0x00800000 | 
 | 1185 | #define OP_ALG_PK_FUN_MASK	0x3f /* clrmem, modmath, or cpymem */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1186 |  | 
 | 1187 | /* PKHA mode clear memory functions */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1188 | #define OP_ALG_PKMODE_A_RAM	0x80000 | 
 | 1189 | #define OP_ALG_PKMODE_B_RAM	0x40000 | 
 | 1190 | #define OP_ALG_PKMODE_E_RAM	0x20000 | 
 | 1191 | #define OP_ALG_PKMODE_N_RAM	0x10000 | 
 | 1192 | #define OP_ALG_PKMODE_CLEARMEM	0x00001 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1193 |  | 
 | 1194 | /* PKHA mode modular-arithmetic functions */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1195 | #define OP_ALG_PKMODE_MOD_IN_MONTY	0x80000 | 
 | 1196 | #define OP_ALG_PKMODE_MOD_OUT_MONTY	0x40000 | 
 | 1197 | #define OP_ALG_PKMODE_MOD_F2M		0x20000 | 
 | 1198 | #define OP_ALG_PKMODE_MOD_R2_IN		0x10000 | 
 | 1199 | #define OP_ALG_PKMODE_PRJECTV		0x00800 | 
 | 1200 | #define OP_ALG_PKMODE_TIME_EQ		0x400 | 
 | 1201 | #define OP_ALG_PKMODE_OUT_B		0x000 | 
 | 1202 | #define OP_ALG_PKMODE_OUT_A		0x100 | 
 | 1203 | #define OP_ALG_PKMODE_MOD_ADD		0x002 | 
 | 1204 | #define OP_ALG_PKMODE_MOD_SUB_AB	0x003 | 
 | 1205 | #define OP_ALG_PKMODE_MOD_SUB_BA	0x004 | 
 | 1206 | #define OP_ALG_PKMODE_MOD_MULT		0x005 | 
 | 1207 | #define OP_ALG_PKMODE_MOD_EXPO		0x006 | 
 | 1208 | #define OP_ALG_PKMODE_MOD_REDUCT	0x007 | 
 | 1209 | #define OP_ALG_PKMODE_MOD_INV		0x008 | 
 | 1210 | #define OP_ALG_PKMODE_MOD_ECC_ADD	0x009 | 
 | 1211 | #define OP_ALG_PKMODE_MOD_ECC_DBL	0x00a | 
 | 1212 | #define OP_ALG_PKMODE_MOD_ECC_MULT	0x00b | 
 | 1213 | #define OP_ALG_PKMODE_MOD_MONT_CNST	0x00c | 
 | 1214 | #define OP_ALG_PKMODE_MOD_CRT_CNST	0x00d | 
 | 1215 | #define OP_ALG_PKMODE_MOD_GCD		0x00e | 
 | 1216 | #define OP_ALG_PKMODE_MOD_PRIMALITY	0x00f | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1217 |  | 
 | 1218 | /* PKHA mode copy-memory functions */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1219 | #define OP_ALG_PKMODE_SRC_REG_SHIFT	13 | 
 | 1220 | #define OP_ALG_PKMODE_SRC_REG_MASK	(7 << OP_ALG_PKMODE_SRC_REG_SHIFT) | 
 | 1221 | #define OP_ALG_PKMODE_DST_REG_SHIFT	10 | 
 | 1222 | #define OP_ALG_PKMODE_DST_REG_MASK	(7 << OP_ALG_PKMODE_DST_REG_SHIFT) | 
 | 1223 | #define OP_ALG_PKMODE_SRC_SEG_SHIFT	8 | 
 | 1224 | #define OP_ALG_PKMODE_SRC_SEG_MASK	(3 << OP_ALG_PKMODE_SRC_SEG_SHIFT) | 
 | 1225 | #define OP_ALG_PKMODE_DST_SEG_SHIFT	6 | 
 | 1226 | #define OP_ALG_PKMODE_DST_SEG_MASK	(3 << OP_ALG_PKMODE_DST_SEG_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1227 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1228 | #define OP_ALG_PKMODE_SRC_REG_A		(0 << OP_ALG_PKMODE_SRC_REG_SHIFT) | 
 | 1229 | #define OP_ALG_PKMODE_SRC_REG_B		(1 << OP_ALG_PKMODE_SRC_REG_SHIFT) | 
 | 1230 | #define OP_ALG_PKMODE_SRC_REG_N		(3 << OP_ALG_PKMODE_SRC_REG_SHIFT) | 
 | 1231 | #define OP_ALG_PKMODE_DST_REG_A		(0 << OP_ALG_PKMODE_DST_REG_SHIFT) | 
 | 1232 | #define OP_ALG_PKMODE_DST_REG_B		(1 << OP_ALG_PKMODE_DST_REG_SHIFT) | 
 | 1233 | #define OP_ALG_PKMODE_DST_REG_E		(2 << OP_ALG_PKMODE_DST_REG_SHIFT) | 
 | 1234 | #define OP_ALG_PKMODE_DST_REG_N		(3 << OP_ALG_PKMODE_DST_REG_SHIFT) | 
 | 1235 | #define OP_ALG_PKMODE_SRC_SEG_0		(0 << OP_ALG_PKMODE_SRC_SEG_SHIFT) | 
 | 1236 | #define OP_ALG_PKMODE_SRC_SEG_1		(1 << OP_ALG_PKMODE_SRC_SEG_SHIFT) | 
 | 1237 | #define OP_ALG_PKMODE_SRC_SEG_2		(2 << OP_ALG_PKMODE_SRC_SEG_SHIFT) | 
 | 1238 | #define OP_ALG_PKMODE_SRC_SEG_3		(3 << OP_ALG_PKMODE_SRC_SEG_SHIFT) | 
 | 1239 | #define OP_ALG_PKMODE_DST_SEG_0		(0 << OP_ALG_PKMODE_DST_SEG_SHIFT) | 
 | 1240 | #define OP_ALG_PKMODE_DST_SEG_1		(1 << OP_ALG_PKMODE_DST_SEG_SHIFT) | 
 | 1241 | #define OP_ALG_PKMODE_DST_SEG_2		(2 << OP_ALG_PKMODE_DST_SEG_SHIFT) | 
 | 1242 | #define OP_ALG_PKMODE_DST_SEG_3		(3 << OP_ALG_PKMODE_DST_SEG_SHIFT) | 
 | 1243 | #define OP_ALG_PKMODE_CPYMEM_N_SZ	0x80 | 
 | 1244 | #define OP_ALG_PKMODE_CPYMEM_SRC_SZ	0x81 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1245 |  | 
 | 1246 | /* | 
 | 1247 |  * SEQ_IN_PTR Command Constructs | 
 | 1248 |  */ | 
 | 1249 |  | 
 | 1250 | /* Release Buffers */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1251 | #define SQIN_RBS	0x04000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1252 |  | 
 | 1253 | /* Sequence pointer is really a descriptor */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1254 | #define SQIN_INL	0x02000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1255 |  | 
 | 1256 | /* Sequence pointer is a scatter-gather table */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1257 | #define SQIN_SGF	0x01000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1258 |  | 
 | 1259 | /* Appends to a previous pointer */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1260 | #define SQIN_PRE	0x00800000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1261 |  | 
 | 1262 | /* Use extended length following pointer */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1263 | #define SQIN_EXT	0x00400000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1264 |  | 
 | 1265 | /* Restore sequence with pointer/length */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1266 | #define SQIN_RTO	0x00200000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1267 |  | 
 | 1268 | /* Replace job descriptor */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1269 | #define SQIN_RJD	0x00100000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1270 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1271 | #define SQIN_LEN_SHIFT		 0 | 
 | 1272 | #define SQIN_LEN_MASK		(0xffff << SQIN_LEN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1273 |  | 
 | 1274 | /* | 
 | 1275 |  * SEQ_OUT_PTR Command Constructs | 
 | 1276 |  */ | 
 | 1277 |  | 
 | 1278 | /* Sequence pointer is a scatter-gather table */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1279 | #define SQOUT_SGF	0x01000000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1280 |  | 
 | 1281 | /* Appends to a previous pointer */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1282 | #define SQOUT_PRE	0x00800000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1283 |  | 
 | 1284 | /* Restore sequence with pointer/length */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1285 | #define SQOUT_RTO	0x00200000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1286 |  | 
 | 1287 | /* Use extended length following pointer */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1288 | #define SQOUT_EXT	0x00400000 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1289 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1290 | #define SQOUT_LEN_SHIFT		0 | 
 | 1291 | #define SQOUT_LEN_MASK		(0xffff << SQOUT_LEN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1292 |  | 
 | 1293 |  | 
 | 1294 | /* | 
 | 1295 |  * SIGNATURE Command Constructs | 
 | 1296 |  */ | 
 | 1297 |  | 
 | 1298 | /* TYPE field is all that's relevant */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1299 | #define SIGN_TYPE_SHIFT		16 | 
 | 1300 | #define SIGN_TYPE_MASK		(0x0f << SIGN_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1301 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1302 | #define SIGN_TYPE_FINAL		(0x00 << SIGN_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1303 | #define SIGN_TYPE_FINAL_RESTORE (0x01 << SIGN_TYPE_SHIFT) | 
 | 1304 | #define SIGN_TYPE_FINAL_NONZERO (0x02 << SIGN_TYPE_SHIFT) | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1305 | #define SIGN_TYPE_IMM_2		(0x0a << SIGN_TYPE_SHIFT) | 
 | 1306 | #define SIGN_TYPE_IMM_3		(0x0b << SIGN_TYPE_SHIFT) | 
 | 1307 | #define SIGN_TYPE_IMM_4		(0x0c << SIGN_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1308 |  | 
 | 1309 | /* | 
 | 1310 |  * MOVE Command Constructs | 
 | 1311 |  */ | 
 | 1312 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1313 | #define MOVE_AUX_SHIFT		25 | 
 | 1314 | #define MOVE_AUX_MASK		(3 << MOVE_AUX_SHIFT) | 
 | 1315 | #define MOVE_AUX_MS		(2 << MOVE_AUX_SHIFT) | 
 | 1316 | #define MOVE_AUX_LS		(1 << MOVE_AUX_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1317 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1318 | #define MOVE_WAITCOMP_SHIFT	24 | 
 | 1319 | #define MOVE_WAITCOMP_MASK	(1 << MOVE_WAITCOMP_SHIFT) | 
 | 1320 | #define MOVE_WAITCOMP		(1 << MOVE_WAITCOMP_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1321 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1322 | #define MOVE_SRC_SHIFT		20 | 
 | 1323 | #define MOVE_SRC_MASK		(0x0f << MOVE_SRC_SHIFT) | 
 | 1324 | #define MOVE_SRC_CLASS1CTX	(0x00 << MOVE_SRC_SHIFT) | 
 | 1325 | #define MOVE_SRC_CLASS2CTX	(0x01 << MOVE_SRC_SHIFT) | 
 | 1326 | #define MOVE_SRC_OUTFIFO	(0x02 << MOVE_SRC_SHIFT) | 
 | 1327 | #define MOVE_SRC_DESCBUF	(0x03 << MOVE_SRC_SHIFT) | 
 | 1328 | #define MOVE_SRC_MATH0		(0x04 << MOVE_SRC_SHIFT) | 
 | 1329 | #define MOVE_SRC_MATH1		(0x05 << MOVE_SRC_SHIFT) | 
 | 1330 | #define MOVE_SRC_MATH2		(0x06 << MOVE_SRC_SHIFT) | 
 | 1331 | #define MOVE_SRC_MATH3		(0x07 << MOVE_SRC_SHIFT) | 
 | 1332 | #define MOVE_SRC_INFIFO		(0x08 << MOVE_SRC_SHIFT) | 
 | 1333 | #define MOVE_SRC_INFIFO_CL	(0x09 << MOVE_SRC_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1334 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1335 | #define MOVE_DEST_SHIFT		16 | 
 | 1336 | #define MOVE_DEST_MASK		(0x0f << MOVE_DEST_SHIFT) | 
 | 1337 | #define MOVE_DEST_CLASS1CTX	(0x00 << MOVE_DEST_SHIFT) | 
 | 1338 | #define MOVE_DEST_CLASS2CTX	(0x01 << MOVE_DEST_SHIFT) | 
 | 1339 | #define MOVE_DEST_OUTFIFO	(0x02 << MOVE_DEST_SHIFT) | 
 | 1340 | #define MOVE_DEST_DESCBUF	(0x03 << MOVE_DEST_SHIFT) | 
 | 1341 | #define MOVE_DEST_MATH0		(0x04 << MOVE_DEST_SHIFT) | 
 | 1342 | #define MOVE_DEST_MATH1		(0x05 << MOVE_DEST_SHIFT) | 
 | 1343 | #define MOVE_DEST_MATH2		(0x06 << MOVE_DEST_SHIFT) | 
 | 1344 | #define MOVE_DEST_MATH3		(0x07 << MOVE_DEST_SHIFT) | 
 | 1345 | #define MOVE_DEST_CLASS1INFIFO	(0x08 << MOVE_DEST_SHIFT) | 
 | 1346 | #define MOVE_DEST_CLASS2INFIFO	(0x09 << MOVE_DEST_SHIFT) | 
 | 1347 | #define MOVE_DEST_PK_A		(0x0c << MOVE_DEST_SHIFT) | 
 | 1348 | #define MOVE_DEST_CLASS1KEY	(0x0d << MOVE_DEST_SHIFT) | 
 | 1349 | #define MOVE_DEST_CLASS2KEY	(0x0e << MOVE_DEST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1350 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1351 | #define MOVE_OFFSET_SHIFT	8 | 
 | 1352 | #define MOVE_OFFSET_MASK	(0xff << MOVE_OFFSET_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1353 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1354 | #define MOVE_LEN_SHIFT		0 | 
 | 1355 | #define MOVE_LEN_MASK		(0xff << MOVE_LEN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1356 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1357 | #define MOVELEN_MRSEL_SHIFT	0 | 
 | 1358 | #define MOVELEN_MRSEL_MASK	(0x3 << MOVE_LEN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1359 |  | 
 | 1360 | /* | 
 | 1361 |  * MATH Command Constructs | 
 | 1362 |  */ | 
 | 1363 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1364 | #define MATH_IFB_SHIFT		26 | 
 | 1365 | #define MATH_IFB_MASK		(1 << MATH_IFB_SHIFT) | 
 | 1366 | #define MATH_IFB		(1 << MATH_IFB_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1367 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1368 | #define MATH_NFU_SHIFT		25 | 
 | 1369 | #define MATH_NFU_MASK		(1 << MATH_NFU_SHIFT) | 
 | 1370 | #define MATH_NFU		(1 << MATH_NFU_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1371 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1372 | #define MATH_STL_SHIFT		24 | 
 | 1373 | #define MATH_STL_MASK		(1 << MATH_STL_SHIFT) | 
 | 1374 | #define MATH_STL		(1 << MATH_STL_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1375 |  | 
 | 1376 | /* Function selectors */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1377 | #define MATH_FUN_SHIFT		20 | 
 | 1378 | #define MATH_FUN_MASK		(0x0f << MATH_FUN_SHIFT) | 
 | 1379 | #define MATH_FUN_ADD		(0x00 << MATH_FUN_SHIFT) | 
 | 1380 | #define MATH_FUN_ADDC		(0x01 << MATH_FUN_SHIFT) | 
 | 1381 | #define MATH_FUN_SUB		(0x02 << MATH_FUN_SHIFT) | 
 | 1382 | #define MATH_FUN_SUBB		(0x03 << MATH_FUN_SHIFT) | 
 | 1383 | #define MATH_FUN_OR		(0x04 << MATH_FUN_SHIFT) | 
 | 1384 | #define MATH_FUN_AND		(0x05 << MATH_FUN_SHIFT) | 
 | 1385 | #define MATH_FUN_XOR		(0x06 << MATH_FUN_SHIFT) | 
 | 1386 | #define MATH_FUN_LSHIFT		(0x07 << MATH_FUN_SHIFT) | 
 | 1387 | #define MATH_FUN_RSHIFT		(0x08 << MATH_FUN_SHIFT) | 
 | 1388 | #define MATH_FUN_SHLD		(0x09 << MATH_FUN_SHIFT) | 
 | 1389 | #define MATH_FUN_ZBYT		(0x0a << MATH_FUN_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1390 |  | 
 | 1391 | /* Source 0 selectors */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1392 | #define MATH_SRC0_SHIFT		16 | 
 | 1393 | #define MATH_SRC0_MASK		(0x0f << MATH_SRC0_SHIFT) | 
 | 1394 | #define MATH_SRC0_REG0		(0x00 << MATH_SRC0_SHIFT) | 
 | 1395 | #define MATH_SRC0_REG1		(0x01 << MATH_SRC0_SHIFT) | 
 | 1396 | #define MATH_SRC0_REG2		(0x02 << MATH_SRC0_SHIFT) | 
 | 1397 | #define MATH_SRC0_REG3		(0x03 << MATH_SRC0_SHIFT) | 
 | 1398 | #define MATH_SRC0_IMM		(0x04 << MATH_SRC0_SHIFT) | 
 | 1399 | #define MATH_SRC0_SEQINLEN	(0x08 << MATH_SRC0_SHIFT) | 
 | 1400 | #define MATH_SRC0_SEQOUTLEN	(0x09 << MATH_SRC0_SHIFT) | 
 | 1401 | #define MATH_SRC0_VARSEQINLEN	(0x0a << MATH_SRC0_SHIFT) | 
 | 1402 | #define MATH_SRC0_VARSEQOUTLEN	(0x0b << MATH_SRC0_SHIFT) | 
 | 1403 | #define MATH_SRC0_ZERO		(0x0c << MATH_SRC0_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1404 |  | 
 | 1405 | /* Source 1 selectors */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1406 | #define MATH_SRC1_SHIFT		12 | 
 | 1407 | #define MATH_SRC1_MASK		(0x0f << MATH_SRC1_SHIFT) | 
 | 1408 | #define MATH_SRC1_REG0		(0x00 << MATH_SRC1_SHIFT) | 
 | 1409 | #define MATH_SRC1_REG1		(0x01 << MATH_SRC1_SHIFT) | 
 | 1410 | #define MATH_SRC1_REG2		(0x02 << MATH_SRC1_SHIFT) | 
 | 1411 | #define MATH_SRC1_REG3		(0x03 << MATH_SRC1_SHIFT) | 
 | 1412 | #define MATH_SRC1_IMM		(0x04 << MATH_SRC1_SHIFT) | 
 | 1413 | #define MATH_SRC1_INFIFO	(0x0a << MATH_SRC1_SHIFT) | 
 | 1414 | #define MATH_SRC1_OUTFIFO	(0x0b << MATH_SRC1_SHIFT) | 
 | 1415 | #define MATH_SRC1_ONE		(0x0c << MATH_SRC1_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1416 |  | 
 | 1417 | /* Destination selectors */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1418 | #define MATH_DEST_SHIFT		8 | 
 | 1419 | #define MATH_DEST_MASK		(0x0f << MATH_DEST_SHIFT) | 
 | 1420 | #define MATH_DEST_REG0		(0x00 << MATH_DEST_SHIFT) | 
 | 1421 | #define MATH_DEST_REG1		(0x01 << MATH_DEST_SHIFT) | 
 | 1422 | #define MATH_DEST_REG2		(0x02 << MATH_DEST_SHIFT) | 
 | 1423 | #define MATH_DEST_REG3		(0x03 << MATH_DEST_SHIFT) | 
 | 1424 | #define MATH_DEST_SEQINLEN	(0x08 << MATH_DEST_SHIFT) | 
 | 1425 | #define MATH_DEST_SEQOUTLEN	(0x09 << MATH_DEST_SHIFT) | 
 | 1426 | #define MATH_DEST_VARSEQINLEN	(0x0a << MATH_DEST_SHIFT) | 
 | 1427 | #define MATH_DEST_VARSEQOUTLEN	(0x0b << MATH_DEST_SHIFT) | 
 | 1428 | #define MATH_DEST_NONE		(0x0f << MATH_DEST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1429 |  | 
 | 1430 | /* Length selectors */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1431 | #define MATH_LEN_SHIFT		0 | 
 | 1432 | #define MATH_LEN_MASK		(0x0f << MATH_LEN_SHIFT) | 
 | 1433 | #define MATH_LEN_1BYTE		0x01 | 
 | 1434 | #define MATH_LEN_2BYTE		0x02 | 
 | 1435 | #define MATH_LEN_4BYTE		0x04 | 
 | 1436 | #define MATH_LEN_8BYTE		0x08 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1437 |  | 
 | 1438 | /* | 
 | 1439 |  * JUMP Command Constructs | 
 | 1440 |  */ | 
 | 1441 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1442 | #define JUMP_CLASS_SHIFT	25 | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1443 | #define JUMP_CLASS_MASK		(3 << JUMP_CLASS_SHIFT) | 
 | 1444 | #define JUMP_CLASS_NONE		0 | 
 | 1445 | #define JUMP_CLASS_CLASS1	(1 << JUMP_CLASS_SHIFT) | 
 | 1446 | #define JUMP_CLASS_CLASS2	(2 << JUMP_CLASS_SHIFT) | 
 | 1447 | #define JUMP_CLASS_BOTH		(3 << JUMP_CLASS_SHIFT) | 
 | 1448 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1449 | #define JUMP_JSL_SHIFT		24 | 
 | 1450 | #define JUMP_JSL_MASK		(1 << JUMP_JSL_SHIFT) | 
 | 1451 | #define JUMP_JSL		(1 << JUMP_JSL_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1452 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1453 | #define JUMP_TYPE_SHIFT		22 | 
 | 1454 | #define JUMP_TYPE_MASK		(0x03 << JUMP_TYPE_SHIFT) | 
 | 1455 | #define JUMP_TYPE_LOCAL		(0x00 << JUMP_TYPE_SHIFT) | 
 | 1456 | #define JUMP_TYPE_NONLOCAL	(0x01 << JUMP_TYPE_SHIFT) | 
 | 1457 | #define JUMP_TYPE_HALT		(0x02 << JUMP_TYPE_SHIFT) | 
 | 1458 | #define JUMP_TYPE_HALT_USER	(0x03 << JUMP_TYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1459 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1460 | #define JUMP_TEST_SHIFT		16 | 
 | 1461 | #define JUMP_TEST_MASK		(0x03 << JUMP_TEST_SHIFT) | 
 | 1462 | #define JUMP_TEST_ALL		(0x00 << JUMP_TEST_SHIFT) | 
 | 1463 | #define JUMP_TEST_INVALL	(0x01 << JUMP_TEST_SHIFT) | 
 | 1464 | #define JUMP_TEST_ANY		(0x02 << JUMP_TEST_SHIFT) | 
 | 1465 | #define JUMP_TEST_INVANY	(0x03 << JUMP_TEST_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1466 |  | 
 | 1467 | /* Condition codes. JSL bit is factored in */ | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1468 | #define JUMP_COND_SHIFT		8 | 
 | 1469 | #define JUMP_COND_MASK		(0x100ff << JUMP_COND_SHIFT) | 
 | 1470 | #define JUMP_COND_PK_0		(0x80 << JUMP_COND_SHIFT) | 
 | 1471 | #define JUMP_COND_PK_GCD_1	(0x40 << JUMP_COND_SHIFT) | 
 | 1472 | #define JUMP_COND_PK_PRIME	(0x20 << JUMP_COND_SHIFT) | 
 | 1473 | #define JUMP_COND_MATH_N	(0x08 << JUMP_COND_SHIFT) | 
 | 1474 | #define JUMP_COND_MATH_Z	(0x04 << JUMP_COND_SHIFT) | 
 | 1475 | #define JUMP_COND_MATH_C	(0x02 << JUMP_COND_SHIFT) | 
 | 1476 | #define JUMP_COND_MATH_NV	(0x01 << JUMP_COND_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1477 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1478 | #define JUMP_COND_JRP		((0x80 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1479 | #define JUMP_COND_SHRD		((0x40 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1480 | #define JUMP_COND_SELF		((0x20 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1481 | #define JUMP_COND_CALM		((0x10 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1482 | #define JUMP_COND_NIP		((0x08 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1483 | #define JUMP_COND_NIFP		((0x04 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1484 | #define JUMP_COND_NOP		((0x02 << JUMP_COND_SHIFT) | JUMP_JSL) | 
 | 1485 | #define JUMP_COND_NCP		((0x01 << JUMP_COND_SHIFT) | JUMP_JSL) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1486 |  | 
| Kim Phillips | 1582fa8 | 2011-12-12 14:59:13 -0600 | [diff] [blame] | 1487 | #define JUMP_OFFSET_SHIFT	0 | 
 | 1488 | #define JUMP_OFFSET_MASK	(0xff << JUMP_OFFSET_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1489 |  | 
 | 1490 | /* | 
 | 1491 |  * NFIFO ENTRY | 
 | 1492 |  * Data Constructs | 
 | 1493 |  * | 
 | 1494 |  */ | 
 | 1495 | #define NFIFOENTRY_DEST_SHIFT	30 | 
 | 1496 | #define NFIFOENTRY_DEST_MASK	(3 << NFIFOENTRY_DEST_SHIFT) | 
 | 1497 | #define NFIFOENTRY_DEST_DECO	(0 << NFIFOENTRY_DEST_SHIFT) | 
 | 1498 | #define NFIFOENTRY_DEST_CLASS1	(1 << NFIFOENTRY_DEST_SHIFT) | 
 | 1499 | #define NFIFOENTRY_DEST_CLASS2	(2 << NFIFOENTRY_DEST_SHIFT) | 
 | 1500 | #define NFIFOENTRY_DEST_BOTH	(3 << NFIFOENTRY_DEST_SHIFT) | 
 | 1501 |  | 
 | 1502 | #define NFIFOENTRY_LC2_SHIFT	29 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1503 | #define NFIFOENTRY_LC2_MASK	(1 << NFIFOENTRY_LC2_SHIFT) | 
 | 1504 | #define NFIFOENTRY_LC2		(1 << NFIFOENTRY_LC2_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1505 |  | 
 | 1506 | #define NFIFOENTRY_LC1_SHIFT	28 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1507 | #define NFIFOENTRY_LC1_MASK	(1 << NFIFOENTRY_LC1_SHIFT) | 
 | 1508 | #define NFIFOENTRY_LC1		(1 << NFIFOENTRY_LC1_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1509 |  | 
 | 1510 | #define NFIFOENTRY_FC2_SHIFT	27 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1511 | #define NFIFOENTRY_FC2_MASK	(1 << NFIFOENTRY_FC2_SHIFT) | 
 | 1512 | #define NFIFOENTRY_FC2		(1 << NFIFOENTRY_FC2_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1513 |  | 
 | 1514 | #define NFIFOENTRY_FC1_SHIFT	26 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1515 | #define NFIFOENTRY_FC1_MASK	(1 << NFIFOENTRY_FC1_SHIFT) | 
 | 1516 | #define NFIFOENTRY_FC1		(1 << NFIFOENTRY_FC1_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1517 |  | 
 | 1518 | #define NFIFOENTRY_STYPE_SHIFT	24 | 
 | 1519 | #define NFIFOENTRY_STYPE_MASK	(3 << NFIFOENTRY_STYPE_SHIFT) | 
 | 1520 | #define NFIFOENTRY_STYPE_DFIFO	(0 << NFIFOENTRY_STYPE_SHIFT) | 
 | 1521 | #define NFIFOENTRY_STYPE_OFIFO	(1 << NFIFOENTRY_STYPE_SHIFT) | 
 | 1522 | #define NFIFOENTRY_STYPE_PAD	(2 << NFIFOENTRY_STYPE_SHIFT) | 
 | 1523 | #define NFIFOENTRY_STYPE_SNOOP	(3 << NFIFOENTRY_STYPE_SHIFT) | 
 | 1524 |  | 
 | 1525 | #define NFIFOENTRY_DTYPE_SHIFT	20 | 
 | 1526 | #define NFIFOENTRY_DTYPE_MASK	(0xF << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1527 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1528 | #define NFIFOENTRY_DTYPE_SBOX	(0x0 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1529 | #define NFIFOENTRY_DTYPE_AAD	(0x1 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1530 | #define NFIFOENTRY_DTYPE_IV	(0x2 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1531 | #define NFIFOENTRY_DTYPE_SAD	(0x3 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1532 | #define NFIFOENTRY_DTYPE_ICV	(0xA << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1533 | #define NFIFOENTRY_DTYPE_SKIP	(0xE << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1534 | #define NFIFOENTRY_DTYPE_MSG	(0xF << NFIFOENTRY_DTYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1535 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1536 | #define NFIFOENTRY_DTYPE_PK_A0	(0x0 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1537 | #define NFIFOENTRY_DTYPE_PK_A1	(0x1 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1538 | #define NFIFOENTRY_DTYPE_PK_A2	(0x2 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1539 | #define NFIFOENTRY_DTYPE_PK_A3	(0x3 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1540 | #define NFIFOENTRY_DTYPE_PK_B0	(0x4 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1541 | #define NFIFOENTRY_DTYPE_PK_B1	(0x5 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1542 | #define NFIFOENTRY_DTYPE_PK_B2	(0x6 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1543 | #define NFIFOENTRY_DTYPE_PK_B3	(0x7 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1544 | #define NFIFOENTRY_DTYPE_PK_N	(0x8 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1545 | #define NFIFOENTRY_DTYPE_PK_E	(0x9 << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1546 | #define NFIFOENTRY_DTYPE_PK_A	(0xC << NFIFOENTRY_DTYPE_SHIFT) | 
 | 1547 | #define NFIFOENTRY_DTYPE_PK_B	(0xD << NFIFOENTRY_DTYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1548 |  | 
 | 1549 |  | 
 | 1550 | #define NFIFOENTRY_BND_SHIFT	19 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1551 | #define NFIFOENTRY_BND_MASK	(1 << NFIFOENTRY_BND_SHIFT) | 
 | 1552 | #define NFIFOENTRY_BND		(1 << NFIFOENTRY_BND_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1553 |  | 
 | 1554 | #define NFIFOENTRY_PTYPE_SHIFT	16 | 
 | 1555 | #define NFIFOENTRY_PTYPE_MASK	(0x7 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1556 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1557 | #define NFIFOENTRY_PTYPE_ZEROS		(0x0 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1558 | #define NFIFOENTRY_PTYPE_RND_NOZEROS	(0x1 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1559 | #define NFIFOENTRY_PTYPE_INCREMENT	(0x2 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1560 | #define NFIFOENTRY_PTYPE_RND		(0x3 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1561 | #define NFIFOENTRY_PTYPE_ZEROS_NZ	(0x4 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1562 | #define NFIFOENTRY_PTYPE_RND_NZ_LZ	(0x5 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1563 | #define NFIFOENTRY_PTYPE_N		(0x6 << NFIFOENTRY_PTYPE_SHIFT) | 
 | 1564 | #define NFIFOENTRY_PTYPE_RND_NZ_N	(0x7 << NFIFOENTRY_PTYPE_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1565 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1566 | #define NFIFOENTRY_OC_SHIFT	15 | 
 | 1567 | #define NFIFOENTRY_OC_MASK	(1 << NFIFOENTRY_OC_SHIFT) | 
 | 1568 | #define NFIFOENTRY_OC		(1 << NFIFOENTRY_OC_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1569 |  | 
 | 1570 | #define NFIFOENTRY_AST_SHIFT	14 | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1571 | #define NFIFOENTRY_AST_MASK	(1 << NFIFOENTRY_OC_SHIFT) | 
 | 1572 | #define NFIFOENTRY_AST		(1 << NFIFOENTRY_OC_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1573 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1574 | #define NFIFOENTRY_BM_SHIFT	11 | 
 | 1575 | #define NFIFOENTRY_BM_MASK	(1 << NFIFOENTRY_BM_SHIFT) | 
 | 1576 | #define NFIFOENTRY_BM		(1 << NFIFOENTRY_BM_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1577 |  | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1578 | #define NFIFOENTRY_PS_SHIFT	10 | 
 | 1579 | #define NFIFOENTRY_PS_MASK	(1 << NFIFOENTRY_PS_SHIFT) | 
 | 1580 | #define NFIFOENTRY_PS		(1 << NFIFOENTRY_PS_SHIFT) | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1581 |  | 
 | 1582 | #define NFIFOENTRY_DLEN_SHIFT	0 | 
 | 1583 | #define NFIFOENTRY_DLEN_MASK	(0xFFF << NFIFOENTRY_DLEN_SHIFT) | 
 | 1584 |  | 
 | 1585 | #define NFIFOENTRY_PLEN_SHIFT	0 | 
 | 1586 | #define NFIFOENTRY_PLEN_MASK	(0xFF << NFIFOENTRY_PLEN_SHIFT) | 
 | 1587 |  | 
 | 1588 | /* | 
 | 1589 |  * PDB internal definitions | 
 | 1590 |  */ | 
 | 1591 |  | 
 | 1592 | /* IPSec ESP CBC Encap/Decap Options */ | 
| Kim Phillips | b028b54 | 2011-12-12 14:59:14 -0600 | [diff] [blame] | 1593 | #define PDBOPTS_ESPCBC_ARSNONE	0x00	/* no antireplay window	*/ | 
 | 1594 | #define PDBOPTS_ESPCBC_ARS32	0x40	/* 32-entry antireplay window */ | 
 | 1595 | #define PDBOPTS_ESPCBC_ARS64	0xc0	/* 64-entry antireplay window */ | 
 | 1596 | #define PDBOPTS_ESPCBC_IVSRC	0x20	/* IV comes from internal random gen */ | 
 | 1597 | #define PDBOPTS_ESPCBC_ESN	0x10	/* extended sequence included */ | 
 | 1598 | #define PDBOPTS_ESPCBC_OUTFMT	0x08	/* output only decapsulation (decap) */ | 
 | 1599 | #define PDBOPTS_ESPCBC_IPHDRSRC 0x08	/* IP header comes from PDB (encap) */ | 
 | 1600 | #define PDBOPTS_ESPCBC_INCIPHDR 0x04	/* Prepend IP header to output frame */ | 
 | 1601 | #define PDBOPTS_ESPCBC_IPVSN	0x02	/* process IPv6 header */ | 
 | 1602 | #define PDBOPTS_ESPCBC_TUNNEL	0x01	/* tunnel mode next-header byte */ | 
| Kim Phillips | 8e8ec59 | 2011-03-13 16:54:26 +0800 | [diff] [blame] | 1603 |  | 
 | 1604 | #endif /* DESC_H */ |