tinygrad 0.10.1__py3-none-any.whl → 0.10.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. tinygrad/codegen/devectorizer.py +247 -0
  2. tinygrad/codegen/expander.py +121 -0
  3. tinygrad/codegen/kernel.py +35 -37
  4. tinygrad/codegen/linearize.py +19 -10
  5. tinygrad/codegen/lowerer.py +31 -8
  6. tinygrad/codegen/symbolic.py +476 -0
  7. tinygrad/codegen/transcendental.py +10 -0
  8. tinygrad/device.py +28 -11
  9. tinygrad/dtype.py +12 -3
  10. tinygrad/engine/jit.py +3 -2
  11. tinygrad/engine/multi.py +0 -1
  12. tinygrad/engine/realize.py +7 -4
  13. tinygrad/engine/schedule.py +227 -255
  14. tinygrad/engine/search.py +20 -27
  15. tinygrad/gradient.py +3 -0
  16. tinygrad/helpers.py +7 -4
  17. tinygrad/nn/state.py +2 -2
  18. tinygrad/ops.py +64 -329
  19. tinygrad/renderer/__init__.py +19 -3
  20. tinygrad/renderer/cstyle.py +39 -18
  21. tinygrad/renderer/llvmir.py +55 -18
  22. tinygrad/renderer/ptx.py +6 -2
  23. tinygrad/renderer/wgsl.py +20 -12
  24. tinygrad/runtime/autogen/libc.py +404 -71
  25. tinygrad/runtime/autogen/{libpciaccess.py → pci.py} +25 -715
  26. tinygrad/runtime/autogen/webgpu.py +6985 -0
  27. tinygrad/runtime/graph/metal.py +28 -29
  28. tinygrad/runtime/ops_amd.py +37 -34
  29. tinygrad/runtime/{ops_clang.py → ops_cpu.py} +4 -2
  30. tinygrad/runtime/ops_disk.py +1 -1
  31. tinygrad/runtime/ops_dsp.py +59 -33
  32. tinygrad/runtime/ops_llvm.py +14 -12
  33. tinygrad/runtime/ops_metal.py +78 -62
  34. tinygrad/runtime/ops_nv.py +9 -6
  35. tinygrad/runtime/ops_python.py +5 -5
  36. tinygrad/runtime/ops_webgpu.py +200 -38
  37. tinygrad/runtime/support/am/amdev.py +23 -11
  38. tinygrad/runtime/support/am/ip.py +10 -10
  39. tinygrad/runtime/support/elf.py +2 -0
  40. tinygrad/runtime/support/hcq.py +7 -5
  41. tinygrad/runtime/support/llvm.py +8 -14
  42. tinygrad/shape/shapetracker.py +3 -2
  43. tinygrad/shape/view.py +2 -3
  44. tinygrad/spec.py +21 -20
  45. tinygrad/tensor.py +150 -90
  46. tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/highlight.min.js +1232 -0
  47. tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/languages/cpp.min.js +47 -0
  48. tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/languages/python.min.js +42 -0
  49. tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/styles/default.min.css +9 -0
  50. tinygrad/viz/assets/d3js.org/d3.v5.min.js +2 -0
  51. tinygrad/viz/assets/dagrejs.github.io/project/dagre-d3/latest/dagre-d3.min.js +4816 -0
  52. tinygrad/viz/assets/unpkg.com/@highlightjs/cdn-assets@11.10.0/styles/tokyo-night-dark.min.css +8 -0
  53. tinygrad/viz/index.html +544 -0
  54. tinygrad/viz/perfetto.html +178 -0
  55. tinygrad/viz/serve.py +205 -0
  56. {tinygrad-0.10.1.dist-info → tinygrad-0.10.2.dist-info}/METADATA +20 -8
  57. tinygrad-0.10.2.dist-info/RECORD +99 -0
  58. tinygrad/codegen/rewriter.py +0 -516
  59. tinygrad-0.10.1.dist-info/RECORD +0 -86
  60. {tinygrad-0.10.1.dist-info → tinygrad-0.10.2.dist-info}/LICENSE +0 -0
  61. {tinygrad-0.10.1.dist-info → tinygrad-0.10.2.dist-info}/WHEEL +0 -0
  62. {tinygrad-0.10.1.dist-info → tinygrad-0.10.2.dist-info}/top_level.txt +0 -0
@@ -6,564 +6,11 @@
6
6
  # POINTER_SIZE is: 8
7
7
  # LONGDOUBLE_SIZE is: 16
8
8
  #
9
- import ctypes, os
9
+ import ctypes
10
10
 
11
11
 
12
- class AsDictMixin:
13
- @classmethod
14
- def as_dict(cls, self):
15
- result = {}
16
- if not isinstance(self, AsDictMixin):
17
- # not a structure, assume it's already a python object
18
- return self
19
- if not hasattr(cls, "_fields_"):
20
- return result
21
- # sys.version_info >= (3, 5)
22
- # for (field, *_) in cls._fields_: # noqa
23
- for field_tuple in cls._fields_: # noqa
24
- field = field_tuple[0]
25
- if field.startswith('PADDING_'):
26
- continue
27
- value = getattr(self, field)
28
- type_ = type(value)
29
- if hasattr(value, "_length_") and hasattr(value, "_type_"):
30
- # array
31
- if not hasattr(type_, "as_dict"):
32
- value = [v for v in value]
33
- else:
34
- type_ = type_._type_
35
- value = [type_.as_dict(v) for v in value]
36
- elif hasattr(value, "contents") and hasattr(value, "_type_"):
37
- # pointer
38
- try:
39
- if not hasattr(type_, "as_dict"):
40
- value = value.contents
41
- else:
42
- type_ = type_._type_
43
- value = type_.as_dict(value.contents)
44
- except ValueError:
45
- # nullptr
46
- value = None
47
- elif isinstance(value, AsDictMixin):
48
- # other structure
49
- value = type_.as_dict(value)
50
- result[field] = value
51
- return result
52
12
 
53
13
 
