windows-nt/Source/XPSP1/NT/base/hals/inc/hali.h

120 lines
1.9 KiB
C
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
/*++ BUILD Version: 0001 // Increment this if a change has global effects
Copyright (c) 1995 Microsoft Corporation
Module Name:
hali.h
Abstract:
This header file defines the private Hardware Architecture Layer (HAL)
interfaces for bus range support.
Author:
David N. Cutler (davec) 28-Mar-95
Revision History:
--*/
#ifndef _HALI_
#define _HALI_
// define INVALID_HANDLE for HAL routines
#define INVALID_HANDLE (HANDLE) -1
//
// Define type of memory for bus range allocations.
//
#define SPRANGEPOOL NonPagedPool
//
// General Pool Tag for HAL use (see pooltag.txt).
//
#define HAL_POOL_TAG ' laH'
//
// Define bus range function prototypes.
//
PSUPPORTED_RANGES
HalpMergeRanges (
IN PSUPPORTED_RANGES Parent,
IN PSUPPORTED_RANGES Child
);
VOID
HalpMergeRangeList (
PSUPPORTED_RANGE NewList,
PSUPPORTED_RANGE Source1,
PSUPPORTED_RANGE Source2
);
PSUPPORTED_RANGES
HalpConsolidateRanges (
PSUPPORTED_RANGES Ranges
);
PSUPPORTED_RANGES
HalpAllocateNewRangeList (
VOID
);
VOID
HalpFreeRangeList (
PSUPPORTED_RANGES Ranges
);
PSUPPORTED_RANGES
HalpCopyRanges (
PSUPPORTED_RANGES Source
);
VOID
HalpAddRangeList (
IN OUT PSUPPORTED_RANGE DRange,
OUT PSUPPORTED_RANGE SRange
);
VOID
HalpAddRange (
PSUPPORTED_RANGE HRange,
ULONG AddressSpace,
LONGLONG SystemBase,
LONGLONG Base,
LONGLONG Limit
);
VOID
HalpRemoveRanges (
IN OUT PSUPPORTED_RANGES Minuend,
IN PSUPPORTED_RANGES Subtrahend
);
VOID
HalpRemoveRangeList (
IN OUT PSUPPORTED_RANGE Minuend,
IN PSUPPORTED_RANGE Subtrahend
);
VOID
HalpRemoveRange (
PSUPPORTED_RANGE HRange,
LONGLONG Base,
LONGLONG Limit
);
VOID
HalpDisplayAllBusRanges (
VOID
);
#endif // _HALI_