123456789101112131415161718192021222324252627282930313233343536373839 |
- #!/usr/bin/env python
- import re
- import sys
- # Check that the sorting order is preserved in pci.ids
- vendor_id = None
- device_id = None
- lineno = 1
- file = open("pci.ids")
- hexnum = '([0-9a-fA-F]{4})'
- desc = '(.*\\S)'
- for line in file:
- m = re.match(hexnum + '\\s+' + desc, line)
- if m:
- new_id = int('0x' + m.group (1), 16)
- if vendor_id is not None and new_id <= vendor_id:
- print ("%d: Vendor ID (0x%04x) is less that previous ID (0x%04x)" %
- (lineno, new_id, vendor_id))
- sys.exit (-1)
- vendor_id = new_id
- device_id = -1
- m = re.match('\t' + hexnum + '\\s+' + desc, line)
- if m:
- new_id = int('0x' + m.group (1), 16)
- if new_id <= device_id:
- print ("%d: Device ID (0x%04x) is less that previous ID (0x%04x)" %
- (lineno, new_id, device_id))
- sys.exit (-1)
- device_id = new_id
- lineno = lineno + 1
|