X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fs390%2Fcrypto%2Fz90common.h;h=bcabac7a7c460960f865c73ac2a723e170ac9df2;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=624ef6a03fc511826a2ce57b6846b0010090754f;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/s390/crypto/z90common.h b/drivers/s390/crypto/z90common.h index 624ef6a03..bcabac7a7 100644 --- a/drivers/s390/crypto/z90common.h +++ b/drivers/s390/crypto/z90common.h @@ -1,11 +1,11 @@ /* - * linux/drivers/s390/misc/z90common.h + * linux/drivers/s390/crypto/z90common.h * - * z90crypt 1.3.1 + * z90crypt 1.3.2 * * Copyright (C) 2001, 2004 IBM Corporation * Author(s): Robert Burroughs (burrough@us.ibm.com) - * Eric Rossman (edrossma@us.ibm.com) + * Eric Rossman (edrossma@us.ibm.com) * * Hotplug & misc device support: Jochen Roehrig (roehrig@de.ibm.com) * @@ -16,7 +16,7 @@ * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License @@ -24,15 +24,16 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -#ifndef _Z90COMMON_ -#define _Z90COMMON_ +#ifndef _Z90COMMON_H_ +#define _Z90COMMON_H_ -#define VERSION_Z90COMMON_H "$Revision: 1.8 $" +#define VERSION_Z90COMMON_H "$Revision: 1.16 $" #define RESPBUFFSIZE 256 #define PCI_FUNC_KEY_DECRYPT 0x5044 #define PCI_FUNC_KEY_ENCRYPT 0x504B +extern int ext_bitlens; enum devstat { DEV_GONE, @@ -56,6 +57,7 @@ enum hdstat { HD_TSQ_EXCEPTION }; +#define Z90C_NO_DEVICES 1 #define Z90C_AMBIGUOUS_DOMAIN 2 #define Z90C_INCORRECT_DOMAIN 3 #define ENOTINIT 4 @@ -74,13 +76,13 @@ enum hdstat { #define REC_OPERAND_SIZE 9 #define REC_EVEN_MOD 10 #define REC_NO_WORK 11 -#define REC_HARDWAR_ERR 12 -#define REC_NO_RESPONSE 13 +#define REC_HARDWAR_ERR 12 +#define REC_NO_RESPONSE 13 #define REC_RETRY_DEV 14 #define REC_USER_GONE 15 -#define REC_BAD_MESSAGE 16 -#define REC_INVALID_PAD 17 -#define REC_RELEASED 28 +#define REC_BAD_MESSAGE 16 +#define REC_INVALID_PAD 17 +#define REC_USE_PCICA 18 #define WRONG_DEVICE_TYPE 20 @@ -89,18 +91,55 @@ enum hdstat { #define TSQ_FATAL_ERROR 34 #define RSQ_FATAL_ERROR 35 -#define PCICA 0 -#define PCICC 1 -#define PCIXCC 2 -#define NILDEV -1 -#define ANYDEV -1 +#define Z90CRYPT_NUM_TYPES 5 +#define PCICA 0 +#define PCICC 1 +#define PCIXCC_MCL2 2 +#define PCIXCC_MCL3 3 +#define CEX2C 4 +#define NILDEV -1 +#define ANYDEV -1 +#define PCIXCC_UNK -2 enum hdevice_type { PCICC_HW = 3, PCICA_HW = 4, PCIXCC_HW = 5, OTHER_HW = 6, - OTHER2_HW = 7 + CEX2C_HW = 7 +}; + +struct CPRBX { + unsigned short cprb_len; + unsigned char cprb_ver_id; + unsigned char pad_000[3]; + unsigned char func_id[2]; + unsigned char cprb_flags[4]; + unsigned int req_parml; + unsigned int req_datal; + unsigned int rpl_msgbl; + unsigned int rpld_parml; + unsigned int rpl_datal; + unsigned int rpld_datal; + unsigned int req_extbl; + unsigned char pad_001[4]; + unsigned int rpld_extbl; + unsigned char req_parmb[16]; + unsigned char req_datab[16]; + unsigned char rpl_parmb[16]; + unsigned char rpl_datab[16]; + unsigned char req_extb[16]; + unsigned char rpl_extb[16]; + unsigned short ccp_rtcode; + unsigned short ccp_rscode; + unsigned int mac_data_len; + unsigned char logon_id[8]; + unsigned char mac_value[8]; + unsigned char mac_content_flgs; + unsigned char pad_002; + unsigned short domain; + unsigned char pad_003[12]; + unsigned char pad_004[36]; }; #ifndef DEV_NAME