aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/pvr/ioctldef.h
blob: 36a16846781ab05bd9f7acf6d8819c4e180edbd5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/**********************************************************************
 *
 * Copyright(c) 2008 Imagination Technologies Ltd. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful but, except
 * as otherwise stated in writing, 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.,
 * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * The full GNU General Public License is included in this distribution in
 * the file called "COPYING".
 *
 * Contact Information:
 * Imagination Technologies Ltd. <gpl-support@imgtec.com>
 * Home Park Estate, Kings Langley, Herts, WD4 8LZ, UK
 *
 ******************************************************************************/

#ifndef __IOCTLDEF_H__
#define __IOCTLDEF_H__

#define MAKEIOCTLINDEX(i)			(((i) >> 2) & 0xFFF)

#define DEVICE_TYPE ULONG

#define FILE_DEVICE_BEEP			0x00000001
#define FILE_DEVICE_CD_ROM			0x00000002
#define FILE_DEVICE_CD_ROM_FILE_SYSTEM		0x00000003
#define FILE_DEVICE_CONTROLLER			0x00000004
#define FILE_DEVICE_DATALINK			0x00000005
#define FILE_DEVICE_DFS				0x00000006
#define FILE_DEVICE_DISK			0x00000007
#define FILE_DEVICE_DISK_FILE_SYSTEM		0x00000008
#define FILE_DEVICE_FILE_SYSTEM			0x00000009
#define FILE_DEVICE_INPORT_PORT			0x0000000a
#define FILE_DEVICE_KEYBOARD			0x0000000b
#define FILE_DEVICE_MAILSLOT			0x0000000c
#define FILE_DEVICE_MIDI_IN			0x0000000d
#define FILE_DEVICE_MIDI_OUT			0x0000000e
#define FILE_DEVICE_MOUSE			0x0000000f
#define FILE_DEVICE_MULTI_UNC_PROVIDER		0x00000010
#define FILE_DEVICE_NAMED_PIPE			0x00000011
#define FILE_DEVICE_NETWORK			0x00000012
#define FILE_DEVICE_NETWORK_BROWSER		0x00000013
#define FILE_DEVICE_NETWORK_FILE_SYSTEM		0x00000014
#define FILE_DEVICE_NULL			0x00000015
#define FILE_DEVICE_PARALLEL_PORT		0x00000016
#define FILE_DEVICE_PHYSICAL_NETCARD		0x00000017
#define FILE_DEVICE_PRINTER			0x00000018
#define FILE_DEVICE_SCANNER			0x00000019
#define FILE_DEVICE_SERIAL_MOUSE_PORT		0x0000001a
#define FILE_DEVICE_SERIAL_PORT			0x0000001b
#define FILE_DEVICE_SCREEN			0x0000001c
#define FILE_DEVICE_SOUND			0x0000001d
#define FILE_DEVICE_STREAMS			0x0000001e
#define FILE_DEVICE_TAPE			0x0000001f
#define FILE_DEVICE_TAPE_FILE_SYSTEM		0x00000020
#define FILE_DEVICE_TRANSPORT			0x00000021
#define FILE_DEVICE_UNKNOWN			0x00000022
#define FILE_DEVICE_VIDEO			0x00000023
#define FILE_DEVICE_VIRTUAL_DISK		0x00000024
#define FILE_DEVICE_WAVE_IN			0x00000025
#define FILE_DEVICE_WAVE_OUT			0x00000026
#define FILE_DEVICE_8042_PORT			0x00000027
#define FILE_DEVICE_NETWORK_REDIRECTOR		0x00000028
#define FILE_DEVICE_BATTERY			0x00000029
#define FILE_DEVICE_BUS_EXTENDER		0x0000002a
#define FILE_DEVICE_MODEM			0x0000002b
#define FILE_DEVICE_VDM				0x0000002c
#define FILE_DEVICE_MASS_STORAGE		0x0000002d

#define CTL_CODE( DeviceType, Function, Method, Access) (		   \
    ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
)

#define METHOD_BUFFERED				0
#define METHOD_IN_DIRECT			1
#define METHOD_OUT_DIRECT			2
#define METHOD_NEITHER				3

#define FILE_ANY_ACCESS				0
#define FILE_READ_ACCESS			0x0001
#define FILE_WRITE_ACCESS			0x0002

#endif