54
- class Structure(ctypes.Structure, AsDictMixin):
55
-
56
- def __init__(self, *args, **kwds):
57
- # We don't want to use positional arguments fill PADDING_* fields
58
-
59
- args = dict(zip(self.__class__._field_names_(), args))
60
- args.update(kwds)
61
- super(Structure, self).__init__(**args)
62
-
63
- @classmethod
64
- def _field_names_(cls):
65
- if hasattr(cls, '_fields_'):
66
- return (f[0] for f in cls._fields_ if not f[0].startswith('PADDING'))
67
- else:
68
- return ()
69
-
70
- @classmethod
71
- def get_type(cls, field):
72
- for f in cls._fields_:
73
- if f[0] == field:
74
- return f[1]
75
- return None
76
-
77
- @classmethod
78
- def bind(cls, bound_fields):
79
- fields = {}
80
- for name, type_ in cls._fields_:
81
- if hasattr(type_, "restype"):
82
- if name in bound_fields:
83
- if bound_fields[name] is None:
84
- fields[name] = type_()
85
- else:
86
- # use a closure to capture the callback from the loop scope
87
- fields[name] = (
88
- type_((lambda callback: lambda *args: callback(*args))(
89
- bound_fields[name]))
90
- )
91
- del bound_fields[name]
92
- else:
93
- # default callback implementation (does nothing)
94
- try:
95
- default_ = type_(0).restype().value
96
- except TypeError:
97
- default_ = None
98
- fields[name] = type_((
99
- lambda default_: lambda *args: default_)(default_))
100
- else:
101
- # not a callback function, use default initialization
102
- if name in bound_fields:
103
- fields[name] = bound_fields[name]
104
- del bound_fields[name]
105
- else:
106
- fields[name] = type_()
107
- if len(bound_fields) != 0:
108
- raise ValueError(
109
- "Cannot bind the following unknown callback(s) {}.{}".format(
110
- cls.__name__, bound_fields.keys()
111
- ))
112
- return cls(**fields)
113
-
114
-
115
- class Union(ctypes.Union, AsDictMixin):
116
- pass
117
-
118
-
119
-
120
- _libraries = {}
121
- _libraries['libpciaccess.so'] = ctypes.CDLL('/usr/lib/x86_64-linux-gnu/libpciaccess.so') if os.path.exists('/usr/lib/x86_64-linux-gnu/libpciaccess.so') else None
122
- c_int128 = ctypes.c_ubyte*16
123
- c_uint128 = c_int128
124
- void = None
125
- if ctypes.sizeof(ctypes.c_longdouble) == 16:
126
- c_long_double_t = ctypes.c_longdouble
127
- else:
128
- c_long_double_t = ctypes.c_ubyte*16
129
-
130
- def string_cast(char_pointer, encoding='utf-8', errors='strict'):
131
- value = ctypes.cast(char_pointer, ctypes.c_char_p).value
132
- if value is not None and encoding is not None:
133
- value = value.decode(encoding, errors=errors)
134
- return value
135
-
136
-
137
- def char_pointer_cast(string, encoding='utf-8'):
138
- if encoding is not None:
139
- try:
140
- string = string.encode(encoding)
141
- except AttributeError:
142
- # In Python3, bytes has no encode attribute
143
- pass
144
- string = ctypes.c_char_p(string)
145
- return ctypes.cast(string, ctypes.POINTER(ctypes.c_char))
146
-
147
-
148
-
149
-
150
-
151
- PCIACCESS_H = True # macro
152
- # __deprecated = ((deprecated)) # macro
153
- PCI_DEV_MAP_FLAG_WRITABLE = (1<<0) # macro
154
- PCI_DEV_MAP_FLAG_WRITE_COMBINE = (1<<1) # macro
155
- PCI_DEV_MAP_FLAG_CACHABLE = (1<<2) # macro
156
- PCI_MATCH_ANY = (~0) # macro
157
- def PCI_ID_COMPARE(a, b): # macro
158
- return (((a)==(~0)) or ((a)==(b)))
159
- VGA_ARB_RSRC_NONE = 0x00 # macro
160
- VGA_ARB_RSRC_LEGACY_IO = 0x01 # macro
161
- VGA_ARB_RSRC_LEGACY_MEM = 0x02 # macro
162
- VGA_ARB_RSRC_NORMAL_IO = 0x04 # macro
163
- VGA_ARB_RSRC_NORMAL_MEM = 0x08 # macro
164
- pciaddr_t = ctypes.c_uint64
165
- class struct_pci_device_iterator(Structure):
166
- pass
167
-
168
- class struct_pci_device(Structure):
169
- pass
170
-
171
- try:
172
- pci_device_has_kernel_driver = _libraries['libpciaccess.so'].pci_device_has_kernel_driver
173
- pci_device_has_kernel_driver.restype = ctypes.c_int32
174
- pci_device_has_kernel_driver.argtypes = [ctypes.POINTER(struct_pci_device)]
175
- except AttributeError:
176
- pass
177
- try:
178
- pci_device_is_boot_vga = _libraries['libpciaccess.so'].pci_device_is_boot_vga
179
- pci_device_is_boot_vga.restype = ctypes.c_int32
180
- pci_device_is_boot_vga.argtypes = [ctypes.POINTER(struct_pci_device)]
181
- except AttributeError:
182
- pass
183
- try:
184
- pci_device_read_rom = _libraries['libpciaccess.so'].pci_device_read_rom
185
- pci_device_read_rom.restype = ctypes.c_int32
186
- pci_device_read_rom.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None)]
187
- except AttributeError:
188
- pass
189
- try:
190
- pci_device_map_region = _libraries['libpciaccess.so'].pci_device_map_region
191
- pci_device_map_region.restype = ctypes.c_int32
192
- pci_device_map_region.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.c_uint32, ctypes.c_int32]
193
- except AttributeError:
194
- pass
195
- try:
196
- pci_device_unmap_region = _libraries['libpciaccess.so'].pci_device_unmap_region
197
- pci_device_unmap_region.restype = ctypes.c_int32
198
- pci_device_unmap_region.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.c_uint32]
199
- except AttributeError:
200
- pass
201
- try:
202
- pci_device_map_range = _libraries['libpciaccess.so'].pci_device_map_range
203
- pci_device_map_range.restype = ctypes.c_int32
204
- pci_device_map_range.argtypes = [ctypes.POINTER(struct_pci_device), pciaddr_t, pciaddr_t, ctypes.c_uint32, ctypes.POINTER(ctypes.POINTER(None))]
205
- except AttributeError:
206
- pass
207
- try:
208
- pci_device_unmap_range = _libraries['libpciaccess.so'].pci_device_unmap_range
209
- pci_device_unmap_range.restype = ctypes.c_int32
210
- pci_device_unmap_range.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None), pciaddr_t]
211
- except AttributeError:
212
- pass
213
- try:
214
- pci_device_map_memory_range = _libraries['libpciaccess.so'].pci_device_map_memory_range
215
- pci_device_map_memory_range.restype = ctypes.c_int32
216
- pci_device_map_memory_range.argtypes = [ctypes.POINTER(struct_pci_device), pciaddr_t, pciaddr_t, ctypes.c_int32, ctypes.POINTER(ctypes.POINTER(None))]
217
- except AttributeError:
218
- pass
219
- try:
220
- pci_device_unmap_memory_range = _libraries['libpciaccess.so'].pci_device_unmap_memory_range
221
- pci_device_unmap_memory_range.restype = ctypes.c_int32
222
- pci_device_unmap_memory_range.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None), pciaddr_t]
223
- except AttributeError:
224
- pass
225
- try:
226
- pci_device_probe = _libraries['libpciaccess.so'].pci_device_probe
227
- pci_device_probe.restype = ctypes.c_int32
228
- pci_device_probe.argtypes = [ctypes.POINTER(struct_pci_device)]
229
- except AttributeError:
230
- pass
231
- class struct_pci_agp_info(Structure):
232
- pass
233
-
234
- try:
235
- pci_device_get_agp_info = _libraries['libpciaccess.so'].pci_device_get_agp_info
236
- pci_device_get_agp_info.restype = ctypes.POINTER(struct_pci_agp_info)
237
- pci_device_get_agp_info.argtypes = [ctypes.POINTER(struct_pci_device)]
238
- except AttributeError:
239
- pass
240
- class struct_pci_bridge_info(Structure):
241
- pass
242
-
243
- try:
244
- pci_device_get_bridge_info = _libraries['libpciaccess.so'].pci_device_get_bridge_info
245
- pci_device_get_bridge_info.restype = ctypes.POINTER(struct_pci_bridge_info)
246
- pci_device_get_bridge_info.argtypes = [ctypes.POINTER(struct_pci_device)]
247
- except AttributeError:
248
- pass
249
- class struct_pci_pcmcia_bridge_info(Structure):
250
- pass
251
-
252
- try:
253
- pci_device_get_pcmcia_bridge_info = _libraries['libpciaccess.so'].pci_device_get_pcmcia_bridge_info
254
- pci_device_get_pcmcia_bridge_info.restype = ctypes.POINTER(struct_pci_pcmcia_bridge_info)
255
- pci_device_get_pcmcia_bridge_info.argtypes = [ctypes.POINTER(struct_pci_device)]
256
- except AttributeError:
257
- pass
258
- try:
259
- pci_device_get_bridge_buses = _libraries['libpciaccess.so'].pci_device_get_bridge_buses
260
- pci_device_get_bridge_buses.restype = ctypes.c_int32
261
- pci_device_get_bridge_buses.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(ctypes.c_int32), ctypes.POINTER(ctypes.c_int32), ctypes.POINTER(ctypes.c_int32)]
262
- except AttributeError:
263
- pass
264
- try:
265
- pci_system_init = _libraries['libpciaccess.so'].pci_system_init
266
- pci_system_init.restype = ctypes.c_int32
267
- pci_system_init.argtypes = []
268
- except AttributeError:
269
- pass
270
- try:
271
- pci_system_init_dev_mem = _libraries['libpciaccess.so'].pci_system_init_dev_mem
272
- pci_system_init_dev_mem.restype = None
273
- pci_system_init_dev_mem.argtypes = [ctypes.c_int32]
274
- except AttributeError:
275
- pass
276
- try:
277
- pci_system_cleanup = _libraries['libpciaccess.so'].pci_system_cleanup
278
- pci_system_cleanup.restype = None
279
- pci_system_cleanup.argtypes = []
280
- except AttributeError:
281
- pass
282
- class struct_pci_slot_match(Structure):
283
- pass
284
-
285
- try:
286
- pci_slot_match_iterator_create = _libraries['libpciaccess.so'].pci_slot_match_iterator_create
287
- pci_slot_match_iterator_create.restype = ctypes.POINTER(struct_pci_device_iterator)
288
- pci_slot_match_iterator_create.argtypes = [ctypes.POINTER(struct_pci_slot_match)]
289
- except AttributeError:
290
- pass
291
- class struct_pci_id_match(Structure):
292
- pass
293
-
294
- try:
295
- pci_id_match_iterator_create = _libraries['libpciaccess.so'].pci_id_match_iterator_create
296
- pci_id_match_iterator_create.restype = ctypes.POINTER(struct_pci_device_iterator)
297
- pci_id_match_iterator_create.argtypes = [ctypes.POINTER(struct_pci_id_match)]
298
- except AttributeError:
299
- pass
300
- try:
301
- pci_iterator_destroy = _libraries['libpciaccess.so'].pci_iterator_destroy
302
- pci_iterator_destroy.restype = None
303
- pci_iterator_destroy.argtypes = [ctypes.POINTER(struct_pci_device_iterator)]
304
- except AttributeError:
305
- pass
306
- try:
307
- pci_device_next = _libraries['libpciaccess.so'].pci_device_next
308
- pci_device_next.restype = ctypes.POINTER(struct_pci_device)
309
- pci_device_next.argtypes = [ctypes.POINTER(struct_pci_device_iterator)]
310
- except AttributeError:
311
- pass
312
- uint32_t = ctypes.c_uint32
313
- try:
314
- pci_device_find_by_slot = _libraries['libpciaccess.so'].pci_device_find_by_slot
315
- pci_device_find_by_slot.restype = ctypes.POINTER(struct_pci_device)
316
- pci_device_find_by_slot.argtypes = [uint32_t, uint32_t, uint32_t, uint32_t]
317
- except AttributeError:
318
- pass
319
- try:
320
- pci_device_get_parent_bridge = _libraries['libpciaccess.so'].pci_device_get_parent_bridge
321
- pci_device_get_parent_bridge.restype = ctypes.POINTER(struct_pci_device)
322
- pci_device_get_parent_bridge.argtypes = [ctypes.POINTER(struct_pci_device)]
323
- except AttributeError:
324
- pass
325
- try:
326
- pci_get_strings = _libraries['libpciaccess.so'].pci_get_strings
327
- pci_get_strings.restype = None
328
- pci_get_strings.argtypes = [ctypes.POINTER(struct_pci_id_match), ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.POINTER(ctypes.POINTER(ctypes.c_char))]
329
- except AttributeError:
330
- pass
331
- try:
332
- pci_device_get_device_name = _libraries['libpciaccess.so'].pci_device_get_device_name
333
- pci_device_get_device_name.restype = ctypes.POINTER(ctypes.c_char)
334
- pci_device_get_device_name.argtypes = [ctypes.POINTER(struct_pci_device)]
335
- except AttributeError:
336
- pass
337
- try:
338
- pci_device_get_subdevice_name = _libraries['libpciaccess.so'].pci_device_get_subdevice_name
339
- pci_device_get_subdevice_name.restype = ctypes.POINTER(ctypes.c_char)
340
- pci_device_get_subdevice_name.argtypes = [ctypes.POINTER(struct_pci_device)]
341
- except AttributeError:
342
- pass
343
- try:
344
- pci_device_get_vendor_name = _libraries['libpciaccess.so'].pci_device_get_vendor_name
345
- pci_device_get_vendor_name.restype = ctypes.POINTER(ctypes.c_char)
346
- pci_device_get_vendor_name.argtypes = [ctypes.POINTER(struct_pci_device)]
347
- except AttributeError:
348
- pass
349
- try:
350
- pci_device_get_subvendor_name = _libraries['libpciaccess.so'].pci_device_get_subvendor_name
351
- pci_device_get_subvendor_name.restype = ctypes.POINTER(ctypes.c_char)
352
- pci_device_get_subvendor_name.argtypes = [ctypes.POINTER(struct_pci_device)]
353
- except AttributeError:
354
- pass
355
- try:
356
- pci_device_enable = _libraries['libpciaccess.so'].pci_device_enable
357
- pci_device_enable.restype = None
358
- pci_device_enable.argtypes = [ctypes.POINTER(struct_pci_device)]
359
- except AttributeError:
360
- pass
361
- try:
362
- pci_device_cfg_read = _libraries['libpciaccess.so'].pci_device_cfg_read
363
- pci_device_cfg_read.restype = ctypes.c_int32
364
- pci_device_cfg_read.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None), pciaddr_t, pciaddr_t, ctypes.POINTER(ctypes.c_uint64)]
365
- except AttributeError:
366
- pass
367
- try:
368
- pci_device_cfg_read_u8 = _libraries['libpciaccess.so'].pci_device_cfg_read_u8
369
- pci_device_cfg_read_u8.restype = ctypes.c_int32
370
- pci_device_cfg_read_u8.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(ctypes.c_ubyte), pciaddr_t]
371
- except AttributeError:
372
- pass
373
- try:
374
- pci_device_cfg_read_u16 = _libraries['libpciaccess.so'].pci_device_cfg_read_u16
375
- pci_device_cfg_read_u16.restype = ctypes.c_int32
376
- pci_device_cfg_read_u16.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(ctypes.c_uint16), pciaddr_t]
377
- except AttributeError:
378
- pass
379
- try:
380
- pci_device_cfg_read_u32 = _libraries['libpciaccess.so'].pci_device_cfg_read_u32
381
- pci_device_cfg_read_u32.restype = ctypes.c_int32
382
- pci_device_cfg_read_u32.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(ctypes.c_uint32), pciaddr_t]
383
- except AttributeError:
384
- pass
385
- try:
386
- pci_device_cfg_write = _libraries['libpciaccess.so'].pci_device_cfg_write
387
- pci_device_cfg_write.restype = ctypes.c_int32
388
- pci_device_cfg_write.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None), pciaddr_t, pciaddr_t, ctypes.POINTER(ctypes.c_uint64)]
389
- except AttributeError:
390
- pass
391
- uint8_t = ctypes.c_uint8
392
- try:
393
- pci_device_cfg_write_u8 = _libraries['libpciaccess.so'].pci_device_cfg_write_u8
394
- pci_device_cfg_write_u8.restype = ctypes.c_int32
395
- pci_device_cfg_write_u8.argtypes = [ctypes.POINTER(struct_pci_device), uint8_t, pciaddr_t]
396
- except AttributeError:
397
- pass
398
- uint16_t = ctypes.c_uint16
399
- try:
400
- pci_device_cfg_write_u16 = _libraries['libpciaccess.so'].pci_device_cfg_write_u16
401
- pci_device_cfg_write_u16.restype = ctypes.c_int32
402
- pci_device_cfg_write_u16.argtypes = [ctypes.POINTER(struct_pci_device), uint16_t, pciaddr_t]
403
- except AttributeError:
404
- pass
405
- try:
406
- pci_device_cfg_write_u32 = _libraries['libpciaccess.so'].pci_device_cfg_write_u32
407
- pci_device_cfg_write_u32.restype = ctypes.c_int32
408
- pci_device_cfg_write_u32.argtypes = [ctypes.POINTER(struct_pci_device), uint32_t, pciaddr_t]
409
- except AttributeError:
410
- pass
411
- try:
412
- pci_device_cfg_write_bits = _libraries['libpciaccess.so'].pci_device_cfg_write_bits
413
- pci_device_cfg_write_bits.restype = ctypes.c_int32
414
- pci_device_cfg_write_bits.argtypes = [ctypes.POINTER(struct_pci_device), uint32_t, uint32_t, pciaddr_t]
415
- except AttributeError:
416
- pass
417
- class struct_pci_mem_region(Structure):
418
- pass
419
-
420
- struct_pci_mem_region._pack_ = 1 # source:False
421
- struct_pci_mem_region._fields_ = [
422
- ('memory', ctypes.POINTER(None)),
423
- ('bus_addr', ctypes.c_uint64),
424
- ('base_addr', ctypes.c_uint64),
425
- ('size', ctypes.c_uint64),
426
- ('is_IO', ctypes.c_uint32, 1),
427
- ('is_prefetchable', ctypes.c_uint32, 1),
428
- ('is_64', ctypes.c_uint32, 1),
429
- ('PADDING_0', ctypes.c_uint64, 61),
430
- ]
431
-
432
- class struct_pci_pcmcia_bridge_info_0(Structure):
433
- pass
434
-
435
- struct_pci_pcmcia_bridge_info_0._pack_ = 1 # source:False
436
- struct_pci_pcmcia_bridge_info_0._fields_ = [
437
- ('base', ctypes.c_uint32),
438
- ('limit', ctypes.c_uint32),
439
- ]
440
-
441
- class struct_pci_pcmcia_bridge_info_1(Structure):
442
- pass
443
-
444
- struct_pci_pcmcia_bridge_info_1._pack_ = 1 # source:False
445
- struct_pci_pcmcia_bridge_info_1._fields_ = [
446
- ('base', ctypes.c_uint32),
447
- ('limit', ctypes.c_uint32),
448
- ]
449
-
450
- try:
451
- pci_device_vgaarb_init = _libraries['libpciaccess.so'].pci_device_vgaarb_init
452
- pci_device_vgaarb_init.restype = ctypes.c_int32
453
- pci_device_vgaarb_init.argtypes = []
454
- except AttributeError:
455
- pass
456
- try:
457
- pci_device_vgaarb_fini = _libraries['libpciaccess.so'].pci_device_vgaarb_fini
458
- pci_device_vgaarb_fini.restype = None
459
- pci_device_vgaarb_fini.argtypes = []
460
- except AttributeError:
461
- pass
462
- try:
463
- pci_device_vgaarb_set_target = _libraries['libpciaccess.so'].pci_device_vgaarb_set_target
464
- pci_device_vgaarb_set_target.restype = ctypes.c_int32
465
- pci_device_vgaarb_set_target.argtypes = [ctypes.POINTER(struct_pci_device)]
466
- except AttributeError:
467
- pass
468
- try:
469
- pci_device_vgaarb_decodes = _libraries['libpciaccess.so'].pci_device_vgaarb_decodes
470
- pci_device_vgaarb_decodes.restype = ctypes.c_int32
471
- pci_device_vgaarb_decodes.argtypes = [ctypes.c_int32]
472
- except AttributeError:
473
- pass
474
- try:
475
- pci_device_vgaarb_lock = _libraries['libpciaccess.so'].pci_device_vgaarb_lock
476
- pci_device_vgaarb_lock.restype = ctypes.c_int32
477
- pci_device_vgaarb_lock.argtypes = []
478
- except AttributeError:
479
- pass
480
- try:
481
- pci_device_vgaarb_trylock = _libraries['libpciaccess.so'].pci_device_vgaarb_trylock
482
- pci_device_vgaarb_trylock.restype = ctypes.c_int32
483
- pci_device_vgaarb_trylock.argtypes = []
484
- except AttributeError:
485
- pass
486
- try:
487
- pci_device_vgaarb_unlock = _libraries['libpciaccess.so'].pci_device_vgaarb_unlock
488
- pci_device_vgaarb_unlock.restype = ctypes.c_int32
489
- pci_device_vgaarb_unlock.argtypes = []
490
- except AttributeError:
491
- pass
492
- try:
493
- pci_device_vgaarb_get_info = _libraries['libpciaccess.so'].pci_device_vgaarb_get_info
494
- pci_device_vgaarb_get_info.restype = ctypes.c_int32
495
- pci_device_vgaarb_get_info.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(ctypes.c_int32), ctypes.POINTER(ctypes.c_int32)]
496
- except AttributeError:
497
- pass
498
- class struct_pci_io_handle(Structure):
499
- pass
500
-
501
- try:
502
- pci_device_open_io = _libraries['libpciaccess.so'].pci_device_open_io
503
- pci_device_open_io.restype = ctypes.POINTER(struct_pci_io_handle)
504
- pci_device_open_io.argtypes = [ctypes.POINTER(struct_pci_device), pciaddr_t, pciaddr_t]
505
- except AttributeError:
506
- pass
507
- try:
508
- pci_legacy_open_io = _libraries['libpciaccess.so'].pci_legacy_open_io
509
- pci_legacy_open_io.restype = ctypes.POINTER(struct_pci_io_handle)
510
- pci_legacy_open_io.argtypes = [ctypes.POINTER(struct_pci_device), pciaddr_t, pciaddr_t]
511
- except AttributeError:
512
- pass
513
- try:
514
- pci_device_close_io = _libraries['libpciaccess.so'].pci_device_close_io
515
- pci_device_close_io.restype = None
516
- pci_device_close_io.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(struct_pci_io_handle)]
517
- except AttributeError:
518
- pass
519
- try:
520
- pci_io_read32 = _libraries['libpciaccess.so'].pci_io_read32
521
- pci_io_read32.restype = uint32_t
522
- pci_io_read32.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t]
523
- except AttributeError:
524
- pass
525
- try:
526
- pci_io_read16 = _libraries['libpciaccess.so'].pci_io_read16
527
- pci_io_read16.restype = uint16_t
528
- pci_io_read16.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t]
529
- except AttributeError:
530
- pass
531
- try:
532
- pci_io_read8 = _libraries['libpciaccess.so'].pci_io_read8
533
- pci_io_read8.restype = uint8_t
534
- pci_io_read8.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t]
535
- except AttributeError:
536
- pass
537
- try:
538
- pci_io_write32 = _libraries['libpciaccess.so'].pci_io_write32
539
- pci_io_write32.restype = None
540
- pci_io_write32.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t, uint32_t]
541
- except AttributeError:
542
- pass
543
- try:
544
- pci_io_write16 = _libraries['libpciaccess.so'].pci_io_write16
545
- pci_io_write16.restype = None
546
- pci_io_write16.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t, uint16_t]
547
- except AttributeError:
548
- pass
549
- try:
550
- pci_io_write8 = _libraries['libpciaccess.so'].pci_io_write8
551
- pci_io_write8.restype = None
552
- pci_io_write8.argtypes = [ctypes.POINTER(struct_pci_io_handle), uint32_t, uint8_t]
553
- except AttributeError:
554
- pass
555
- try:
556
- pci_device_map_legacy = _libraries['libpciaccess.so'].pci_device_map_legacy
557
- pci_device_map_legacy.restype = ctypes.c_int32
558
- pci_device_map_legacy.argtypes = [ctypes.POINTER(struct_pci_device), pciaddr_t, pciaddr_t, ctypes.c_uint32, ctypes.POINTER(ctypes.POINTER(None))]
559
- except AttributeError:
560
- pass
561
- try:
562
- pci_device_unmap_legacy = _libraries['libpciaccess.so'].pci_device_unmap_legacy
563
- pci_device_unmap_legacy.restype = ctypes.c_int32
564
- pci_device_unmap_legacy.argtypes = [ctypes.POINTER(struct_pci_device), ctypes.POINTER(None), pciaddr_t]
565
- except AttributeError:
566
- pass
567
14
  LINUX_PCI_REGS_H = True # macro
568
15
  PCI_CFG_SPACE_SIZE = 256 # macro
569
16
  PCI_CFG_SPACE_EXP_SIZE = 4096 # macro
@@ -1504,103 +951,6 @@ PCI_PL_16GT_LE_CTRL = 0x20 # macro
1504
951
  PCI_PL_16GT_LE_CTRL_DSP_TX_PRESET_MASK = 0x0000000F # macro
1505
952
  PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_MASK = 0x000000F0 # macro
1506
953
  PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_SHIFT = 4 # macro
1507
- struct_pci_device._pack_ = 1 # source:False
1508
- struct_pci_device._fields_ = [
1509
- ('domain_16', ctypes.c_uint16),
1510
- ('bus', ctypes.c_ubyte),
1511
- ('dev', ctypes.c_ubyte),
1512
- ('func', ctypes.c_ubyte),
1513
- ('PADDING_0', ctypes.c_ubyte),
1514
- ('vendor_id', ctypes.c_uint16),
1515
- ('device_id', ctypes.c_uint16),
1516
- ('subvendor_id', ctypes.c_uint16),
1517
- ('subdevice_id', ctypes.c_uint16),
1518
- ('PADDING_1', ctypes.c_ubyte * 2),
1519
- ('device_class', ctypes.c_uint32),
1520
- ('revision', ctypes.c_ubyte),
1521
- ('PADDING_2', ctypes.c_ubyte * 3),
1522
- ('regions', struct_pci_mem_region * 6),
1523
- ('rom_size', ctypes.c_uint64),
1524
- ('irq', ctypes.c_int32),
1525
- ('PADDING_3', ctypes.c_ubyte * 4),
1526
- ('user_data', ctypes.c_int64),
1527
- ('vgaarb_rsrc', ctypes.c_int32),
1528
- ('domain', ctypes.c_uint32),
1529
- ]
1530
-
1531
- struct_pci_agp_info._pack_ = 1 # source:False
1532
- struct_pci_agp_info._fields_ = [
1533
- ('config_offset', ctypes.c_uint32),
1534
- ('major_version', ctypes.c_ubyte),
1535
- ('minor_version', ctypes.c_ubyte),
1536
- ('rates', ctypes.c_ubyte),
1537
- ('fast_writes', ctypes.c_uint32, 1),
1538
- ('addr64', ctypes.c_uint32, 1),
1539
- ('htrans', ctypes.c_uint32, 1),
1540
- ('gart64', ctypes.c_uint32, 1),
1541
- ('coherent', ctypes.c_uint32, 1),
1542
- ('sideband', ctypes.c_uint32, 1),
1543
- ('isochronus', ctypes.c_uint32, 1),
1544
- ('PADDING_0', ctypes.c_uint8, 1),
1545
- ('async_req_size', ctypes.c_uint32, 8),
1546
- ('calibration_cycle_timing', ctypes.c_ubyte),
1547
- ('max_requests', ctypes.c_ubyte),
1548
- ('PADDING_1', ctypes.c_ubyte),
1549
- ]
1550
-
1551
- struct_pci_bridge_info._pack_ = 1 # source:False
1552
- struct_pci_bridge_info._fields_ = [
1553
- ('primary_bus', ctypes.c_ubyte),
1554
- ('secondary_bus', ctypes.c_ubyte),
1555
- ('subordinate_bus', ctypes.c_ubyte),
1556
- ('secondary_latency_timer', ctypes.c_ubyte),
1557
- ('io_type', ctypes.c_ubyte),
1558
- ('mem_type', ctypes.c_ubyte),
1559
- ('prefetch_mem_type', ctypes.c_ubyte),
1560
- ('PADDING_0', ctypes.c_ubyte),
1561
- ('secondary_status', ctypes.c_uint16),
1562
- ('bridge_control', ctypes.c_uint16),
1563
- ('io_base', ctypes.c_uint32),
1564
- ('io_limit', ctypes.c_uint32),
1565
- ('mem_base', ctypes.c_uint32),
1566
- ('mem_limit', ctypes.c_uint32),
1567
- ('PADDING_1', ctypes.c_ubyte * 4),
1568
- ('prefetch_mem_base', ctypes.c_uint64),
1569
- ('prefetch_mem_limit', ctypes.c_uint64),
1570
- ]
1571
-
1572
- struct_pci_pcmcia_bridge_info._pack_ = 1 # source:False
1573
- struct_pci_pcmcia_bridge_info._fields_ = [
1574
- ('primary_bus', ctypes.c_ubyte),
1575
- ('card_bus', ctypes.c_ubyte),
1576
- ('subordinate_bus', ctypes.c_ubyte),
1577
- ('cardbus_latency_timer', ctypes.c_ubyte),
1578
- ('secondary_status', ctypes.c_uint16),
1579
- ('bridge_control', ctypes.c_uint16),
1580
- ('io', struct_pci_pcmcia_bridge_info_0 * 2),
1581
- ('mem', struct_pci_pcmcia_bridge_info_1 * 2),
1582
- ]
1583
-
1584
- struct_pci_slot_match._pack_ = 1 # source:False
1585
- struct_pci_slot_match._fields_ = [
1586
- ('domain', ctypes.c_uint32),
1587
- ('bus', ctypes.c_uint32),
1588
- ('dev', ctypes.c_uint32),
1589
- ('func', ctypes.c_uint32),
1590
- ('match_data', ctypes.c_int64),
1591
- ]
1592
-
1593
- struct_pci_id_match._pack_ = 1 # source:False
1594
- struct_pci_id_match._fields_ = [
1595
- ('vendor_id', ctypes.c_uint32),
1596
- ('device_id', ctypes.c_uint32),
1597
- ('subvendor_id', ctypes.c_uint32),
1598
- ('subdevice_id', ctypes.c_uint32),
1599
- ('device_class', ctypes.c_uint32),
1600
- ('device_class_mask', ctypes.c_uint32),
1601
- ('match_data', ctypes.c_int64),
1602
- ]
1603
-
1604
954
  __all__ = \
1605
955
  ['HT_3BIT_CAP_MASK', 'HT_5BIT_CAP_MASK',
1606
956
  'HT_CAPTYPE_DIRECT_ROUTE', 'HT_CAPTYPE_ERROR_RETRY',
@@ -1611,8 +961,8 @@ __all__ = \
1611
961
  'HT_CAP_SIZEOF_LONG', 'HT_CAP_SIZEOF_SHORT', 'HT_MSI_ADDR_HI',
1612
962
  'HT_MSI_ADDR_LO', 'HT_MSI_ADDR_LO_MASK', 'HT_MSI_FIXED_ADDR',
1613
963
  'HT_MSI_FLAGS', 'HT_MSI_FLAGS_ENABLE', 'HT_MSI_FLAGS_FIXED',
1614
- 'LINUX_PCI_REGS_H', 'PCIACCESS_H', 'PCI_ACS_CAP', 'PCI_ACS_CR',
1615
- 'PCI_ACS_CTRL', 'PCI_ACS_DT', 'PCI_ACS_EC', 'PCI_ACS_EGRESS_BITS',
964
+ 'LINUX_PCI_REGS_H', 'PCI_ACS_CAP', 'PCI_ACS_CR', 'PCI_ACS_CTRL',
965
+ 'PCI_ACS_DT', 'PCI_ACS_EC', 'PCI_ACS_EGRESS_BITS',
1616
966
  'PCI_ACS_EGRESS_CTL_V', 'PCI_ACS_RR', 'PCI_ACS_SV', 'PCI_ACS_TB',
1617
967
  'PCI_ACS_UF', 'PCI_AF_CAP', 'PCI_AF_CAP_FLR', 'PCI_AF_CAP_TP',
1618
968
  'PCI_AF_CTRL', 'PCI_AF_CTRL_FLR', 'PCI_AF_LENGTH',
@@ -1684,10 +1034,8 @@ __all__ = \
1684
1034
  'PCI_COMMAND_IO', 'PCI_COMMAND_MASTER', 'PCI_COMMAND_MEMORY',
1685
1035
  'PCI_COMMAND_PARITY', 'PCI_COMMAND_SERR', 'PCI_COMMAND_SPECIAL',
1686
1036
  'PCI_COMMAND_VGA_PALETTE', 'PCI_COMMAND_WAIT', 'PCI_DEVICE_ID',
1687
- 'PCI_DEV_MAP_FLAG_CACHABLE', 'PCI_DEV_MAP_FLAG_WRITABLE',
1688
- 'PCI_DEV_MAP_FLAG_WRITE_COMBINE', 'PCI_DLF_CAP',
1689
- 'PCI_DLF_EXCHANGE_ENABLE', 'PCI_DPA_BASE_SIZEOF', 'PCI_DPA_CAP',
1690
- 'PCI_DPA_CAP_SUBSTATE_MASK', 'PCI_DVSEC_HEADER1',
1037
+ 'PCI_DLF_CAP', 'PCI_DLF_EXCHANGE_ENABLE', 'PCI_DPA_BASE_SIZEOF',
1038
+ 'PCI_DPA_CAP', 'PCI_DPA_CAP_SUBSTATE_MASK', 'PCI_DVSEC_HEADER1',
1691
1039
  'PCI_DVSEC_HEADER2', 'PCI_EA_BASE', 'PCI_EA_BEI',
1692
1040
  'PCI_EA_BEI_BAR0', 'PCI_EA_BEI_BAR5', 'PCI_EA_BEI_BRIDGE',
1693
1041
  'PCI_EA_BEI_ENI', 'PCI_EA_BEI_RESERVED', 'PCI_EA_BEI_ROM',
@@ -1873,26 +1221,25 @@ __all__ = \
1873
1221
  'PCI_L1SS_CTL1_PCIPM_L1_2', 'PCI_L1SS_CTL2', 'PCI_LATENCY_TIMER',
1874
1222
  'PCI_LTR_MAX_NOSNOOP_LAT', 'PCI_LTR_MAX_SNOOP_LAT',
1875
1223
  'PCI_LTR_SCALE_MASK', 'PCI_LTR_SCALE_SHIFT', 'PCI_LTR_VALUE_MASK',
1876
- 'PCI_MATCH_ANY', 'PCI_MAX_LAT', 'PCI_MEMORY_BASE',
1877
- 'PCI_MEMORY_LIMIT', 'PCI_MEMORY_RANGE_MASK',
1878
- 'PCI_MEMORY_RANGE_TYPE_MASK', 'PCI_MIN_GNT',
1879
- 'PCI_MSIX_ENTRY_CTRL_MASKBIT', 'PCI_MSIX_ENTRY_DATA',
1880
- 'PCI_MSIX_ENTRY_LOWER_ADDR', 'PCI_MSIX_ENTRY_SIZE',
1881
- 'PCI_MSIX_ENTRY_UPPER_ADDR', 'PCI_MSIX_ENTRY_VECTOR_CTRL',
1882
- 'PCI_MSIX_FLAGS', 'PCI_MSIX_FLAGS_BIRMASK',
1883
- 'PCI_MSIX_FLAGS_ENABLE', 'PCI_MSIX_FLAGS_MASKALL',
1884
- 'PCI_MSIX_FLAGS_QSIZE', 'PCI_MSIX_PBA', 'PCI_MSIX_PBA_BIR',
1885
- 'PCI_MSIX_PBA_OFFSET', 'PCI_MSIX_TABLE', 'PCI_MSIX_TABLE_BIR',
1886
- 'PCI_MSIX_TABLE_OFFSET', 'PCI_MSI_ADDRESS_HI',
1887
- 'PCI_MSI_ADDRESS_LO', 'PCI_MSI_DATA_32', 'PCI_MSI_DATA_64',
1888
- 'PCI_MSI_FLAGS', 'PCI_MSI_FLAGS_64BIT', 'PCI_MSI_FLAGS_ENABLE',
1889
- 'PCI_MSI_FLAGS_MASKBIT', 'PCI_MSI_FLAGS_QMASK',
1890
- 'PCI_MSI_FLAGS_QSIZE', 'PCI_MSI_MASK_32', 'PCI_MSI_MASK_64',
1891
- 'PCI_MSI_PENDING_32', 'PCI_MSI_PENDING_64', 'PCI_MSI_RFU',
1892
- 'PCI_PASID_CAP', 'PCI_PASID_CAP_EXEC', 'PCI_PASID_CAP_PRIV',
1893
- 'PCI_PASID_CTRL', 'PCI_PASID_CTRL_ENABLE', 'PCI_PASID_CTRL_EXEC',
1894
- 'PCI_PASID_CTRL_PRIV', 'PCI_PL_16GT_LE_CTRL',
1895
- 'PCI_PL_16GT_LE_CTRL_DSP_TX_PRESET_MASK',
1224
+ 'PCI_MAX_LAT', 'PCI_MEMORY_BASE', 'PCI_MEMORY_LIMIT',
1225
+ 'PCI_MEMORY_RANGE_MASK', 'PCI_MEMORY_RANGE_TYPE_MASK',
1226
+ 'PCI_MIN_GNT', 'PCI_MSIX_ENTRY_CTRL_MASKBIT',
1227
+ 'PCI_MSIX_ENTRY_DATA', 'PCI_MSIX_ENTRY_LOWER_ADDR',
1228
+ 'PCI_MSIX_ENTRY_SIZE', 'PCI_MSIX_ENTRY_UPPER_ADDR',
1229
+ 'PCI_MSIX_ENTRY_VECTOR_CTRL', 'PCI_MSIX_FLAGS',
1230
+ 'PCI_MSIX_FLAGS_BIRMASK', 'PCI_MSIX_FLAGS_ENABLE',
1231
+ 'PCI_MSIX_FLAGS_MASKALL', 'PCI_MSIX_FLAGS_QSIZE', 'PCI_MSIX_PBA',
1232
+ 'PCI_MSIX_PBA_BIR', 'PCI_MSIX_PBA_OFFSET', 'PCI_MSIX_TABLE',
1233
+ 'PCI_MSIX_TABLE_BIR', 'PCI_MSIX_TABLE_OFFSET',
1234
+ 'PCI_MSI_ADDRESS_HI', 'PCI_MSI_ADDRESS_LO', 'PCI_MSI_DATA_32',
1235
+ 'PCI_MSI_DATA_64', 'PCI_MSI_FLAGS', 'PCI_MSI_FLAGS_64BIT',
1236
+ 'PCI_MSI_FLAGS_ENABLE', 'PCI_MSI_FLAGS_MASKBIT',
1237
+ 'PCI_MSI_FLAGS_QMASK', 'PCI_MSI_FLAGS_QSIZE', 'PCI_MSI_MASK_32',
1238
+ 'PCI_MSI_MASK_64', 'PCI_MSI_PENDING_32', 'PCI_MSI_PENDING_64',
1239
+ 'PCI_MSI_RFU', 'PCI_PASID_CAP', 'PCI_PASID_CAP_EXEC',
1240
+ 'PCI_PASID_CAP_PRIV', 'PCI_PASID_CTRL', 'PCI_PASID_CTRL_ENABLE',
1241
+ 'PCI_PASID_CTRL_EXEC', 'PCI_PASID_CTRL_PRIV',
1242
+ 'PCI_PL_16GT_LE_CTRL', 'PCI_PL_16GT_LE_CTRL_DSP_TX_PRESET_MASK',
1896
1243
  'PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_MASK',
1897
1244
  'PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_SHIFT', 'PCI_PM_BPCC_ENABLE',
1898
1245
  'PCI_PM_CAP_AUX_POWER', 'PCI_PM_CAP_D1', 'PCI_PM_CAP_D2',
@@ -1983,41 +1330,4 @@ __all__ = \
1983
1330
  'PCI_X_STATUS_COMPLEX', 'PCI_X_STATUS_DEVFN',
1984
1331
  'PCI_X_STATUS_MAX_CUM', 'PCI_X_STATUS_MAX_READ',
1985
1332
  'PCI_X_STATUS_MAX_SPLIT', 'PCI_X_STATUS_SPL_DISC',
1986
- 'PCI_X_STATUS_SPL_ERR', 'PCI_X_STATUS_UNX_SPL',
1987
- 'VGA_ARB_RSRC_LEGACY_IO', 'VGA_ARB_RSRC_LEGACY_MEM',
1988
- 'VGA_ARB_RSRC_NONE', 'VGA_ARB_RSRC_NORMAL_IO',
1989
- 'VGA_ARB_RSRC_NORMAL_MEM', 'pci_device_cfg_read',
1990
- 'pci_device_cfg_read_u16', 'pci_device_cfg_read_u32',
1991
- 'pci_device_cfg_read_u8', 'pci_device_cfg_write',
1992
- 'pci_device_cfg_write_bits', 'pci_device_cfg_write_u16',
1993
- 'pci_device_cfg_write_u32', 'pci_device_cfg_write_u8',
1994
- 'pci_device_close_io', 'pci_device_enable',
1995
- 'pci_device_find_by_slot', 'pci_device_get_agp_info',
1996
- 'pci_device_get_bridge_buses', 'pci_device_get_bridge_info',
1997
- 'pci_device_get_device_name', 'pci_device_get_parent_bridge',
1998
- 'pci_device_get_pcmcia_bridge_info',
1999
- 'pci_device_get_subdevice_name', 'pci_device_get_subvendor_name',
2000
- 'pci_device_get_vendor_name', 'pci_device_has_kernel_driver',
2001
- 'pci_device_is_boot_vga', 'pci_device_map_legacy',
2002
- 'pci_device_map_memory_range', 'pci_device_map_range',
2003
- 'pci_device_map_region', 'pci_device_next', 'pci_device_open_io',
2004
- 'pci_device_probe', 'pci_device_read_rom',
2005
- 'pci_device_unmap_legacy', 'pci_device_unmap_memory_range',
2006
- 'pci_device_unmap_range', 'pci_device_unmap_region',
2007
- 'pci_device_vgaarb_decodes', 'pci_device_vgaarb_fini',
2008
- 'pci_device_vgaarb_get_info', 'pci_device_vgaarb_init',
2009
- 'pci_device_vgaarb_lock', 'pci_device_vgaarb_set_target',
2010
- 'pci_device_vgaarb_trylock', 'pci_device_vgaarb_unlock',
2011
- 'pci_get_strings', 'pci_id_match_iterator_create',
2012
- 'pci_io_read16', 'pci_io_read32', 'pci_io_read8',
2013
- 'pci_io_write16', 'pci_io_write32', 'pci_io_write8',
2014
- 'pci_iterator_destroy', 'pci_legacy_open_io',
2015
- 'pci_slot_match_iterator_create', 'pci_system_cleanup',
2016
- 'pci_system_init', 'pci_system_init_dev_mem', 'pciaddr_t',
2017
- 'struct_pci_agp_info', 'struct_pci_bridge_info',
2018
- 'struct_pci_device', 'struct_pci_device_iterator',
2019
- 'struct_pci_id_match', 'struct_pci_io_handle',
2020
- 'struct_pci_mem_region', 'struct_pci_pcmcia_bridge_info',
2021
- 'struct_pci_pcmcia_bridge_info_0',
2022
- 'struct_pci_pcmcia_bridge_info_1', 'struct_pci_slot_match',
2023
- 'uint16_t', 'uint32_t', 'uint8_t']
1333
+ 'PCI_X_STATUS_SPL_ERR', 'PCI_X_STATUS_UNX_SPL']