926d2919ccfd3f8a1bc9a409842143c07b214d29
[reactos.git] / reactos / drivers / bus / pcix / intrface / agpintrf.c
1 /*
2 * PROJECT: ReactOS PCI Bus Driver
3 * LICENSE: BSD - See COPYING.ARM in the top level directory
4 * FILE: drivers/bus/pci/intrface/agpintrf.c
5 * PURPOSE: AGP Interface
6 * PROGRAMMERS: ReactOS Portable Systems Group
7 */
8
9 /* INCLUDES *******************************************************************/
10
11 #include <pci.h>
12 #define NDEBUG
13 #include <debug.h>
14
15 /* GLOBALS ********************************************************************/
16
17 PCI_INTERFACE AgpTargetInterface =
18 {
19 &GUID_AGP_TARGET_BUS_INTERFACE_STANDARD,
20 sizeof(AGP_BUS_INTERFACE_STANDARD),
21 AGP_BUS_INTERFACE_V1,
22 AGP_BUS_INTERFACE_V1,
23 PCI_INTERFACE_PDO,
24 0,
25 PciInterface_AgpTarget,
26 agpintrf_Constructor,
27 agpintrf_Initializer
28 };
29
30 /* FUNCTIONS ******************************************************************/
31
32 NTSTATUS
33 NTAPI
34 agpintrf_Initializer(IN PVOID Instance)
35 {
36 UNREFERENCED_PARAMETER(Instance);
37 /* PnP Interfaces don't get Initialized */
38 ASSERTMSG("PCI agpintrf_Initializer, unexpected call.", FALSE);
39 return STATUS_UNSUCCESSFUL;
40 }
41
42 NTSTATUS
43 NTAPI
44 agpintrf_Constructor(IN PVOID DeviceExtension,
45 IN PVOID Instance,
46 IN PVOID InterfaceData,
47 IN USHORT Version,
48 IN USHORT Size,
49 IN PINTERFACE Interface)
50 {
51 PPCI_PDO_EXTENSION PdoExtension = (PPCI_PDO_EXTENSION)DeviceExtension;
52
53 UNREFERENCED_PARAMETER(Instance);
54 UNREFERENCED_PARAMETER(InterfaceData);
55 UNREFERENCED_PARAMETER(Version);
56 UNREFERENCED_PARAMETER(Size);
57 UNREFERENCED_PARAMETER(Interface);
58
59 /* Only AGP bridges are supported (which are PCI-to-PCI Bridge Devices) */
60 if ((PdoExtension->BaseClass != PCI_CLASS_BRIDGE_DEV) ||
61 (PdoExtension->SubClass != PCI_SUBCLASS_BR_PCI_TO_PCI))
62 {
63 /* Fail any other PDO */
64 return STATUS_NOT_SUPPORTED;
65 }
66
67 /* Not yet implemented */
68 UNIMPLEMENTED_DBGBREAK();
69 return STATUS_NOT_IMPLEMENTED;
70 }
71
72 /* EOF */