Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] patch: add generic proc fs support to dvbdev
- To: <linux-dvb@linuxtv.org>
- Subject: [linux-dvb] patch: add generic proc fs support to dvbdev
- From: "Kai Stuke" <kai.stuke@axcent.de>
- Date: Fri, 12 Oct 2001 13:57:21 +0200
- content-class: urn:content-classes:message
- Content-Transfer-Encoding: quoted-printable
- Content-Type: text/plain; charset="iso-8859-1"
- Delivered-To: mhonarc@limes.convergence.de
- Sender: linux-dvb-bounce@linuxtv.org
- Thread-Index: AcFTFQrkMKkY6SsRSlClbLYKNw9LCw==
- Thread-Topic: patch: add generic proc fs support to dvbdev
The following patch against dvbdev.c (CVS version 1.8) creates the proc
directories
/proc/ost/
and
/proc/ost/dev
All modules using dvbdev can than add to these directories, e.g.
/proc/ost/dev/frontend/debug
/proc/ost/dev/frontend/0/tuned
This is similar to what videodev.c does for video4linux.
Kai
--- driver/dvbdev.c Fri Oct 12 13:42:42 2001
+++ driver_axcent/dvbdev.c Fri Oct 12 13:45:34 2001
@@ -34,6 +34,7 @@
#include <asm/uaccess.h>
#include <asm/system.h>
#include <linux/kmod.h>
+#include <linux/proc_fs.h>
#include "dvbdev.h"
@@ -41,6 +42,9 @@
static struct dvb_device *dvb_device[DVB_NUM_DEVICES];
devfs_handle_t dvb_devfs_handle;
+#if defined(CONFIG_PROC_FS)
+static struct proc_dir_entry *proc_dir_ost, *proc_dir_ost_dev;
+#endif
static inline struct dvb_device *
inode2dev (struct inode *inode)
@@ -191,10 +195,26 @@
dvb_devfs_handle = devfs_mk_dir (NULL, "dvb", NULL);
if(devfs_register_chrdev(DVB_MAJOR,"DVB", &dvb_device_fops))
{
- printk("video_dev: unable to get major %d\n",
DVB_MAJOR);
+ printk("dvbdev: unable to get major %d\n", DVB_MAJOR);
return -EIO;
}
+#if defined(CONFIG_PROC_FS)
+ proc_dir_ost = proc_mkdir("ost", NULL);
+ if (proc_dir_ost) {
+ proc_dir_ost->owner = THIS_MODULE;
+ proc_dir_ost_dev = proc_mkdir("dev", proc_dir_ost);
+ if (proc_dir_ost_dev) {
+ proc_dir_ost_dev->owner = THIS_MODULE;
+ } else {
+ remove_proc_entry("ost", NULL);
+ }
+ }
+ if (!proc_dir_ost || !proc_dir_ost_dev) {
+ printk(KERN_WARNING "dvbdev: unable to create proc
entry\n");
+ }
+#endif
+
return 0;
}
@@ -208,6 +228,12 @@
{
devfs_unregister_chrdev(DVB_MAJOR, "DVB");
devfs_unregister(dvb_devfs_handle);
+#if defined(CONFIG_PROC_FS)
+ if (proc_dir_ost) {
+ remove_proc_entry("dev", proc_dir_ost);
+ remove_proc_entry("ost", NULL);
+ }
+#endif
}
#endif
--
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index