FREE(ctx);
}
-/* read a DWORD in the form 0xnnnnnnnn, which is how sysfs pci id stuff is
- * formatted. */
-static inline DWORD
-read_file_dword( const char *name )
-{
- char buf[32];
- int fd, r;
-
- fd = open(name, O_RDONLY);
- if (fd < 0) {
- DBG("Unable to get PCI information from `%s'\n", name);
- return 0;
- }
-
- r = read(fd, buf, 32);
- close(fd);
-
- return (r > 0) ? (DWORD)strtol(buf, NULL, 0) : 0;
-}
-
-/* sysfs doesn't expose the revision as its own file, so this function grabs a
- * dword at an offset in the raw PCI header. The reason this isn't used for all
- * data is that the kernel will make corrections but not expose them in the raw
- * header bytes. */
-static inline DWORD
-read_config_dword( int fd,
- unsigned offset )
-{
- DWORD r = 0;
-
- if (lseek(fd, offset, SEEK_SET) != offset) { return 0; }
- if (read(fd, &r, 4) != 4) { return 0; }
-
- return r;
-}
-
static inline void
get_bus_info( int fd,
DWORD *vendorid,