__register_chrdev — create and register a cdev occupying a range of minors
|unsigned int major,|
|unsigned int baseminor,|
|unsigned int count,|
|const char * name,|
|const struct file_operations * fops|
unsigned int major
major device number or 0 for dynamic allocation
unsigned int baseminor
first of the requested range of minor numbers
unsigned int count
the number of minor numbers required
const char * name
name of this range of devices
const struct file_operations * fops
file operations associated with this devices
major == 0 this functions will dynamically allocate a major and return
major > 0 this function will attempt to reserve a device with the given
major number and will return zero on success.
Returns a -ve errno on failure.
The name of this device has nothing to do with the name of the device in /dev. It only helps to keep track of the different owners of devices. If your module name has only one type of devices it's ok to use e.g. the name of the module here.