Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

215 lines
3.8 KiB

  1. //
  2. // No Check-in Source Code.
  3. //
  4. // Do not make this code available to non-Microsoft personnel
  5. // without Intel's express permission
  6. //
  7. /**
  8. *** Copyright (C) 1996-97 Intel Corporation. All rights reserved.
  9. ***
  10. *** The information and source code contained herein is the exclusive
  11. *** property of Intel Corporation and may not be disclosed, examined
  12. *** or reproduced in whole or in part without explicit written authorization
  13. *** from the company.
  14. **/
  15. /*++
  16. Copyright (c) 1995 Intel Corporation
  17. Module Name:
  18. simbus.c
  19. Abstract:
  20. This module implements the routines to support the management
  21. of bus resources and translation of bus addresses.
  22. Author:
  23. 14-Apr-1995
  24. Environment:
  25. Kernel mode
  26. Revision History:
  27. --*/
  28. #include "halp.h"
  29. BOOLEAN
  30. HalTranslateBusAddress(
  31. IN INTERFACE_TYPE InterfaceType,
  32. IN ULONG BusNumber,
  33. IN PHYSICAL_ADDRESS BusAddress,
  34. IN OUT PULONG AddressSpace,
  35. OUT PPHYSICAL_ADDRESS TranslatedAddress
  36. )
  37. /*++
  38. Routine Description:
  39. This function stores the value of argument BusAddress into the
  40. memory location referenced by argument TranslatedAddress. The
  41. argument referenced by AddressSpace is always set to 0 because
  42. there is no I/O port space in IA64 architecture.
  43. In the simulation environment, this function may be called by
  44. the video miniport driver only to determine the frame buffer
  45. physical address.
  46. Return Value:
  47. Returns TRUE.
  48. --*/
  49. {
  50. *AddressSpace = 0;
  51. *TranslatedAddress = BusAddress;
  52. return TRUE;
  53. }
  54. ULONG
  55. HalGetBusData(
  56. IN BUS_DATA_TYPE BusDataType,
  57. IN ULONG BusNumber,
  58. IN ULONG SlotNumber,
  59. IN PVOID Buffer,
  60. IN ULONG Length
  61. )
  62. {
  63. return HalGetBusDataByOffset (BusDataType,BusNumber,SlotNumber,Buffer,0,Length);
  64. }
  65. ULONG
  66. HalGetBusDataByOffset (
  67. IN BUS_DATA_TYPE BusDataType,
  68. IN ULONG BusNumber,
  69. IN ULONG SlotNumber,
  70. IN PVOID Buffer,
  71. IN ULONG Offset,
  72. IN ULONG Length
  73. )
  74. /*++
  75. Routine Description:
  76. This function always returns zero.
  77. --*/
  78. {
  79. return 0;
  80. }
  81. ULONG
  82. HalSetBusData(
  83. IN BUS_DATA_TYPE BusDataType,
  84. IN ULONG BusNumber,
  85. IN ULONG SlotNumber,
  86. IN PVOID Buffer,
  87. IN ULONG Length
  88. )
  89. {
  90. return HalSetBusDataByOffset (BusDataType,BusNumber,SlotNumber,Buffer,0,Length);
  91. }
  92. ULONG
  93. HalSetBusDataByOffset(
  94. IN BUS_DATA_TYPE BusDataType,
  95. IN ULONG BusNumber,
  96. IN ULONG SlotNumber,
  97. IN PVOID Buffer,
  98. IN ULONG Offset,
  99. IN ULONG Length
  100. )
  101. /*++
  102. Routine Description:
  103. This function always returns zero.
  104. --*/
  105. {
  106. return 0;
  107. }
  108. NTSTATUS
  109. HalAssignSlotResources (
  110. IN PUNICODE_STRING RegistryPath,
  111. IN PUNICODE_STRING DriverClassName OPTIONAL,
  112. IN PDRIVER_OBJECT DriverObject,
  113. IN PDEVICE_OBJECT DeviceObject OPTIONAL,
  114. IN INTERFACE_TYPE BusType,
  115. IN ULONG BusNumber,
  116. IN ULONG SlotNumber,
  117. IN OUT PCM_RESOURCE_LIST *AllocatedResources
  118. )
  119. /*++
  120. Routine Description:
  121. Not supported. This function returns STATUS_NOT_SUPPORTED.
  122. --*/
  123. {
  124. return STATUS_NOT_SUPPORTED;
  125. }
  126. NTSTATUS
  127. HalAdjustResourceList (
  128. IN OUT PIO_RESOURCE_REQUIREMENTS_LIST *pResourceList
  129. )
  130. /*++
  131. Routine Description:
  132. No resource to be processed. The function always returns
  133. STATUS_SUCCESS.
  134. --*/
  135. {
  136. return STATUS_SUCCESS;
  137. }
  138. VOID
  139. HalReportResourceUsage (
  140. VOID
  141. )
  142. {
  143. return;
  144. }
  145. VOID
  146. KeFlushWriteBuffer(
  147. VOID
  148. )
  149. /*++
  150. Routine Description:
  151. Flushes all write buffers and/or other data storing or reordering
  152. hardware on the current processor. This ensures that all previous
  153. writes will occur before any new reads or writes are completed.
  154. In the simulation environment, there is no write buffer and nothing
  155. needs to be done.
  156. Arguments:
  157. None
  158. Return Value:
  159. None.
  160. --*/
  161. {
  162. return;
  163. }