Commit 361f1a1a authored by Olaf Hering's avatar Olaf Hering Committed by Greg Kroah-Hartman

[PATCH] add simple class for adb

This adds /sys/class/adb/, removes unused devfs lines and updates a
comment to match reality.
parent 38cf5e92
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* *
* To do: * To do:
* *
* - /proc/adb to list the devices and infos * - /sys/bus/adb to list the devices and infos
* - more /dev/adb to allow userland to receive the * - more /dev/adb to allow userland to receive the
* flow of auto-polling datas from a given device. * flow of auto-polling datas from a given device.
* - move bus probe to a kernel thread * - move bus probe to a kernel thread
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/devfs_fs_kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/smp_lock.h> #include <linux/smp_lock.h>
...@@ -36,6 +35,7 @@ ...@@ -36,6 +35,7 @@
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/completion.h> #include <linux/completion.h>
#include <linux/device.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/semaphore.h> #include <asm/semaphore.h>
#ifdef CONFIG_PPC #ifdef CONFIG_PPC
...@@ -75,6 +75,8 @@ static struct adb_driver *adb_driver_list[] = { ...@@ -75,6 +75,8 @@ static struct adb_driver *adb_driver_list[] = {
NULL NULL
}; };
static struct class_simple *adb_dev_class;
struct adb_driver *adb_controller; struct adb_driver *adb_controller;
struct notifier_block *adb_client_list = NULL; struct notifier_block *adb_client_list = NULL;
static int adb_got_sleep; static int adb_got_sleep;
...@@ -883,6 +885,7 @@ static ssize_t adb_write(struct file *file, const char __user *buf, ...@@ -883,6 +885,7 @@ static ssize_t adb_write(struct file *file, const char __user *buf,
} }
static struct file_operations adb_fops = { static struct file_operations adb_fops = {
.owner = THIS_MODULE,
.llseek = no_llseek, .llseek = no_llseek,
.read = adb_read, .read = adb_read,
.write = adb_write, .write = adb_write,
...@@ -893,9 +896,13 @@ static struct file_operations adb_fops = { ...@@ -893,9 +896,13 @@ static struct file_operations adb_fops = {
static void static void
adbdev_init(void) adbdev_init(void)
{ {
if (register_chrdev(ADB_MAJOR, "adb", &adb_fops)) if (register_chrdev(ADB_MAJOR, "adb", &adb_fops)) {
printk(KERN_ERR "adb: unable to get major %d\n", ADB_MAJOR); printk(KERN_ERR "adb: unable to get major %d\n", ADB_MAJOR);
else return;
devfs_mk_cdev(MKDEV(ADB_MAJOR, 0), }
S_IFCHR | S_IRUSR | S_IWUSR, "adb"); adb_dev_class = class_simple_create(THIS_MODULE, "adb");
if (IS_ERR(adb_dev_class)) {
return;
}
class_simple_device_add(adb_dev_class, MKDEV(ADB_MAJOR, 0), NULL, "adb");
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment