Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

device_create(9) [centos man page]

DEVICE_CREATE(9)					   Device drivers infrastructure					  DEVICE_CREATE(9)

NAME
device_create - creates a device and registers it with sysfs SYNOPSIS
struct device * device_create(struct class * class, struct device * parent, dev_t devt, void * drvdata, const char * fmt, ...); 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 ... variable arguments 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 3.10 June 2014 DEVICE_CREATE(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 3.10 June 2014 DEVICE_SCHEDULE_CALL(9)
Man Page

8 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 Dummies Questions & Answers

differentiate between a file and a device

sorry probably a beginner question but i was just wondering how unix does this as device are treated as files? (6 Replies)
Discussion started by: keith_hampson
6 Replies

3. 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

4. AIX

Display parent of certain device ?

Hi, For example I can display clildren devices of "device_name" device by issuing: lsdev -p device_name How do I display parent device given certain child device ? thanks Vilius (1 Reply)
Discussion started by: vilius
1 Replies

5. 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

6. Programming

linked list node with pointer to struct

Suppose to have: struct Tstudent { string name, surname; int matriculation_num; }; struct Tnode { Tstudent* student; Tnodo* next; } L;I want to deference that "student" pointer. For example, I tried with: *(L->student).matriculation_numbut it not worked, as terminal... (4 Replies)
Discussion started by: Luke Bonham
4 Replies

7. 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

8. 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