pci_ids 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. #------------------------------------------------------------------------------
  2. # $File: pci_ids,v 1.1 2022/04/02 14:47:42 christos Exp $
  3. # pci.ids: file(1) magic for PCI specific informations
  4. #
  5. # Vendor identification (ID) https://pci-ids.ucw.cz/v2.2/pci.ids
  6. # show hexadecimal PCI vendor identification in human readable text form
  7. 0 name PCI-vendor
  8. # ID vendor name
  9. #>0 uleshort =0x0f00 fOO
  10. >0 uleshort =0x1000 Broadcom
  11. >0 uleshort =0x1002 AMD/ATI
  12. >0 uleshort =0x1013 Cirrus Logic
  13. >0 uleshort =0x1014 IBM
  14. >0 uleshort =0x1022 AMD
  15. >0 uleshort =0x1050 Winbond
  16. >0 uleshort =0x105a Promise
  17. >0 uleshort =0x1095 Silicon
  18. >0 uleshort =0x10EC Realtek
  19. >0 uleshort =0x10de NVIDIA
  20. >0 uleshort =0x1106 VIA
  21. # Woodward McCoach, Inc.
  22. >0 uleshort =0x1231 Woodward
  23. #
  24. >0 uleshort =0x1234 Bochs
  25. >0 uleshort =0x15ad VMware
  26. >0 uleshort =0x1af4 Virtio
  27. >0 uleshort =0x1b36 QEMU
  28. >0 uleshort =0x1de1 Tekram
  29. # maybe also Promise?
  30. #>0 uleshort =0x4289 Promise
  31. #>0 uleshort =0x66a1 FOO
  32. >0 uleshort =0x8086 Intel
  33. >0 uleshort =0x9004 Adaptec
  34. # also Adaptec; but no example
  35. >0 uleshort =0x9005 Adaptec
  36. # for unknown/missing manufactors
  37. >0 default x UNKNOWN
  38. >>0 uleshort x (%#4.4x)
  39. # https://blog.ladsai.com/pci-configuration-space-class-code.html
  40. # Base class code https://wiki.osdev.org/PCI
  41. # show hexadecimal PCI class+sub+ProgIF identification in human readable text form
  42. 0 name PCI-class
  43. #>0 ubyte x CLASS=%x
  44. >0 ubyte x
  45. # Device was built prior definition of the class code field
  46. >>0 ubyte 0x00 PRIOR
  47. # Any device except for VGA-Compatible devices like: 2975BIOS.BIN Trm3x5.bin
  48. # BUT also NVidia44.bin vgabios-stdvga-bin.rom
  49. #>>>0 ubyte 0x00 NOT VGA
  50. # VGA-Compatible Device; NO EXAMPLE found here!!
  51. #>>>0 ubyte 0x01 VGA
  52. # like 4243.bin
  53. #>>>0 ubyte 0x04 SUB_CLASS_4
  54. >>0 ubyte 0x01 storage controller
  55. # device sub-type and its definition is dependent upon the base-type code
  56. >>>1 ubyte 0x00 SCSI
  57. >>>1 ubyte 0x01 IDE
  58. >>>1 ubyte 0x02 Floppy
  59. >>>1 ubyte 0x03 IPI
  60. >>>0 ubyte 0x04 RAID
  61. >>>1 ubyte 0x05 ATA
  62. >>>1 ubyte 0x06 SATA
  63. >>>1 ubyte 0x07 SAS
  64. >>>1 ubyte 0x08 NVM
  65. # 4650_sr5.bin "PROMISE" "FT TX4650 Ary X"
  66. >>>1 ubyte 0x80 OTHER
  67. >>0 ubyte 0x02 network controller
  68. >>>1 ubyte 0x00 ethernet
  69. >>>1 ubyte 0x01 token ring
  70. >>>1 ubyte 0x02 FDDI
  71. >>>1 ubyte 0x03 ATM
  72. >>>1 ubyte 0x04 ISDN
  73. >>>1 ubyte 0x05 WorldFip
  74. # PICMG 2.14 Multi Computing
  75. >>>1 ubyte 0x06 PICMG
  76. >>>1 ubyte 0x80 OTHER
  77. >>0 ubyte 0x03 display controller
  78. >>0 ubyte 0x04 multimedia controller
  79. >>0 ubyte 0x05 memory controller
  80. >>0 ubyte 0x06 bridge device
  81. # Simple Communication Controllers
  82. >>0 ubyte 0x07 communication controller
  83. # Base System Peripherals
  84. >>0 ubyte 0x08 base peripheral
  85. # Input Devices
  86. >>0 ubyte 0x09 input device
  87. # Docking Stations
  88. >>0 ubyte 0x0A docking station
  89. >>0 ubyte 0x0B processor
  90. >>0 ubyte 0x0C serial bus controller
  91. >>0 ubyte 0x0D wireless controller
  92. # Intelligent I/O Controllers
  93. >>0 ubyte 0x0E I/O controller
  94. # Satellite Communication Controllers
  95. >>0 ubyte 0x0F satellite controller
  96. # Encryption/Decryption Controllers
  97. >>0 ubyte 0x10 encryption controller
  98. # Data Acquisition and Signal Processing Controllers
  99. >>0 ubyte 0x11 signal controller
  100. # Processing Accelerator
  101. >>0 ubyte 0x12 processing accelerator
  102. # Non-Essential Instrumentation
  103. >>0 ubyte 0x13 non-essential
  104. # reserved or unassigned
  105. >>0 default x
  106. # device does not fit any defined class; Unassigned Class (Vendor specific)
  107. >>>0 ubyte 0xFF UNASSIGNED
  108. # THIS SHOULD NOT HAPPEN! BUT CLASS=8f for Promise 4650_sr5.bin 8660_sr5.bin
  109. >>>0 default x RESERVED
  110. >>>>0 ubyte x (%#x)
  111. # Prog IF of PCI class code?
  112. # defines the specific device programming interface
  113. >2 ubyte >0 \b, ProgIF=%u