Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

device_create_vargs(9) [suse 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)

Check Out this Related Man Page

DEVICE_SCHEDULE_CALL(9) 				   Device drivers infrastructure				   DEVICE_SCHEDULE_CALL(9)

NAME
device_schedule_callback_owner - helper to schedule a callback for a device SYNOPSIS
int device_schedule_callback_owner(struct device * dev, void (*func) (struct device *), struct module * owner); ARGUMENTS
dev device. func callback function to invoke later. owner module owning the callback routine DESCRIPTION
Attribute methods must not unregister themselves or their parent device (which would amount to the same thing). Attempts to do so will deadlock, since unregistration is mutually exclusive with driver callbacks. Instead methods can call this routine, which will attempt to allocate and schedule a workqueue request to call back func with dev as its argument in the workqueue's process context. dev will be pinned until func returns. This routine is usually called via the inline device_schedule_callback, which automatically sets owner to THIS_MODULE. Returns 0 if the request was submitted, -ENOMEM if storage could not be allocated, -ENODEV if a reference to owner isn't available. NOTE
This routine won't work if CONFIG_SYSFS isn't set! It uses an underlying sysfs routine (since it is intended for use by attribute methods), and if sysfs isn't available you'll get nothing but -ENOSYS. COPYRIGHT
Kernel Hackers Manual 2.6. July 2010 DEVICE_SCHEDULE_CALL(9)
Man Page

5 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

how to read and write device registers

hello friends, While in the process of writing device drivers, i am facing problem in reading and writing device registers.I got base address of those mapped device registers. Can i add offset of those registers to that Base address to get access of those... (1 Reply)
Discussion started by: sriram.ec
1 Replies

2. UNIX for Advanced & Expert Users

getting error while copying files

I am trying copy all files ,i was getting below error .Please any idea #find . -name "*bat" -exec cp -p {} /devt/jobs find: incomplete statement Thanks, Akil (9 Replies)
Discussion started by: akil
9 Replies

3. Linux

Query about creating sysfs directory under device driver

Hi all, Currently i am involved in developing a device driver for a custom hardware. My linux stack already has the sysfs directory structure /sys/class/hwmon/ My need is that, while loading my device driver i need to create a "xyz" sysfs directory inside hwmon sysfs directory as... (0 Replies)
Discussion started by: cbalu
0 Replies

4. UNIX for Advanced & Expert Users

Get pointer for existing device class (struct class) in Linux kernel module

Hi all! I am trying to register a device in an existing device class, but I am having trouble getting the pointer to an existing class. I can create a class in a module, get the pointer to it and then use it to register the device with: *cl = class_create(THIS_MODULE, className);... (0 Replies)
Discussion started by: hdaniel@ualg.pt
0 Replies

5. Shell Programming and Scripting

Grabbing data between 2 points in text file

I have a text file that shows the output of my solar inverters. I want to separate this into sections. overview , device 1 , device 2 , device 3. Each device has different number of lines. but they all have unique starting points. Overview starts with 6 #'s, Devices have 4#'s and their data starts... (6 Replies)
Discussion started by: Mikey
6 Replies