PM / sleep: Asynchronous threads for suspend_noirq
[linux/fpc-iii.git] / drivers / s390 / char / vmcp.h
blob1e29b04183820cda1c576764478a5b42ff4dd1d6
1 /*
2 * Copyright IBM Corp. 2004, 2005
3 * Interface implementation for communication with the z/VM control program
4 * Version 1.0
5 * Author(s): Christian Borntraeger <cborntra@de.ibm.com>
8 * z/VMs CP offers the possibility to issue commands via the diagnose code 8
9 * this driver implements a character device that issues these commands and
10 * returns the answer of CP.
12 * The idea of this driver is based on cpint from Neale Ferguson
15 #include <linux/ioctl.h>
16 #include <linux/mutex.h>
18 #define VMCP_GETCODE _IOR(0x10, 1, int)
19 #define VMCP_SETBUF _IOW(0x10, 2, int)
20 #define VMCP_GETSIZE _IOR(0x10, 3, int)
22 struct vmcp_session {
23 unsigned int bufsize;
24 char *response;
25 int resp_size;
26 int resp_code;
27 /* As we use copy_from/to_user, which might *
28 * sleep and cannot use a spinlock */
29 struct mutex mutex;