summaryrefslogtreecommitdiff
path: root/usb/UcmCxUcsi/UcsiInterface.h
blob: e99a4c07c374d5308b8d122085aaaee1e939abae (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
/*++

Copyright (c) Microsoft Corporation. All rights reserved.

Module Name:

    UcsiInterface.h

Abstract:

    Interface to the driver.

Environment:

    Kernel-mode and user-mode.

--*/


#pragma once


// {6C846EEA-9649-46B3-9C37-2556133E5006}
DEFINE_GUID(GUID_DEVINTERFACE_UCSI_TEST,
0x6c846eea, 0x9649, 0x46b3, 0x9c, 0x37, 0x25, 0x56, 0x13, 0x3e, 0x50, 0x6);

//
// A random value from the Microsoft-reserved range.
//
#define FILE_DEVICE_UCSI 4627

#define IOCTL_UCSI_SEND_COMMAND \
    (DWORD) CTL_CODE(FILE_DEVICE_UCSI, \
                     0x401, \
                     METHOD_BUFFERED, \
                     FILE_ANY_ACCESS)

#define IOCTL_UCSI_GET_CCI \
    (DWORD) CTL_CODE(FILE_DEVICE_UCSI, \
                     0x402, \
                     METHOD_BUFFERED, \
                     FILE_ANY_ACCESS)

#define IOCTL_UCSI_GET_MESSAGE \
    (DWORD) CTL_CODE(FILE_DEVICE_UCSI, \
                     0x403, \
                     METHOD_BUFFERED, \
                     FILE_ANY_ACCESS)

//
// An enum defined to make it convenient to pretty-print the IOCTL name
// in WPP.
//

typedef enum _UCSI_IOCTL {

    _IOCTL_UCSI_SEND_COMMAND = IOCTL_UCSI_SEND_COMMAND,
    _IOCTL_UCSI_GET_CCI = IOCTL_UCSI_GET_CCI,
    _IOCTL_UCSI_GET_MESSAGE = IOCTL_UCSI_GET_MESSAGE

} UCSI_IOCTL;

//
// WPP tracing for enums
//

//
// begin_wpp config
//
// CUSTOM_TYPE(UcsiIoctl, ItemEnum(_UCSI_IOCTL));
//
// end_wpp
//