These devices are identified in user space by a filename: if you want to read from a UART, you open the device node, for example, the first serial port on the ARM Versatile Express would be /dev/ttyAMA0
. The driver is identified differently in the kernel, using the major number which, in the example given, is 204
. Since the UART driver can handle more than one UART, there is a second number, called the minor number, which identifies a specific interface, 64, in this case:
# ls -l /dev/ttyAMA* crw-rw---- 1 root root 204, 64 Jan 1 1970 /dev/ttyAMA0 crw-rw---- 1 root root 204, 65 Jan 1 1970 /dev/ttyAMA1 crw-rw---- 1 root root 204, 66 Jan 1 1970 /dev/ttyAMA2 crw-rw---- 1 root root 204, 67 Jan 1 1970 /dev/ttyAMA3
The list of standard major and minor numbers can be found in the kernel documentation, in Documentation/devices.txt
. The list does not get updated very often and does not include the ttyAMA
device described...