summaryrefslogblamecommitdiff
path: root/drivers/s390/char/vmcp.h
blob: 6a993948e188c3a0219832757fd51922d8dab665 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14

                                           
                                                                           










                                                                            
                        
                        











                                                          
                           
  
/*
 * Copyright (C) 2004, 2005 IBM Corporation
 * Interface implementation for communication with the z/VM control program
 * Version 1.0
 * Author(s): Christian Borntraeger <cborntra@de.ibm.com>
 *
 *
 * z/VMs CP offers the possibility to issue commands via the diagnose code 8
 * this driver implements a character device that issues these commands and
 * returns the answer of CP.
 *
 * The idea of this driver is based on cpint from Neale Ferguson
 */

#include <linux/ioctl.h>
#include <linux/mutex.h>

#define VMCP_GETCODE _IOR(0x10, 1, int)
#define VMCP_SETBUF _IOW(0x10, 2, int)
#define VMCP_GETSIZE _IOR(0x10, 3, int)

struct vmcp_session {
	unsigned int bufsize;
	char *response;
	int resp_size;
	int resp_code;
	/* As we use copy_from/to_user, which might     *
	 * sleep and cannot use a spinlock              */
	struct mutex mutex;
};