81 lines
2.3 KiB
C
Raw Permalink Normal View History

2001-01-01 00:00:00 +01:00
/******************************************************************************
*
* Module: smp.h
*
* Description:
* This file contains macros that replace calls to functions containing
* critical code with calls to SMP-safe wrappers for the functions. It is
* only meant to be included in those modules that contain calls to these
* functions, and not the modules that define these functions.
*
* THE INFORMATION CONTAINED HEREIN IS PROPRIETARY AND CONFIDENTIAL TO
* NVIDIA, CORPORATION. USE, REPRODUCTION OR DISCLOSURE TO ANY THIRD PARTY
* IS SUBJECT TO WRITTEN PRE-APPROVAL BY NVIDIA, CORPORATION.
*
******************************************************************************/
#if defined(NTRM) && !defined(UNIX) && !defined(MACOS)
#if (_WIN32_WINNT < 0x0500)
// replacement macros for SMP-safe wrapper functions
#define fifoUpdateObjectInstance(a, b, c, d) smpFifoUpdateObjectInstance(a, b, c, d)
#define fifoDeleteObjectInstance(a, b, c) smpFifoDeleteObjectInstance(a, b, c)
#define fifoResetChannelState(a, b) smpFifoResetChannelState(a, b)
#define fifoDeleteSubchannelContextEntry(a, b) smpFifoDeleteSubchannelContextEntry(a, b)
#define nvHalFbSetAllocParameters(a, b) smpNvHalFbSetAllocParameters(a, b)
#define nvHalFbFree(a, b) smpNvHalFbFree(a, b)
#define VBlankDeleteCallback(a, b, c) smpVBlankDeleteCallback(a, b, c)
#define classDirectSoftwareMethod(a, b, c, d) smpClassDirectSoftwareMethod(a, b, c, d)
// SMP-safe wrapper function prototypes
RM_STATUS smpFifoUpdateObjectInstance
(
PHWINFO pDev,
POBJECT Object,
U032 ChID,
U032 Instance
);
RM_STATUS smpFifoDeleteObjectInstance
(
PHWINFO pDev,
POBJECT Object,
U032 ChID
);
RM_STATUS smpFifoResetChannelState
(
PHWINFO pDev,
U032 ChID
);
RM_STATUS smpFifoDeleteSubchannelContextEntry
(
PHWINFO pDev,
POBJECT Object
);
RM_STATUS smpNvHalFbSetAllocParameters
(
PHWINFO pDev,
PFBALLOCINFO pFbAllocInfo
);
RM_STATUS smpNvHalFbFree
(
PHWINFO pDev,
U032 hwResId
);
VOID smpVBlankDeleteCallback
(
PHWINFO pDev,
U032 Head,
PVBLANKCALLBACK Callback
);
RM_STATUS smpClassDirectSoftwareMethod
(
PHWINFO pDev,
POBJECT Object,
U032 Offset,
V032 Data
);
#endif // (_WIN32_WINNT < 0x0500)
#endif