list_available_io_ports(dev_name);
}
-void mmap_regions(int device_fd)
+void mmap_regions(int device_fd, char* uio_dev)
{
- char buff[BUFF_SMALL];
+ char path[BUFF_MID];
FILE *file;
- file = fopen("/sys/class/uio/uio0/maps/map0/addr", "rb");
+ sprintf(path, "/sys/class/uio/%s/maps/map0/addr", uio_dev);
+ file = fopen(path, "rb");
fscanf(file, "%llx", &BAR0_phys_addr);
fclose(file);
- file = fopen("/sys/class/uio/uio0/maps/map1/addr", "rb");
+ sprintf(path, "/sys/class/uio/%s/maps/map1/addr", uio_dev);
+ file = fopen(path, "rb");
fscanf(file, "%llx", &BAR2_phys_addr);
fclose(file);
- file = fopen("/sys/class/uio/uio0/maps/map2/addr", "rb");
+ sprintf(path, "/sys/class/uio/%s/maps/map2/addr", uio_dev);
+ file = fopen(path, "rb");
fscanf(file, "%llx", &BAR4_phys_addr);
fclose(file);
strncat(buff, argv[1], min(strlen(argv[1]), 8));
device_fd = open_device(buff);
- mmap_regions(device_fd);
+ mmap_regions(device_fd, argv[1]);
if (device_fd != -1) {