62
62
STDCALL void WRAP_EXPORT(WRITE_PORT_BUFFER_USHORT)
63
63
(ULONG_PTR port, USHORT *buf, ULONG count)
67
for (i = 0 ; i < count ; i++)
65
outsw(port, buf, count);
71
68
STDCALL void WRAP_EXPORT(READ_PORT_BUFFER_USHORT)
72
69
(ULONG_PTR port, USHORT *buf, ULONG count)
76
for (i = 0 ; i < count; i++)
71
insw(port, buf, count);
80
74
STDCALL void WRAP_EXPORT(WRITE_REGISTER_ULONG)
98
STDCALL KIRQL WRAP_EXPORT(KeGetCurrentIrql)
101
return current_irql();
104
104
_FASTCALL KIRQL WRAP_EXPORT(KfRaiseIrql)
105
105
(FASTCALL_DECL_1(KIRQL newirql))
109
TRACEENTER4("irql = %d", newirql);
109
TRACEENTER5("irql = %d", newirql);
110
110
irql = raise_irql(newirql);
111
TRACEEXIT4(return irql);
111
TRACEEXIT5(return irql);
114
114
_FASTCALL void WRAP_EXPORT(KfLowerIrql)
115
115
(FASTCALL_DECL_1(KIRQL oldirql))
117
TRACEENTER4("irql = %d", oldirql);
117
TRACEENTER5("irql = %d", oldirql);
118
118
lower_irql(oldirql);
122
122
_FASTCALL KIRQL WRAP_EXPORT(KfAcquireSpinLock)
127
TRACEENTER4("lock = %p", lock);
127
TRACEENTER5("lock = %p", lock);
128
128
oldirql = kspin_lock_irql(lock, DISPATCH_LEVEL);
129
TRACEEXIT4(return oldirql);
129
TRACEEXIT5(return oldirql);
132
132
_FASTCALL void WRAP_EXPORT(KfReleaseSpinLock)
133
133
(FASTCALL_DECL_2(KSPIN_LOCK *lock, KIRQL newirql))
135
TRACEENTER4("lock = %p, irql = %d", lock, newirql);
135
TRACEENTER5("lock = %p, irql = %d", lock, newirql);
136
136
kspin_unlock_irql(lock, newirql);
141
140
_FASTCALL void WRAP_EXPORT(KefAcquireSpinLockAtDpcLevel)
142
141
(FASTCALL_DECL_1(KSPIN_LOCK *lock))
146
TRACEENTER4("lock = %p", lock);
149
irql = current_irql();
150
if (irql != DISPATCH_LEVEL)
151
ERROR("irql %d != DISPATCH_LEVEL", irql);
143
TRACEENTER5("lock = %p", lock);
145
if (current_irql() != DISPATCH_LEVEL)
146
ERROR("irql != DISPATCH_LEVEL");
153
148
kspin_lock(lock);
157
152
_FASTCALL void WRAP_EXPORT(KefReleaseSpinLockFromDpcLevel)
158
153
(FASTCALL_DECL_1(KSPIN_LOCK *lock))
160
TRACEENTER4("lock = %p", lock);
155
TRACEENTER5("lock = %p", lock);
161
156
#ifdef DEBUG_IRQL
162
157
if (current_irql() != DISPATCH_LEVEL)
163
158
ERROR("irql != DISPATCH_LEVEL");
165
160
kspin_unlock(lock);
170
164
#include "hal_exports.h"