ReactOS 0.4.16-dev-1946-g52006dd
arbmem.c File Reference
#include <ntoskrnl.h>
#include <debug.h>
Include dependency graph for arbmem.c:

Go to the source code of this file.

Macros

#define NDEBUG
 

Functions

NTSTATUS NTAPI IopArbMemUnpackRequirements (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _Out_ PUINT64 OutMinimumAddress, _Out_ PUINT64 OutMaximumAddress, _Out_ PUINT32 OutLength, _Out_ PUINT32 OutAlignment)
 
NTSTATUS NTAPI IopArbMemPackResource (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _In_ UINT64 Start, _Out_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor)
 
NTSTATUS NTAPI IopArbMemUnpackResource (_In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor, _Out_ PUINT64 Start, _Out_ PUINT32 OutLength)
 
INT32 NTAPI IopArbMemScoreRequirement (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor)
 
NTSTATUS NTAPI IopArbMemInitialize (VOID)
 

Variables

ARBITER_INSTANCE IopRootMemArbiter
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 11 of file arbmem.c.

Function Documentation

◆ IopArbMemInitialize()

NTSTATUS NTAPI IopArbMemInitialize ( VOID  )

Definition at line 90 of file arbmem.c.

91{
93
94 PAGED_CODE();
95 IopRootMemArbiter.Name = L"RootMemory";
100
102 NULL,
105 L"Root",
106 NULL);
107 if (!NT_SUCCESS(Status))
108 {
109 DPRINT1("IopArbDmaInitialize: Failed with %X", Status);
110 }
111
112 return Status;
113}
#define PAGED_CODE()
NTSTATUS NTAPI ArbInitializeArbiterInstance(_Inout_ PARBITER_INSTANCE Arbiter, _In_ PDEVICE_OBJECT BusDeviceObject, _In_ CM_RESOURCE_TYPE ResourceType, _In_ PCWSTR ArbiterName, _In_ PCWSTR OrderName, _In_ PARB_TRANSLATE_ORDERING TranslateOrderingFunction)
Definition: arbiter.c:282
NTSTATUS NTAPI IopArbMemUnpackResource(_In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor, _Out_ PUINT64 Start, _Out_ PUINT32 OutLength)
Definition: arbmem.c:60
NTSTATUS NTAPI IopArbMemUnpackRequirements(_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _Out_ PUINT64 OutMinimumAddress, _Out_ PUINT64 OutMaximumAddress, _Out_ PUINT32 OutLength, _Out_ PUINT32 OutAlignment)
Definition: arbmem.c:22
ARBITER_INSTANCE IopRootMemArbiter
Definition: pnpinit.c:26
NTSTATUS NTAPI IopArbMemPackResource(_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _In_ UINT64 Start, _Out_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor)
Definition: arbmem.c:43
INT32 NTAPI IopArbMemScoreRequirement(_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor)
Definition: arbmem.c:77
LONG NTSTATUS
Definition: precomp.h:26
#define DPRINT1
Definition: precomp.h:8
#define NULL
Definition: types.h:112
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:33
#define L(x)
Definition: resources.c:13
Status
Definition: gdiplustypes.h:25
#define CmResourceTypeBusNumber
Definition: restypes.h:109
PARB_UNPACK_RESOURCE UnpackResource
Definition: arbiter.h:196
PARB_SCORE_REQUIREMENT ScoreRequirement
Definition: arbiter.h:197
PARB_UNPACK_REQUIREMENT UnpackRequirement
Definition: arbiter.h:194
PARB_PACK_RESOURCE PackResource
Definition: arbiter.h:195
#define STATUS_UNSUCCESSFUL
Definition: udferr_usr.h:132

Referenced by IopInitializeArbiters().

◆ IopArbMemPackResource()

NTSTATUS NTAPI IopArbMemPackResource ( _In_ PIO_RESOURCE_DESCRIPTOR  IoDescriptor,
_In_ UINT64  Start,
_Out_ PCM_PARTIAL_RESOURCE_DESCRIPTOR  CmDescriptor 
)

Definition at line 43 of file arbmem.c.

47{
48 PAGED_CODE();
49 DPRINT("IopArbMemPackResource: IoDescriptor: %p, Start: %p, CmDescriptor: %p\n",
50 IoDescriptor,
51 Start,
52 CmDescriptor);
53
56}
#define UNIMPLEMENTED
Definition: ntoskrnl.c:15
#define STATUS_NOT_IMPLEMENTED
Definition: d3dkmdt.h:42
return pTarget Start()
#define DPRINT
Definition: sndvol32.h:73

Referenced by IopArbMemInitialize().

◆ IopArbMemScoreRequirement()

INT32 NTAPI IopArbMemScoreRequirement ( _In_ PIO_RESOURCE_DESCRIPTOR  IoDescriptor)

Definition at line 77 of file arbmem.c.

79{
80 PAGED_CODE();
81 DPRINT("IopArbMemScoreRequirement: IoDescriptor: %p\n",
82 IoDescriptor);
83
85 return 0;
86}

Referenced by IopArbMemInitialize().

◆ IopArbMemUnpackRequirements()

NTSTATUS NTAPI IopArbMemUnpackRequirements ( _In_ PIO_RESOURCE_DESCRIPTOR  IoDescriptor,
_Out_ PUINT64  OutMinimumAddress,
_Out_ PUINT64  OutMaximumAddress,
_Out_ PUINT32  OutLength,
_Out_ PUINT32  OutAlignment 
)

Definition at line 22 of file arbmem.c.

28{
29 PAGED_CODE();
30 DPRINT("IopArbMemUnpackRequirements: IoDescriptor: %p, OutMinimumAddress: %p, OutMaximumAddress: %p, OutLength: %p, OutAlignment: %p\n",
31 IoDescriptor,
32 OutMinimumAddress,
33 OutMaximumAddress,
34 OutLength,
35 OutAlignment);
36
39}

Referenced by IopArbMemInitialize().

◆ IopArbMemUnpackResource()

NTSTATUS NTAPI IopArbMemUnpackResource ( _In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR  CmDescriptor,
_Out_ PUINT64  Start,
_Out_ PUINT32  OutLength 
)

Definition at line 60 of file arbmem.c.

64{
65 PAGED_CODE();
66 DPRINT("IopArbMemUnpackResource: CmDescriptor: %p, Start: %p, OutLength: %p\n",
67 CmDescriptor,
68 Start,
69 OutLength);
70
73}

Referenced by IopArbMemInitialize().

Variable Documentation

◆ IopRootMemArbiter

ARBITER_INSTANCE IopRootMemArbiter
extern

Definition at line 26 of file pnpinit.c.

Referenced by IopArbMemInitialize().