Code flow from device connection to device node in /dev creation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I have been looking into USB code. I have some basic idea of what is
going on but still I have some doubts which I try to explain here.

I have explained how the code flow takes place as per my understanding,
My current understanding:

1. USB Device connected physically.
2. khubd detects the connection of USB device (I hope that khub gets
interrupt from Host Controller).
3. Kernel notifies the user space about the device connection
(probably udev involves in this).
4. Driver for the corresponding device is detected using the device
VID/PID and loaded (modprobe is loading the driver).
5. A device file (nod in /dev - like /dev/ttyUSB0) is created for the
USB device.

Is my understanding correct?

Doubts and Questions:
1. How kernel notifies the user space about the device arrival? What
is the work of udev here?
2. How the device file gets associated with the driver (or device)?
i.e., When a user space code does a open or write call to the device
file (e.g., /dev/ttyUSB0) who determines the correct driver (or
device) and sends the commands to the device? How the device file to
physical device mapping magic works?

Thanks,
Prasanna Kumar T S M
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux