DEVICE_REGISTER(9) Device drivers infrastructure DEVICE_REGISTER(9)NAME
device_register - register a device with the system.
SYNOPSIS
int device_register(struct device * dev);
ARGUMENTS
dev
pointer to the device structure
DESCRIPTION
This happens in two clean steps - initialize the device and add it to the system. The two steps can be called separately, but this is the
easiest and most common. I.e. you should only call the two helpers separately if have a clearly defined need to use and refcount the device
before it is added to the hierarchy.
For more information, see the kerneldoc for device_initialize and device_add.
NOTE
_Never_ directly free dev after calling this function, even if it returned an error! Always use put_device to give up the reference
initialized in this function instead.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 DEVICE_REGISTER(9)
Check Out this Related Man Page
DEVICE_CREATE_VARGS(9) Device drivers infrastructure DEVICE_CREATE_VARGS(9)NAME
device_create_vargs - creates a device and registers it with sysfs
SYNOPSIS
struct device * device_create_vargs(struct class * class, struct device * parent, dev_t devt, void * drvdata, const char * fmt,
va_list args);
ARGUMENTS
class
pointer to the struct class that this device should be registered to
parent
pointer to the parent struct device of this new device, if any
devt
the dev_t for the char device to be added
drvdata
the data to be added to the device for callbacks
fmt
string for the device's name
args
va_list for the device's name
DESCRIPTION
This function can be used by char device classes. A struct device will be created in sysfs, registered to the specified class.
A "dev" file will be created, showing the dev_t for the device, if the dev_t is not 0,0. If a pointer to a parent struct device is passed
in, the newly created struct device will be a child of that device in sysfs. The pointer to the struct device will be returned from the
call. Any further sysfs files that might be required can be created using this pointer.
Returns struct device pointer on success, or ERR_PTR on error.
NOTE
the struct class passed to this function must have previously been created with a call to class_create.
COPYRIGHT Kernel Hackers Manual 2.6. July 2010 DEVICE_CREATE_VARGS(9)