it's the driver which manages such things... This how it should happen for a classic driver (I think it may differ for certain 'cause of USB norm):
-You insert the driver which will probe your hardware (memory allocation for PCI, which IRQ to use, does IRQ is shared, cretion of device node...)
-Then the driver is ready
When an interrupt arrives, the kernel "redirects" it according IRQ number (that's not completly exact, but that's simpler :P). The driver process the IRQ, ie will do a task according to what it was written in the registers...
And of course to read/write registers, Linux uses /dev/something... So if your device is correctly detected, there should have a /dev/something for it... maybe you use devfs filesystem (like me
) and so the file is /dev/usb/a/long/path/TILP0