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.

71 lines
1.2 KiB

  1. /*++
  2. Copyright (c) 1989 Microsoft Corporation
  3. Module Name:
  4. xip.h
  5. Abstract:
  6. Definitions shared between the kernel and XIP driver.
  7. The XIP driver gets parameters through an exported function
  8. rather than sharing data.
  9. Author:
  10. DavePr 2000/10/10
  11. Revision History:
  12. --*/
  13. #ifndef _XIP_
  14. #define _XIP_
  15. #define XIP_POOLTAG ' PIX'
  16. typedef struct _XIP_BOOT_PARAMETERS {
  17. BOOLEAN SystemDrive;
  18. BOOLEAN ReadOnly;
  19. PFN_NUMBER BasePage;
  20. PFN_NUMBER PageCount;
  21. } XIP_BOOT_PARAMETERS, *PXIP_BOOT_PARAMETERS;
  22. typedef enum {
  23. XIPCMD_NOOP,
  24. XIPCMD_GETBOOTPARAMETERS,
  25. XIPCMD_GETBIOSPARAMETERS
  26. } XIPCMD;
  27. #if defined(_X86_)
  28. #ifndef DRIVER
  29. extern BOOLEAN XIPConfigured;
  30. NTSTATUS
  31. XIPLocatePages(
  32. IN PFILE_OBJECT FileObject,
  33. OUT PPHYSICAL_ADDRESS PhysicalAddress
  34. );
  35. VOID XIPInit(PLOADER_PARAMETER_BLOCK);
  36. #endif //!DRIVER
  37. NTSTATUS
  38. XIPDispatch(
  39. IN XIPCMD Command,
  40. IN OUT PVOID ParameterBuffer OPTIONAL,
  41. IN ULONG BufferSize
  42. );
  43. #else // !X86
  44. # ifndef DRIVER
  45. # define XIPConfigured FALSE
  46. # define XIPLocatePages(fo,ppa) STATUS_NOT_IMPLEMENTED
  47. # define XIPInit(plpb)
  48. # endif
  49. #endif // !X86
  50. #endif // _XIP_