e1bdd3e0251bd2a0bf578e79bf21ed8d24e3446e
[tpg/acess2.git] / Kernel / include / tpl_drv_common.h
1 /*
2  * Acess2
3  * - Common Driver Interface
4  */
5 /**
6  * \file tpl_drv_common.h
7  * \brief Common Driver Interface Definitions
8  */
9 #ifndef _TPL_COMMON_H
10 #define _TPL_COMMON_H
11
12 /**
13  * \enum eTplDrv_IOCtl
14  * \brief Common IOCtl Calls
15  */
16 enum eTplDrv_IOCtl {
17         /// \brief Driver Type - Return an ::eTplDrv_Type value
18         DRV_IOCTL_TYPE,
19         /// \brief Get driver identifier - (char *dest[4])
20         DRV_IOCTL_IDENT,
21         /// \brief Get driver version - (int *ver)
22         DRV_IOCTL_VERSION,
23         /// \brief Get a IOCtl from a symbolic name
24         DRV_IOCTL_LOOKUP
25 };
26
27 #define DRV_IOCTLNAMES  "type", "ident", "version", "lookup"
28
29 /**
30  * \enum eTplDrv_Type
31  * \brief Driver Types returned by DRV_IOCTL_TYPE
32  */
33 enum eTplDrv_Type {
34         DRV_TYPE_NULL,          //!< NULL Type - Custom Interface
35         DRV_TYPE_MISC,          //!< Miscelanious Compilant - Supports the core calls
36         DRV_TYPE_TERMINAL,      //!< Terminal
37         DRV_TYPE_VIDEO,         //!< Video - LFB
38         DRV_TYPE_SOUND,         //!< Audio
39         DRV_TYPE_DISK,          //!< Disk
40         DRV_TYPE_KEYBOARD,      //!< Keyboard
41         DRV_TYPE_MOUSE,         //!< Mouse
42         DRV_TYPE_JOYSTICK,      //!< Joystick / Gamepad
43         DRV_TYPE_NETWORK        //!< Network Device
44 };
45
46 #endif

UCC git Repository :: git.ucc.asn.au