ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

halstub.c
Go to the documentation of this file.
00001 /*
00002 * PROJECT:         ReactOS Kernel
00003 * LICENSE:         GPL - See COPYING in the top level directory
00004 * FILE:            ntoskrnl/fstub/halstub.c
00005 * PURPOSE:         I/O Stub HAL Routines
00006 * PROGRAMMERS:     Alex Ionescu (alex.ionescu@reactos.org)
00007                    Pierre Schweitzer (pierre.schweitzer@reactos.org)
00008 */
00009 
00010 /* INCLUDES ******************************************************************/
00011 
00012 #include <ntoskrnl.h>
00013 #define NDEBUG
00014 #include <debug.h>
00015 
00016 /* GLOBALS *******************************************************************/
00017 
00018 HAL_DISPATCH HalDispatchTable =
00019 {
00020     HAL_DISPATCH_VERSION,
00021     xHalQuerySystemInformation,
00022     xHalSetSystemInformation,
00023     xHalQueryBusSlots,
00024     0,
00025     xHalExamineMBR,
00026     xHalIoAssignDriveLetters,
00027     xHalIoReadPartitionTable,
00028     xHalIoSetPartitionInformation,
00029     xHalIoWritePartitionTable,
00030     xHalHandlerForBus,
00031     xHalReferenceHandler,
00032     xHalReferenceHandler,
00033     xHalInitPnpDriver,
00034     xHalInitPowerManagement,
00035     (pHalGetDmaAdapter) NULL,
00036     xHalGetInterruptTranslator,
00037     xHalStartMirroring,
00038     xHalEndMirroring,
00039     xHalMirrorPhysicalMemory,
00040     xHalEndOfBoot,
00041     xHalMirrorPhysicalMemory
00042 };
00043 
00044 HAL_PRIVATE_DISPATCH HalPrivateDispatchTable =
00045 {
00046     HAL_PRIVATE_DISPATCH_VERSION,
00047     xHalHandlerForBus,
00048     (pHalHandlerForConfigSpace)xHalHandlerForBus,
00049     xHalLocateHiberRanges,
00050     xHalRegisterBusHandler,
00051     xHalSetWakeEnable,
00052     xHalSetWakeAlarm,
00053     xHalTranslateBusAddress,
00054     (pHalAssignSlotResources)xHalTranslateBusAddress,
00055     xHalHaltSystem,
00056     (pHalFindBusAddressTranslation)NULL,
00057     (pHalResetDisplay)NULL,
00058     xHalAllocateMapRegisters,
00059     xKdSetupPciDeviceForDebugging,
00060     xKdReleasePciDeviceForDebugging,
00061     xKdGetAcpiTablePhase,
00062     (pKdCheckPowerButton)xHalReferenceHandler,
00063     xHalVectorToIDTEntry,
00064     (pKdMapPhysicalMemory64)MatchAll,
00065     (pKdUnmapVirtualAddress)xKdUnmapVirtualAddress
00066 };
00067 
00068 /* FUNCTIONS *****************************************************************/
00069 
00070 UCHAR
00071 NTAPI
00072 xHalVectorToIDTEntry(IN ULONG Vector)
00073 {
00074     /* Return the vector */
00075     return (UCHAR)Vector;
00076 }
00077 
00078 VOID
00079 NTAPI
00080 xHalHaltSystem(VOID)
00081 {
00082     /* Halt execution */
00083     while (TRUE);
00084 }
00085 
00086 VOID
00087 NTAPI
00088 xHalEndOfBoot(VOID)
00089 {
00090     PAGED_CODE();
00091 
00092     /* Nothing */
00093     return;
00094 }
00095 
00096 VOID
00097 NTAPI
00098 xHalSetWakeEnable(IN BOOLEAN Enable)
00099 {
00100     /* Nothing */
00101     return;
00102 }
00103 
00104 PBUS_HANDLER
00105 FASTCALL
00106 xHalHandlerForBus(IN INTERFACE_TYPE InterfaceType,
00107                   IN ULONG BusNumber)
00108 {
00109     return NULL;
00110 }
00111 
00112 VOID
00113 FASTCALL
00114 xHalReferenceHandler(IN PBUS_HANDLER BusHandler)
00115 {
00116     /* Nothing */
00117     return;
00118 }
00119 
00120 NTSTATUS
00121 NTAPI
00122 xHalInitPnpDriver(VOID)
00123 {
00124     return STATUS_NOT_SUPPORTED;
00125 }
00126 
00127 NTSTATUS
00128 NTAPI
00129 xHalInitPowerManagement(IN PPM_DISPATCH_TABLE PmDriverDispatchTable,
00130                         OUT PPM_DISPATCH_TABLE *PmHalDispatchTable)
00131 {
00132     return STATUS_NOT_SUPPORTED;
00133 }
00134 
00135 NTSTATUS
00136 NTAPI
00137 xHalStartMirroring(VOID)
00138 {
00139     PAGED_CODE();
00140 
00141     return STATUS_NOT_SUPPORTED;
00142 }
00143 
00144 NTSTATUS
00145 NTAPI
00146 xHalEndMirroring(IN ULONG PassNumber)
00147 {
00148     return STATUS_NOT_SUPPORTED;
00149 }
00150 
00151 NTSTATUS
00152 NTAPI
00153 xHalMirrorPhysicalMemory(IN PHYSICAL_ADDRESS PhysicalAddress,
00154                          IN LARGE_INTEGER NumberOfBytes)
00155 {
00156     return STATUS_NOT_SUPPORTED;
00157 }
00158 
00159 NTSTATUS
00160 NTAPI
00161 xHalQueryBusSlots(IN PBUS_HANDLER BusHandler,
00162                   IN ULONG BufferSize,
00163                   OUT PULONG SlotNumbers,
00164                   OUT PULONG ReturnedLength)
00165 {
00166     PAGED_CODE();
00167 
00168     return STATUS_NOT_SUPPORTED;
00169 }
00170 
00171 NTSTATUS
00172 NTAPI
00173 xHalSetSystemInformation(IN HAL_SET_INFORMATION_CLASS InformationClass,
00174                          IN ULONG BufferSize,
00175                          IN PVOID Buffer)
00176 {
00177     PAGED_CODE();
00178 
00179     return STATUS_INVALID_LEVEL;
00180 }
00181 
00182 NTSTATUS
00183 NTAPI
00184 xHalQuerySystemInformation(IN HAL_QUERY_INFORMATION_CLASS InformationClass,
00185                            IN ULONG BufferSize,
00186                            IN OUT PVOID Buffer,
00187                            OUT PULONG ReturnedLength)
00188 {
00189     PAGED_CODE();
00190 
00191     return STATUS_INVALID_LEVEL;
00192 }
00193 
00194 VOID
00195 NTAPI
00196 xHalLocateHiberRanges(IN PVOID MemoryMap)
00197 {
00198     /* Nothing */
00199     return;
00200 }
00201 
00202 NTSTATUS
00203 NTAPI
00204 xHalRegisterBusHandler(IN INTERFACE_TYPE InterfaceType,
00205                        IN BUS_DATA_TYPE ConfigSpace,
00206                        IN ULONG BusNumber,
00207                        IN INTERFACE_TYPE ParentInterfaceType,
00208                        IN ULONG ParentBusNumber,
00209                        IN ULONG ContextSize,
00210                        IN PINSTALL_BUS_HANDLER InstallCallback,
00211                        OUT PBUS_HANDLER *BusHandler)
00212 {
00213     PAGED_CODE();
00214 
00215     return STATUS_NOT_SUPPORTED;
00216 }
00217 
00218 VOID
00219 NTAPI
00220 xHalSetWakeAlarm(IN ULONGLONG AlartTime,
00221                  IN PTIME_FIELDS TimeFields)
00222 {
00223     /* Nothing */
00224     return;
00225 }
00226 
00227 BOOLEAN
00228 NTAPI
00229 xHalTranslateBusAddress(IN INTERFACE_TYPE InterfaceType,
00230                         IN ULONG BusNumber,
00231                         IN PHYSICAL_ADDRESS BusAddress,
00232                         IN OUT PULONG AddressSpace,
00233                         OUT PPHYSICAL_ADDRESS TranslatedAddress)
00234 {
00235     KeBugCheckEx(HAL_INITIALIZATION_FAILED, 0, 0, 0, 0);
00236 
00237     return FALSE;
00238 }
00239 
00240 NTSTATUS
00241 NTAPI
00242 xHalAllocateMapRegisters(IN PADAPTER_OBJECT AdapterObject,
00243                          IN ULONG Unknown,
00244                          IN ULONG Unknown2,
00245                          PMAP_REGISTER_ENTRY Registers)
00246 {
00247     PAGED_CODE();
00248 
00249     return STATUS_NOT_IMPLEMENTED;
00250 }
00251 
00252 NTSTATUS
00253 NTAPI
00254 xKdSetupPciDeviceForDebugging(IN PVOID LoaderBlock OPTIONAL,
00255                               IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
00256 {
00257     return STATUS_NOT_IMPLEMENTED;
00258 }
00259 
00260 NTSTATUS
00261 NTAPI
00262 xKdReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
00263 {
00264     return STATUS_NOT_IMPLEMENTED;
00265 }
00266 
00267 PVOID
00268 NTAPI
00269 xKdGetAcpiTablePhase(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
00270                      IN ULONG Signature)
00271 {
00272     return NULL;
00273 }
00274 
00275 PVOID
00276 NTAPI
00277 MatchAll(IN PHYSICAL_ADDRESS PhysicalAddress,
00278          IN ULONG NumberPages,
00279          IN BOOLEAN FlushCurrentTLB)
00280 {
00281     return NULL;
00282 }
00283 
00284 VOID
00285 NTAPI
00286 xKdUnmapVirtualAddress(IN PVOID VirtualAddress,
00287                        IN ULONG NumberPages,
00288                        IN BOOLEAN FlushCurrentTLB)
00289 {
00290     /* Nothing */
00291     return;
00292 }

Generated on Sun May 27 2012 04:19:07 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.