Leaked source code of windows server 2003
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.

125 lines
4.6 KiB

  1. ; SOFTPCI Device Installation Script
  2. ;
  3. ; For more details on SoftPCI Scripting support see
  4. ; "%sdxroot%\base\testsrc\pnp\pcisim\softpci\SoftPCI Script Engine Specification.doc"
  5. ;
  6. ;
  7. ;
  8. ; INSTALL - This section designates the list of devices to be installed
  9. ;
  10. ; Type - "Device" - SoftPCI Device. VENID = 0xABCD, DEVID = 0xDCBA
  11. ; "PPBridge" - SoftPCI-PCI Bridge. VENID = 0xABCD, DEVID = 0xDCBB
  12. ; "HPBridge" - SoftPCI-HOTPLUG Bridge. VENID = 0xABCD, DEVID = 0xDCBC
  13. ; "CBDevice" - SoftPCI CardBus Device. VENID = 0xABCD, DEVID = 0xDCBD (NOT CURRENTLY SUPPORTED!)
  14. ; "CBBridge" - SoftPCI-CardBus Bridge. VENID = 0xABCD, DEVID = 0xDCBE (NOT CURRENTLY SUPPORTED!)
  15. ; "Private" - User defined configspace for all registers
  16. ;
  17. ; Note: For all types other than "Private" any "ConfigSpace=" or "ConfigSpaceMask"
  18. ; offset not explicitly modified will be defaulted to values as defined in
  19. ; the SoftPCI Specification. If using "Private" then user must provide all required
  20. ; registers in order to complete device install. Examples are Vendor ID, HeaderType, and
  21. ; BaseClass/SubClass.
  22. ;
  23. ;
  24. ; Slot - The Device and Function number of the device. Example 0501 = DEV 5 FUNC 1
  25. ; If not specified then next available DEV number will be used and function 0 will
  26. ; be assumed. Function numbers higher than 0 will fail install unless function 0 already
  27. ; exists.
  28. ;
  29. ; ParentPath - Path to the desination of "Slot". The "Slot" itself is not
  30. ; included in this path. If path doesnt exist first root bus is assumed.
  31. ; Must specify FF for the device number when specifying the root bus. The function
  32. ; number for Root buses is treated as the bus number for that root bus.
  33. ;
  34. ; Example: FFXX\DEVFUNC\DEVFUNC\....
  35. ; FF00\0200\0501 <--- Place a device specified by "Slot" behind bridge
  36. ; located at 0501 (which is behind bridge 0200 on root 0).
  37. ;
  38. ; ConfigSpace - Specifies the OFFSET: VALUE, VALUE etc. OFFSET can be on any boundary (BYTE, WORD, DWORD) and
  39. ; value size will be determined autmatically. You can specify up to 4 values on each line separated
  40. ; by commas. Each comma will increment the offset by a DWORD (4 bytes).
  41. ;
  42. ; Example: 3C: 0b <-- here we will be updating one single byte at offset 0x3C.
  43. ; 3C: 0000000b <-- here the entire DWORD at 0x3C will be updated
  44. ; E0: 000b, 0000a0b0 <-- here we modify WORD at 0xE0 and DWORD at 0xE4
  45. ;
  46. ; ConfigSpaceMask - Specifies the OFFSET: VALUE, VALUE etc. Bits set in these registers
  47. ; indicate bits that are writeable in the devices ConfigSpace.
  48. ;
  49. [SOFTPCI]
  50. Version=1
  51. [INSTALL]
  52. device2
  53. bridge1
  54. bridge2
  55. device3
  56. device4
  57. bridge3
  58. SomeCoolPrivateDevice
  59. [device1]
  60. Type=Device
  61. ConfigSpaceMask=
  62. 00: FFFFFFFF,FFFFFFFF,FFFFFFFF,FFFFFFFF
  63. 14: FFFFF000
  64. [device2]
  65. Type = Device
  66. Slot=1600
  67. ParentPath=ff00
  68. ConfigSpace=
  69. 04: 00000007
  70. 50: 00f20000,00000000,00000000,00000000
  71. 70: 00000000,ABCDEFFF,00000000,00000000
  72. f0: 00000000,00000000,00000000,00000001
  73. ConfigSpaceMask=
  74. 04: 00000007
  75. 10: ffff0000,00000000,ff01,00000000
  76. 9c: 00000008
  77. fc: 00000001
  78. [bridge1]
  79. Type=PPBridge
  80. Slot=0b00
  81. ParentPath=FF00
  82. [bridge2]
  83. Type=pPBridge
  84. Slot=0100
  85. ParentPath=ff00\0b00
  86. [device3]
  87. Type=Device
  88. Slot=0000
  89. ParentPath=FF00\0b00
  90. [device4]
  91. Type=Device
  92. Slot=1200
  93. ParentPath=ff00\0b00
  94. [SomeCoolPrivateDevice]
  95. Type=private
  96. Slot=0300
  97. ParentPath=FF00\0b00\0100
  98. ConfigSpace=
  99. 00: 25308086,20900006,06000002,00000000
  100. 10: D0000008,00000000,00000000,00000000
  101. 20: 00000000,00000000,00000000,000E1025
  102. 30: 00000000,000000A0,00000000,00000000
  103. 40: 80808092,80808080,80808080,80808080
  104. 50: 00020805,00000000,31111000,00000000
  105. 60: 00080008,00080008,00080008,00080008
  106. 70: 00080008,00080008,00080008,00080008
  107. 80: 00000000,00000000,0000008F,00000000
  108. 90: 00030003,08010061,00001955,00380A80
  109. A0: 00200002,1F000217,00000104,00000000
  110. B0: 00000080,00000030,00000000,00891020
  111. C0: 11504044,00000800,0000C200,00000000
  112. D0: 0E002802,33000003,B53109AF,7F060001
  113. E0: 00000000,00000000,252D232E,00000007
  114. F0: 00010000,8030FC74,00000F38,00000000
  115. configspacemask=
  116. 70: 000ff000,,,abcd
  117. F0: 12345678,9abcdeff