summaryrefslogtreecommitdiff
path: root/hid/firefly/driver/driver.c
blob: acf7c4064df6e691182b650a881e4af6040b860d (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
/*++

Copyright (c) Microsoft Corporation.  All rights reserved.

    THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
    KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
    PURPOSE.


Module Name:

    driver.c

Abstract:

    This modules contains the Windows Driver Framework Driver object
    handlers for the firefly filter driver.

Environment:

    Kernel mode

--*/

#include "FireFly.h"

//
// Main driver entry, initialize the framework, register
// driver event handlers
//
NTSTATUS
DriverEntry(
    IN PDRIVER_OBJECT  DriverObject,
    IN PUNICODE_STRING RegistryPath
    )
{
    WDF_DRIVER_CONFIG params;
    NTSTATUS  status;

    KdPrint(("FireFly: DriverEntry - WDF version built on %s %s\n", 
                            __DATE__, __TIME__));

    WDF_DRIVER_CONFIG_INIT(
                        &params,
                        FireFlyEvtDeviceAdd
                        );

    //
    // Create the framework WDFDRIVER object, with the handle
    // to it returned in Driver.
    //
    status = WdfDriverCreate(DriverObject, 
                             RegistryPath, 
                             WDF_NO_OBJECT_ATTRIBUTES, 
                             &params, 
                             WDF_NO_HANDLE);
    if (!NT_SUCCESS(status)) {
        //
        // Framework will automatically cleanup on error Status return
        //
        KdPrint(("FireFly: Error Creating WDFDRIVER 0x%x\n", status));
    }

    return status;
}