-HalRequestSoftwareInterrupt impl. (does nothing yet)
[reactos.git] / reactos / hal / hal / hal.c
1 /* $Id: hal.c,v 1.6 2003/10/20 06:03:28 vizzini Exp $
2 *
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: hal/hal.c
6 * PURPOSE: Hardware Abstraction Layer DLL
7 * PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
8 * REVISION HISTORY:
9 * 01-08-2001 CSH Created
10 */
11
12 /* INCLUDES ******************************************************************/
13
14 #include <ddk/ntddk.h>
15 #include <roscfg.h>
16
17 #define NDEBUG
18 #include <internal/debug.h>
19
20 /* DATA **********************************************************************/
21
22 ULONG EXPORTED KdComPortInUse = 0;
23
24 /* FUNCTIONS *****************************************************************/
25
26 NTSTATUS
27 STDCALL
28 DriverEntry(
29 PDRIVER_OBJECT DriverObject,
30 PUNICODE_STRING RegistryPath)
31 {
32 UNIMPLEMENTED;
33
34 return STATUS_SUCCESS;
35 }
36
37
38 VOID
39 FASTCALL
40 ExAcquireFastMutex(
41 PFAST_MUTEX FastMutex)
42 {
43 UNIMPLEMENTED;
44 }
45
46
47 VOID
48 FASTCALL
49 ExReleaseFastMutex(
50 PFAST_MUTEX FastMutex)
51 {
52 UNIMPLEMENTED;
53 }
54
55
56 BOOLEAN FASTCALL
57 ExTryToAcquireFastMutex(
58 PFAST_MUTEX FastMutex)
59 {
60 UNIMPLEMENTED;
61
62 return TRUE;
63 }
64
65
66 VOID
67 STDCALL
68 HalAcquireDisplayOwnership(
69 PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters)
70 {
71 UNIMPLEMENTED;
72 }
73
74
75 NTSTATUS
76 STDCALL
77 HalAdjustResourceList(
78 PCM_RESOURCE_LIST Resources)
79 {
80 UNIMPLEMENTED;
81
82 return STATUS_SUCCESS;
83 }
84
85
86 BOOLEAN
87 STDCALL
88 HalAllProcessorsStarted(VOID)
89 {
90 UNIMPLEMENTED;
91
92 return TRUE;
93 }
94
95
96 NTSTATUS
97 STDCALL
98 HalAllocateAdapterChannel(
99 PADAPTER_OBJECT AdapterObject,
100 PWAIT_CONTEXT_BLOCK WaitContextBlock,
101 ULONG NumberOfMapRegisters,
102 PDRIVER_CONTROL ExecutionRoutine)
103 {
104 UNIMPLEMENTED;
105
106 return STATUS_SUCCESS;
107 }
108
109
110 PVOID
111 STDCALL
112 HalAllocateCommonBuffer(
113 PADAPTER_OBJECT AdapterObject,
114 ULONG Length,
115 PPHYSICAL_ADDRESS LogicalAddress,
116 BOOLEAN CacheEnabled)
117 {
118 UNIMPLEMENTED;
119
120 return NULL;
121 }
122
123
124 NTSTATUS
125 STDCALL
126 HalAssignSlotResources(
127 PUNICODE_STRING RegistryPath,
128 PUNICODE_STRING DriverClassName,
129 PDRIVER_OBJECT DriverObject,
130 PDEVICE_OBJECT DeviceObject,
131 INTERFACE_TYPE BusType,
132 ULONG BusNumber,
133 ULONG SlotNumber,
134 PCM_RESOURCE_LIST *AllocatedResources)
135 {
136 UNIMPLEMENTED;
137
138 return TRUE;
139 }
140
141
142 BOOLEAN
143 STDCALL
144 HalBeginSystemInterrupt(
145 ULONG Vector,
146 KIRQL Irql,
147 PKIRQL OldIrql)
148 {
149 UNIMPLEMENTED;
150
151 return TRUE;
152 }
153
154
155 VOID
156 STDCALL
157 HalCalibratePerformanceCounter(
158 ULONG Count)
159 {
160 UNIMPLEMENTED;
161 }
162
163
164 BOOLEAN
165 STDCALL
166 HalDisableSystemInterrupt(
167 ULONG Vector,
168 ULONG Unknown2)
169 {
170 UNIMPLEMENTED;
171
172 return TRUE;
173 }
174
175
176 VOID
177 STDCALL
178 HalDisplayString(
179 PCH String)
180 {
181 UNIMPLEMENTED;
182 }
183
184
185 BOOLEAN
186 STDCALL
187 HalEnableSystemInterrupt(
188 ULONG Vector,
189 ULONG Unknown2,
190 ULONG Unknown3)
191 {
192 UNIMPLEMENTED;
193
194 return TRUE;
195 }
196
197
198 VOID
199 STDCALL
200 HalEndSystemInterrupt(
201 KIRQL Irql,
202 ULONG Unknown2)
203 {
204 UNIMPLEMENTED;
205 }
206
207
208 BOOLEAN
209 STDCALL
210 HalFlushCommonBuffer(
211 ULONG Unknown1,
212 ULONG Unknown2,
213 ULONG Unknown3,
214 ULONG Unknown4,
215 ULONG Unknown5,
216 ULONG Unknown6,
217 ULONG Unknown7,
218 ULONG Unknown8)
219 {
220 UNIMPLEMENTED;
221
222 return TRUE;
223 }
224
225
226 VOID
227 STDCALL
228 HalFreeCommonBuffer(
229 PADAPTER_OBJECT AdapterObject,
230 ULONG Length,
231 PHYSICAL_ADDRESS LogicalAddress,
232 PVOID VirtualAddress,
233 BOOLEAN CacheEnabled)
234 {
235 UNIMPLEMENTED;
236 }
237
238
239 PADAPTER_OBJECT
240 STDCALL
241 HalGetAdapter(
242 PDEVICE_DESCRIPTION DeviceDescription,
243 PULONG NumberOfMapRegisters)
244 {
245 UNIMPLEMENTED;
246
247 return (PADAPTER_OBJECT)NULL;
248 }
249
250
251 ULONG
252 STDCALL
253 HalGetBusData(
254 BUS_DATA_TYPE BusDataType,
255 ULONG BusNumber,
256 ULONG SlotNumber,
257 PVOID Buffer,
258 ULONG Length)
259 {
260 UNIMPLEMENTED;
261
262 return 0;
263 }
264
265
266 ULONG
267 STDCALL
268 HalGetBusDataByOffset(
269 BUS_DATA_TYPE BusDataType,
270 ULONG BusNumber,
271 ULONG SlotNumber,
272 PVOID Buffer,
273 ULONG Offset,
274 ULONG Length)
275 {
276 UNIMPLEMENTED;
277
278 return 0;
279 }
280
281
282 BOOLEAN
283 STDCALL
284 HalGetEnvironmentVariable(
285 PCH Name,
286 PCH Value,
287 USHORT ValueLength)
288 {
289 UNIMPLEMENTED;
290
291 return FALSE;
292 }
293
294
295 ULONG
296 STDCALL
297 HalGetInterruptVector(
298 INTERFACE_TYPE InterfaceType,
299 ULONG BusNumber,
300 ULONG BusInterruptLevel,
301 ULONG BusInterruptVector,
302 PKIRQL Irql,
303 PKAFFINITY Affinity)
304 {
305 UNIMPLEMENTED;
306
307 return 0;
308 }
309
310
311 VOID
312 STDCALL
313 HalHandleNMI(
314 ULONG Unused)
315 {
316 UNIMPLEMENTED;
317 }
318
319
320 BOOLEAN
321 STDCALL
322 HalInitSystem(
323 ULONG BootPhase,
324 PLOADER_PARAMETER_BLOCK LoaderBlock)
325 {
326 UNIMPLEMENTED;
327
328 return TRUE;
329 }
330
331
332 VOID
333 STDCALL
334 HalInitializeProcessor(
335 ULONG ProcessorNumber,
336 PVOID ProcessorStack)
337 {
338 UNIMPLEMENTED;
339 }
340
341
342 BOOLEAN
343 STDCALL
344 HalMakeBeep(
345 ULONG Frequency)
346 {
347 UNIMPLEMENTED;
348
349 return TRUE;
350 }
351
352
353 VOID
354 STDCALL
355 HalProcessorIdle(VOID)
356 {
357 UNIMPLEMENTED;
358 }
359
360
361 VOID
362 STDCALL
363 HalQueryDisplayParameters(
364 PULONG DispSizeX,
365 PULONG DispSizeY,
366 PULONG CursorPosX,
367 PULONG CursorPosY)
368 {
369 UNIMPLEMENTED;
370 }
371
372
373 VOID
374 STDCALL
375 HalQueryRealTimeClock(
376 PTIME_FIELDS Time)
377 {
378 UNIMPLEMENTED;
379 }
380
381
382 ULONG
383 STDCALL
384 HalReadDmaCounter(
385 PADAPTER_OBJECT AdapterObject)
386 {
387 UNIMPLEMENTED;
388 }
389
390
391 VOID
392 STDCALL
393 HalReportResourceUsage(VOID)
394 {
395 UNIMPLEMENTED;
396 }
397
398
399 VOID
400 STDCALL
401 HalRequestIpi(
402 ULONG Unknown)
403 {
404 UNIMPLEMENTED;
405 }
406
407
408 VOID
409 STDCALL
410 HalReturnToFirmware(
411 ULONG Action)
412 {
413 UNIMPLEMENTED;
414 }
415
416
417 ULONG
418 STDCALL
419 HalSetBusData(
420 BUS_DATA_TYPE BusDataType,
421 ULONG BusNumber,
422 ULONG SlotNumber,
423 PVOID Buffer,
424 ULONG Length)
425 {
426 UNIMPLEMENTED;
427
428 return 0;
429 }
430
431
432 ULONG
433 STDCALL
434 HalSetBusDataByOffset(
435 BUS_DATA_TYPE BusDataType,
436 ULONG BusNumber,
437 ULONG SlotNumber,
438 PVOID Buffer,
439 ULONG Offset,
440 ULONG Length)
441 {
442 UNIMPLEMENTED;
443
444 return 0;
445 }
446
447
448 VOID
449 STDCALL
450 HalSetDisplayParameters(
451 ULONG CursorPosX,
452 ULONG CursorPosY)
453 {
454 UNIMPLEMENTED;
455 }
456
457
458 BOOLEAN
459 STDCALL
460 HalSetEnvironmentVariable(
461 PCH Name,
462 PCH Value)
463 {
464 UNIMPLEMENTED;
465
466 return TRUE;
467 }
468
469
470 VOID
471 STDCALL
472 HalSetRealTimeClock(
473 PTIME_FIELDS Time)
474 {
475 UNIMPLEMENTED;
476 }
477
478
479 BOOLEAN
480 STDCALL
481 HalStartNextProcessor(
482 ULONG Unknown1,
483 ULONG Unknown2)
484 {
485 UNIMPLEMENTED;
486
487 return TRUE;
488 }
489
490
491 ULONG
492 FASTCALL
493 HalSystemVectorDispatchEntry(
494 ULONG Unknown1,
495 ULONG Unknown2,
496 ULONG Unknown3)
497 {
498 UNIMPLEMENTED;
499
500 return 0;
501 }
502
503
504 BOOLEAN
505 STDCALL
506 HalTranslateBusAddress(
507 INTERFACE_TYPE InterfaceType,
508 ULONG BusNumber,
509 PHYSICAL_ADDRESS BusAddress,
510 PULONG AddressSpace,
511 PPHYSICAL_ADDRESS TranslatedAddress)
512 {
513 UNIMPLEMENTED;
514
515 return TRUE;
516 }
517
518
519 VOID
520 STDCALL
521 IoAssignDriveLetters(
522 PLOADER_PARAMETER_BLOCK LoaderBlock,
523 PSTRING NtDeviceName,
524 PUCHAR NtSystemPath,
525 PSTRING NtSystemPathString)
526 {
527 UNIMPLEMENTED;
528 }
529
530
531 BOOLEAN
532 STDCALL
533 IoFlushAdapterBuffers(
534 PADAPTER_OBJECT AdapterObject,
535 PMDL Mdl,
536 PVOID MapRegisterBase,
537 PVOID CurrentVa,
538 ULONG Length,
539 BOOLEAN WriteToDevice)
540 {
541 UNIMPLEMENTED;
542
543 return TRUE;
544 }
545
546
547 VOID
548 STDCALL
549 IoFreeAdapterChannel(
550 PADAPTER_OBJECT AdapterObject)
551 {
552 UNIMPLEMENTED;
553 }
554
555
556 VOID
557 STDCALL
558 IoFreeMapRegisters(
559 PADAPTER_OBJECT AdapterObject,
560 PVOID MapRegisterBase,
561 ULONG NumberOfMapRegisters)
562 {
563 UNIMPLEMENTED;
564 }
565
566
567 PHYSICAL_ADDRESS
568 STDCALL
569 IoMapTransfer(
570 PADAPTER_OBJECT AdapterObject,
571 PMDL Mdl,
572 PVOID MapRegisterBase,
573 PVOID CurrentVa,
574 PULONG Length,
575 BOOLEAN WriteToDevice)
576 {
577 PHYSICAL_ADDRESS Address;
578
579 UNIMPLEMENTED;
580
581 Address.QuadPart = 0;
582
583 return Address;
584 }
585
586
587 BOOLEAN
588 STDCALL
589 KdPortGetByte(
590 PUCHAR ByteRecieved)
591 {
592 UNIMPLEMENTED;
593
594 return TRUE;
595 }
596
597
598 BOOLEAN
599 STDCALL
600 KdPortGetByteEx(
601 PKD_PORT_INFORMATION PortInformation,
602 PUCHAR ByteRecieved)
603 {
604 UNIMPLEMENTED;
605
606 return TRUE;
607 }
608
609
610 BOOLEAN
611 STDCALL
612 KdPortInitialize(
613 PKD_PORT_INFORMATION PortInformation,
614 DWORD Unknown1,
615 DWORD Unknown2)
616 {
617 UNIMPLEMENTED;
618
619 return TRUE;
620 }
621
622
623 BOOLEAN
624 STDCALL
625 KdPortPollByte(
626 PUCHAR ByteRecieved)
627 {
628 UNIMPLEMENTED;
629
630 return TRUE;
631 }
632
633
634 BOOLEAN
635 STDCALL
636 KdPortPollByteEx(
637 PKD_PORT_INFORMATION PortInformation,
638 PUCHAR ByteRecieved)
639 {
640 UNIMPLEMENTED;
641
642 return TRUE;
643 }
644
645
646 VOID
647 STDCALL
648 KdPortPutByte(
649 UCHAR ByteToSend)
650 {
651 UNIMPLEMENTED;
652 }
653
654
655 VOID
656 STDCALL
657 KdPortPutByteEx(
658 PKD_PORT_INFORMATION PortInformation,
659 UCHAR ByteToSend)
660 {
661 UNIMPLEMENTED;
662 }
663
664
665 VOID
666 STDCALL
667 KdPortRestore(VOID)
668 {
669 UNIMPLEMENTED;
670 }
671
672
673 VOID
674 STDCALL
675 KdPortSave(VOID)
676 {
677 UNIMPLEMENTED;
678 }
679
680
681 BOOLEAN
682 STDCALL
683 KdPortDisableInterrupts()
684 {
685 UNIMPLEMENTED;
686 }
687
688
689 BOOLEAN
690 STDCALL
691 KdPortEnableInterrupts()
692 {
693 UNIMPLEMENTED;
694 }
695
696
697 VOID
698 STDCALL
699 KeAcquireSpinLock(
700 PKSPIN_LOCK SpinLock,
701 PKIRQL OldIrql)
702 {
703 UNIMPLEMENTED;
704 }
705
706
707 KIRQL
708 FASTCALL
709 KeAcquireSpinLockRaiseToSynch(
710 PKSPIN_LOCK SpinLock)
711 {
712 UNIMPLEMENTED;
713 }
714
715
716 VOID
717 STDCALL
718 KeFlushWriteBuffer(VOID)
719 {
720 UNIMPLEMENTED;
721 }
722
723
724 KIRQL
725 STDCALL
726 KeGetCurrentIrql(VOID)
727 {
728 UNIMPLEMENTED;
729
730 return (KIRQL)0;
731 }
732
733
734 VOID
735 STDCALL
736 KeLowerIrql(
737 KIRQL NewIrql)
738 {
739 UNIMPLEMENTED;
740 }
741
742
743 LARGE_INTEGER
744 STDCALL
745 KeQueryPerformanceCounter(
746 PLARGE_INTEGER PerformanceFreq)
747 {
748 LARGE_INTEGER Value;
749
750 UNIMPLEMENTED;
751
752 Value.QuadPart = 0;
753
754 return Value;
755 }
756
757
758 VOID
759 STDCALL
760 KeRaiseIrql(
761 KIRQL NewIrql,
762 PKIRQL OldIrql)
763 {
764 UNIMPLEMENTED;
765 }
766
767
768 KIRQL
769 STDCALL
770 KeRaiseIrqlToDpcLevel(VOID)
771 {
772 UNIMPLEMENTED;
773
774 return (KIRQL)0;
775 }
776
777
778 KIRQL
779 STDCALL
780 KeRaiseIrqlToSynchLevel(VOID)
781 {
782 UNIMPLEMENTED;
783
784 return (KIRQL)0;
785 }
786
787
788 VOID
789 STDCALL
790 KeReleaseSpinLock(
791 PKSPIN_LOCK SpinLock,
792 KIRQL NewIrql)
793 {
794 UNIMPLEMENTED;
795 }
796
797
798 VOID
799 STDCALL
800 KeStallExecutionProcessor(
801 ULONG Microseconds)
802 {
803 UNIMPLEMENTED;
804 }
805
806
807 KIRQL
808 FASTCALL
809 KfAcquireSpinLock(
810 PKSPIN_LOCK SpinLock)
811 {
812 UNIMPLEMENTED;
813
814 return (KIRQL)0;
815 }
816
817
818 VOID
819 FASTCALL
820 KfLowerIrql(
821 KIRQL NewIrql)
822 {
823 UNIMPLEMENTED;
824 }
825
826
827 KIRQL
828 FASTCALL
829 KfRaiseIrql(
830 KIRQL NewIrql)
831 {
832 UNIMPLEMENTED;
833
834 return (KIRQL)0;
835 }
836
837
838 VOID
839 FASTCALL
840 KfReleaseSpinLock(
841 PKSPIN_LOCK SpinLock,
842 KIRQL NewIrql)
843 {
844 UNIMPLEMENTED;
845 }
846
847
848 VOID
849 STDCALL
850 READ_PORT_BUFFER_UCHAR(
851 PUCHAR Port,
852 PUCHAR Buffer,
853 ULONG Count)
854 {
855 UNIMPLEMENTED;
856 }
857
858
859 VOID
860 STDCALL
861 READ_PORT_BUFFER_ULONG(
862 PULONG Port,
863 PULONG Buffer,
864 ULONG Count)
865 {
866 UNIMPLEMENTED;
867 }
868
869
870 VOID
871 STDCALL
872 READ_PORT_BUFFER_USHORT(
873 PUSHORT Port,
874 PUSHORT Buffer,
875 ULONG Count)
876 {
877 UNIMPLEMENTED;
878 }
879
880
881 UCHAR
882 STDCALL
883 READ_PORT_UCHAR(
884 PUCHAR Port)
885 {
886 UNIMPLEMENTED;
887
888 return 0;
889 }
890
891
892 ULONG
893 STDCALL
894 READ_PORT_ULONG(
895 PULONG Port)
896 {
897 UNIMPLEMENTED;
898
899 return 0;
900 }
901
902
903 USHORT
904 STDCALL
905 READ_PORT_USHORT(
906 PUSHORT Port)
907 {
908 UNIMPLEMENTED;
909
910 return 0;
911 }
912
913
914 VOID
915 STDCALL
916 WRITE_PORT_BUFFER_UCHAR(
917 PUCHAR Port,
918 PUCHAR Buffer,
919 ULONG Count)
920 {
921 UNIMPLEMENTED;
922 }
923
924
925 VOID
926 STDCALL
927 WRITE_PORT_BUFFER_USHORT(
928 PUSHORT Port,
929 PUSHORT Buffer,
930 ULONG Count)
931 {
932 UNIMPLEMENTED;
933 }
934
935
936 VOID
937 STDCALL
938 WRITE_PORT_BUFFER_ULONG(
939 PULONG Port,
940 PULONG Buffer,
941 ULONG Count)
942 {
943 UNIMPLEMENTED;
944 }
945
946
947 VOID
948 STDCALL
949 WRITE_PORT_UCHAR(
950 PUCHAR Port,
951 UCHAR Value)
952 {
953 UNIMPLEMENTED;
954 }
955
956 VOID
957 STDCALL
958 WRITE_PORT_ULONG(
959 PULONG Port,
960 ULONG Value)
961 {
962 UNIMPLEMENTED;
963 }
964
965 VOID
966 STDCALL
967 WRITE_PORT_USHORT(
968 PUSHORT Port,
969 USHORT Value)
970 {
971 UNIMPLEMENTED;
972 }
973
974 /* EOF */