2005-04-17 06:20:36 +08:00
|
|
|
/*
|
|
|
|
* linux/drivers/s390/crypto/z90crypt.h
|
|
|
|
*
|
2006-05-08 22:51:57 +08:00
|
|
|
* z90crypt 1.3.3 (kernel-private header)
|
2005-04-17 06:20:36 +08:00
|
|
|
*
|
2006-01-06 16:19:25 +08:00
|
|
|
* Copyright (C) 2001, 2005 IBM Corporation
|
2005-04-17 06:20:36 +08:00
|
|
|
* Author(s): Robert Burroughs (burrough@us.ibm.com)
|
|
|
|
* Eric Rossman (edrossma@us.ibm.com)
|
|
|
|
*
|
|
|
|
* Hotplug & misc device support: Jochen Roehrig (roehrig@de.ibm.com)
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; either version 2, or (at your option)
|
|
|
|
* any later version.
|
|
|
|
*
|
|
|
|
* 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
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _Z90CRYPT_H_
|
|
|
|
#define _Z90CRYPT_H_
|
|
|
|
|
2006-05-08 22:51:57 +08:00
|
|
|
#include <asm/z90crypt.h>
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* local errno definitions
|
|
|
|
*/
|
|
|
|
#define ENOBUFF 129 // filp->private_data->...>work_elem_p->buffer is NULL
|
|
|
|
#define EWORKPEND 130 // user issues ioctl while another pending
|
|
|
|
#define ERELEASED 131 // user released while ioctl pending
|
|
|
|
#define EQUIESCE 132 // z90crypt quiescing (no more work allowed)
|
|
|
|
#define ETIMEOUT 133 // request timed out
|
|
|
|
#define EUNKNOWN 134 // some unrecognized error occured (retry may succeed)
|
|
|
|
#define EGETBUFF 135 // Error getting buffer or hardware lacks capability
|
|
|
|
// (retry in software)
|
|
|
|
|
|
|
|
/**
|
|
|
|
* DEPRECATED STRUCTURES
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* This structure is DEPRECATED and the corresponding ioctl() has been
|
|
|
|
* replaced with individual ioctl()s for each piece of data!
|
|
|
|
* This structure will NOT survive past version 1.3.1, so switch to the
|
|
|
|
* new ioctl()s.
|
|
|
|
*/
|
|
|
|
#define MASK_LENGTH 64 // mask length
|
|
|
|
struct ica_z90_status {
|
|
|
|
int totalcount;
|
|
|
|
int leedslitecount; // PCICA
|
|
|
|
int leeds2count; // PCICC
|
|
|
|
// int PCIXCCCount; is not in struct for backward compatibility
|
|
|
|
int requestqWaitCount;
|
|
|
|
int pendingqWaitCount;
|
|
|
|
int totalOpenCount;
|
|
|
|
int cryptoDomain;
|
|
|
|
// status: 0=not there, 1=PCICA, 2=PCICC, 3=PCIXCC_MCL2, 4=PCIXCC_MCL3,
|
|
|
|
// 5=CEX2C
|
|
|
|
unsigned char status[MASK_LENGTH];
|
|
|
|
// qdepth: # work elements waiting for each device
|
|
|
|
unsigned char qdepth[MASK_LENGTH];
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* _Z90CRYPT_H_ */
|