mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 19:26:25 +00:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6: (22 commits) [PATCH] devfs: Remove it from the feature_removal.txt file [PATCH] devfs: Last little devfs cleanups throughout the kernel tree. [PATCH] devfs: Rename TTY_DRIVER_NO_DEVFS to TTY_DRIVER_DYNAMIC_DEV [PATCH] devfs: Remove the tty_driver devfs_name field as it's no longer needed [PATCH] devfs: Remove the line_driver devfs_name field as it's no longer needed [PATCH] devfs: Remove the videodevice devfs_name field as it's no longer needed [PATCH] devfs: Remove the gendisk devfs_name field as it's no longer needed [PATCH] devfs: Remove the miscdevice devfs_name field as it's no longer needed [PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree [PATCH] devfs: Remove devfs_remove() function from the kernel tree [PATCH] devfs: Remove devfs_mk_cdev() function from the kernel tree [PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree [PATCH] devfs: Remove devfs_mk_symlink() function from the kernel tree [PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree [PATCH] devfs: Remove devfs_*_tape() functions from the kernel tree [PATCH] devfs: Remove devfs support from the sound subsystem [PATCH] devfs: Remove devfs support from the ide subsystem. [PATCH] devfs: Remove devfs support from the serial subsystem [PATCH] devfs: Remove devfs from the init code [PATCH] devfs: Remove devfs from the partition code ...
This commit is contained in:
commit
602cada851
197 changed files with 96 additions and 8271 deletions
|
@ -181,8 +181,8 @@ Intel IA32 microcode
|
|||
--------------------
|
||||
|
||||
A driver has been added to allow updating of Intel IA32 microcode,
|
||||
accessible as both a devfs regular file and as a normal (misc)
|
||||
character device. If you are not using devfs you may need to:
|
||||
accessible as a normal (misc) character device. If you are not using
|
||||
udev you may need to:
|
||||
|
||||
mkdir /dev/cpu
|
||||
mknod /dev/cpu/microcode c 10 184
|
||||
|
@ -201,7 +201,9 @@ with programs using shared memory.
|
|||
udev
|
||||
----
|
||||
udev is a userspace application for populating /dev dynamically with
|
||||
only entries for devices actually present. udev replaces devfs.
|
||||
only entries for devices actually present. udev replaces the basic
|
||||
functionality of devfs, while allowing persistant device naming for
|
||||
devices.
|
||||
|
||||
FUSE
|
||||
----
|
||||
|
@ -231,18 +233,13 @@ The PPP driver has been restructured to support multilink and to
|
|||
enable it to operate over diverse media layers. If you use PPP,
|
||||
upgrade pppd to at least 2.4.0.
|
||||
|
||||
If you are not using devfs, you must have the device file /dev/ppp
|
||||
If you are not using udev, you must have the device file /dev/ppp
|
||||
which can be made by:
|
||||
|
||||
mknod /dev/ppp c 108 0
|
||||
|
||||
as root.
|
||||
|
||||
If you use devfsd and build ppp support as modules, you will need
|
||||
the following in your /etc/devfsd.conf file:
|
||||
|
||||
LOOKUP PPP MODLOAD
|
||||
|
||||
Isdn4k-utils
|
||||
------------
|
||||
|
||||
|
|
|
@ -348,11 +348,6 @@ X!Earch/i386/kernel/mca.c
|
|||
</sect1>
|
||||
</chapter>
|
||||
|
||||
<chapter id="devfs">
|
||||
<title>The Device File System</title>
|
||||
!Efs/devfs/base.c
|
||||
</chapter>
|
||||
|
||||
<chapter id="sysfs">
|
||||
<title>The Filesystem for Exporting Kernel Objects</title>
|
||||
!Efs/sysfs/file.c
|
||||
|
|
|
@ -78,9 +78,9 @@ also known as "System Drives", and Drive Groups are also called "Packs". Both
|
|||
terms are in use in the Mylex documentation; I have chosen to standardize on
|
||||
the more generic "Logical Drive" and "Drive Group".
|
||||
|
||||
DAC960 RAID disk devices are named in the style of the Device File System
|
||||
(DEVFS). The device corresponding to Logical Drive D on Controller C is
|
||||
referred to as /dev/rd/cCdD, and the partitions are called /dev/rd/cCdDp1
|
||||
DAC960 RAID disk devices are named in the style of the obsolete Device File
|
||||
System (DEVFS). The device corresponding to Logical Drive D on Controller C
|
||||
is referred to as /dev/rd/cCdD, and the partitions are called /dev/rd/cCdDp1
|
||||
through /dev/rd/cCdDp7. For example, partition 3 of Logical Drive 5 on
|
||||
Controller 2 is referred to as /dev/rd/c2d5p3. Note that unlike with SCSI
|
||||
disks the device names will not change in the event of a disk drive failure.
|
||||
|
|
|
@ -6,17 +6,6 @@ be removed from this file.
|
|||
|
||||
---------------------------
|
||||
|
||||
What: devfs
|
||||
When: July 2005
|
||||
Files: fs/devfs/*, include/linux/devfs_fs*.h and assorted devfs
|
||||
function calls throughout the kernel tree
|
||||
Why: It has been unmaintained for a number of years, has unfixable
|
||||
races, contains a naming policy within the kernel that is
|
||||
against the LSB, and can be replaced by using udev.
|
||||
Who: Greg Kroah-Hartman <greg@kroah.com>
|
||||
|
||||
---------------------------
|
||||
|
||||
What: RAW driver (CONFIG_RAW_DRIVER)
|
||||
When: December 2005
|
||||
Why: declared obsolete since kernel 2.6.3
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,40 +0,0 @@
|
|||
Device File System (devfs) ToDo List
|
||||
|
||||
Richard Gooch <rgooch@atnf.csiro.au>
|
||||
|
||||
3-JUL-2000
|
||||
|
||||
This is a list of things to be done for better devfs support in the
|
||||
Linux kernel. If you'd like to contribute to the devfs, please have a
|
||||
look at this list for anything that is unallocated. Also, if there are
|
||||
items missing (surely), please contact me so I can add them to the
|
||||
list (preferably with your name attached to them:-).
|
||||
|
||||
|
||||
- >256 ptys
|
||||
Thanks to C. Scott Ananian <cananian@alumni.princeton.edu>
|
||||
|
||||
- Amiga floppy driver (drivers/block/amiflop.c)
|
||||
|
||||
- Atari floppy driver (drivers/block/ataflop.c)
|
||||
|
||||
- SWIM3 (Super Woz Integrated Machine 3) floppy driver (drivers/block/swim3.c)
|
||||
|
||||
- Amiga ZorroII ramdisc driver (drivers/block/z2ram.c)
|
||||
|
||||
- Parallel port ATAPI CD-ROM (drivers/block/paride/pcd.c)
|
||||
|
||||
- Parallel port ATAPI floppy (drivers/block/paride/pf.c)
|
||||
|
||||
- AP1000 block driver (drivers/ap1000/ap.c, drivers/ap1000/ddv.c)
|
||||
|
||||
- Archimedes floppy (drivers/acorn/block/fd1772.c)
|
||||
|
||||
- MFM hard drive (drivers/acorn/block/mfmhd.c)
|
||||
|
||||
- I2O block device (drivers/message/i2o/i2o_block.c)
|
||||
|
||||
- ST-RAM device (arch/m68k/atari/stram.c)
|
||||
|
||||
- Raw devices
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
/* -*- auto-fill -*- */
|
||||
|
||||
Device File System (devfs) Boot Options
|
||||
|
||||
Richard Gooch <rgooch@atnf.csiro.au>
|
||||
|
||||
18-AUG-2001
|
||||
|
||||
|
||||
When CONFIG_DEVFS_DEBUG is enabled, you can pass several boot options
|
||||
to the kernel to debug devfs. The boot options are prefixed by
|
||||
"devfs=", and are separated by commas. Spaces are not allowed. The
|
||||
syntax looks like this:
|
||||
|
||||
devfs=<option1>,<option2>,<option3>
|
||||
|
||||
and so on. For example, if you wanted to turn on debugging for module
|
||||
load requests and device registration, you would do:
|
||||
|
||||
devfs=dmod,dreg
|
||||
|
||||
You may prefix "no" to any option. This will invert the option.
|
||||
|
||||
|
||||
Debugging Options
|
||||
=================
|
||||
|
||||
These requires CONFIG_DEVFS_DEBUG to be enabled.
|
||||
Note that all debugging options have 'd' as the first character. By
|
||||
default all options are off. All debugging output is sent to the
|
||||
kernel logs. The debugging options do not take effect until the devfs
|
||||
version message appears (just prior to the root filesystem being
|
||||
mounted).
|
||||
|
||||
These are the options:
|
||||
|
||||
dmod print module load requests to <request_module>
|
||||
|
||||
dreg print device register requests to <devfs_register>
|
||||
|
||||
dunreg print device unregister requests to <devfs_unregister>
|
||||
|
||||
dchange print device change requests to <devfs_set_flags>
|
||||
|
||||
dilookup print inode lookup requests
|
||||
|
||||
diget print VFS inode allocations
|
||||
|
||||
diunlink print inode unlinks
|
||||
|
||||
dichange print inode changes
|
||||
|
||||
dimknod print calls to mknod(2)
|
||||
|
||||
dall some debugging turned on
|
||||
|
||||
|
||||
Other Options
|
||||
=============
|
||||
|
||||
These control the default behaviour of devfs. The options are:
|
||||
|
||||
mount mount devfs onto /dev at boot time
|
||||
|
||||
only disable non-devfs device nodes for devfs-capable drivers
|
|
@ -67,8 +67,7 @@ initrd adds the following new options:
|
|||
as the last process has closed it, all data is freed and /dev/initrd
|
||||
can't be opened anymore.
|
||||
|
||||
root=/dev/ram0 (without devfs)
|
||||
root=/dev/rd/0 (with devfs)
|
||||
root=/dev/ram0
|
||||
|
||||
initrd is mounted as root, and the normal boot procedure is followed,
|
||||
with the RAM disk still mounted as root.
|
||||
|
@ -90,8 +89,7 @@ you're building an install floppy), the root file system creation
|
|||
procedure should create the /initrd directory.
|
||||
|
||||
If initrd will not be mounted in some cases, its content is still
|
||||
accessible if the following device has been created (note that this
|
||||
does not work if using devfs):
|
||||
accessible if the following device has been created:
|
||||
|
||||
# mknod /dev/initrd b 1 250
|
||||
# chmod 400 /dev/initrd
|
||||
|
@ -119,8 +117,7 @@ We'll describe the loopback device method:
|
|||
(if space is critical, you may want to use the Minix FS instead of Ext2)
|
||||
3) mount the file system, e.g.
|
||||
# mount -t ext2 -o loop initrd /mnt
|
||||
4) create the console device (not necessary if using devfs, but it can't
|
||||
hurt to do it anyway):
|
||||
4) create the console device:
|
||||
# mkdir /mnt/dev
|
||||
# mknod /mnt/dev/console c 5 1
|
||||
5) copy all the files that are needed to properly use the initrd
|
||||
|
@ -152,12 +149,7 @@ have to be given:
|
|||
|
||||
root=/dev/ram0 init=/linuxrc rw
|
||||
|
||||
if not using devfs, or
|
||||
|
||||
root=/dev/rd/0 init=/linuxrc rw
|
||||
|
||||
if using devfs. (rw is only necessary if writing to the initrd file
|
||||
system.)
|
||||
(rw is only necessary if writing to the initrd file system.)
|
||||
|
||||
With LOADLIN, you simply execute
|
||||
|
||||
|
@ -217,9 +209,9 @@ following command:
|
|||
# exec chroot . what-follows <dev/console >dev/console 2>&1
|
||||
|
||||
Where what-follows is a program under the new root, e.g. /sbin/init
|
||||
If the new root file system will be used with devfs and has no valid
|
||||
/dev directory, devfs must be mounted before invoking chroot in order to
|
||||
provide /dev/console.
|
||||
If the new root file system will be used with udev and has no valid
|
||||
/dev directory, udev must be initialized before invoking chroot in order
|
||||
to provide /dev/console.
|
||||
|
||||
Note: implementation details of pivot_root may change with time. In order
|
||||
to ensure compatibility, the following points should be observed:
|
||||
|
@ -236,7 +228,7 @@ Now, the initrd can be unmounted and the memory allocated by the RAM
|
|||
disk can be freed:
|
||||
|
||||
# umount /initrd
|
||||
# blockdev --flushbufs /dev/ram0 # /dev/rd/0 if using devfs
|
||||
# blockdev --flushbufs /dev/ram0
|
||||
|
||||
It is also possible to use initrd with an NFS-mounted root, see the
|
||||
pivot_root(8) man page for details.
|
||||
|
|
|
@ -119,7 +119,6 @@ Code Seq# Include File Comments
|
|||
'c' 00-7F linux/comstats.h conflict!
|
||||
'c' 00-7F linux/coda.h conflict!
|
||||
'd' 00-FF linux/char/drm/drm/h conflict!
|
||||
'd' 00-1F linux/devfs_fs.h conflict!
|
||||
'd' 00-DF linux/video_decoder.h conflict!
|
||||
'd' F0-FF linux/digi1.h
|
||||
'e' all linux/digi1.h conflict!
|
||||
|
|
|
@ -35,7 +35,6 @@ parameter is applicable:
|
|||
APM Advanced Power Management support is enabled.
|
||||
AX25 Appropriate AX.25 support is enabled.
|
||||
CD Appropriate CD support is enabled.
|
||||
DEVFS devfs support is enabled.
|
||||
DRM Direct Rendering Management support is enabled.
|
||||
EDD BIOS Enhanced Disk Drive Services (EDD) is enabled
|
||||
EFI EFI Partitioning (GPT) is enabled
|
||||
|
@ -440,9 +439,6 @@ running once the system is up.
|
|||
Format: <area>[,<node>]
|
||||
See also Documentation/networking/decnet.txt.
|
||||
|
||||
devfs= [DEVFS]
|
||||
See Documentation/filesystems/devfs/boot-options.
|
||||
|
||||
dhash_entries= [KNL]
|
||||
Set number of hash buckets for dentry cache.
|
||||
|
||||
|
|
|
@ -541,7 +541,7 @@ init_dummy_console(void)
|
|||
dummy_driver.init_termios = tty_std_termios;
|
||||
dummy_driver.init_termios.c_cflag =
|
||||
B115200 | CS8 | CREAD | HUPCL | CLOCAL; /* is normally B9600 default... */
|
||||
dummy_driver.flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS;
|
||||
dummy_driver.flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
|
||||
dummy_driver.open = dummy_open;
|
||||
dummy_driver.close = dummy_close;
|
||||
|
|
|
@ -353,7 +353,7 @@ init_dummy_console(void)
|
|||
dummy_driver.init_termios = tty_std_termios;
|
||||
dummy_driver.init_termios.c_cflag =
|
||||
B115200 | CS8 | CREAD | HUPCL | CLOCAL; /* is normally B9600 default... */
|
||||
dummy_driver.flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS;
|
||||
dummy_driver.flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
|
||||
dummy_driver.open = dummy_open;
|
||||
dummy_driver.close = dummy_close;
|
||||
|
|
|
@ -493,7 +493,6 @@ static struct file_operations microcode_fops = {
|
|||
static struct miscdevice microcode_dev = {
|
||||
.minor = MICROCODE_MINOR,
|
||||
.name = "microcode",
|
||||
.devfs_name = "cpu/microcode",
|
||||
.fops = µcode_fops,
|
||||
};
|
||||
|
||||
|
|
|
@ -1758,7 +1758,7 @@ int __init siccuart_init(void)
|
|||
siccnormal_driver->subtype = SERIAL_TYPE_NORMAL;
|
||||
siccnormal_driver->init_termios = tty_std_termios;
|
||||
siccnormal_driver->init_termios.c_cflag = B9600 | CS8 | CREAD | HUPCL | CLOCAL;
|
||||
siccnormal_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS;
|
||||
siccnormal_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
tty_set_operations(siccnormal_driver, &sicc_ops);
|
||||
|
||||
if (tty_register_driver(siccnormal_driver))
|
||||
|
|
|
@ -417,7 +417,6 @@ static struct file_operations sq_fops = {
|
|||
static struct miscdevice sq_dev = {
|
||||
.minor = STORE_QUEUE_MINOR,
|
||||
.name = "sq",
|
||||
.devfs_name = "cpu/sq",
|
||||
.fops = &sq_fops,
|
||||
};
|
||||
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
#include <linux/slab.h>
|
||||
#include <linux/syscalls.h>
|
||||
#include <linux/in.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
|
||||
#include <net/sock.h>
|
||||
|
||||
|
@ -190,8 +189,6 @@ init_socksys(void)
|
|||
return ret;
|
||||
}
|
||||
|
||||
devfs_mk_cdev(MKDEV(30, 0), S_IFCHR|S_IRUSR|S_IWUSR, "socksys");
|
||||
|
||||
file = fcheck(ret);
|
||||
/* N.B. Is this valid? Suppose the f_ops are in a module ... */
|
||||
socksys_file_ops = *file->f_op;
|
||||
|
@ -207,5 +204,4 @@ cleanup_socksys(void)
|
|||
{
|
||||
if (unregister_chrdev(30, "socksys"))
|
||||
printk ("Couldn't unregister socksys character device\n");
|
||||
devfs_remove ("socksys");
|
||||
}
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
#include "linux/list.h"
|
||||
#include "linux/kd.h"
|
||||
#include "linux/interrupt.h"
|
||||
#include "linux/devfs_fs_kernel.h"
|
||||
#include "asm/uaccess.h"
|
||||
#include "chan_kern.h"
|
||||
#include "irq_user.h"
|
||||
|
@ -655,7 +654,6 @@ struct tty_driver *line_register_devfs(struct lines *set,
|
|||
|
||||
driver->driver_name = line_driver->name;
|
||||
driver->name = line_driver->device_name;
|
||||
driver->devfs_name = line_driver->devfs_name;
|
||||
driver->major = line_driver->major;
|
||||
driver->minor_start = line_driver->minor_start;
|
||||
driver->type = line_driver->type;
|
||||
|
|
|
@ -54,7 +54,6 @@ static int ssl_remove(int n);
|
|||
static struct line_driver driver = {
|
||||
.name = "UML serial line",
|
||||
.device_name = "ttyS",
|
||||
.devfs_name = "tts/",
|
||||
.major = TTY_MAJOR,
|
||||
.minor_start = 64,
|
||||
.type = TTY_DRIVER_TYPE_SERIAL,
|
||||
|
|
|
@ -60,7 +60,6 @@ static int con_remove(int n);
|
|||
static struct line_driver driver = {
|
||||
.name = "UML console",
|
||||
.device_name = "tty",
|
||||
.devfs_name = "vc/",
|
||||
.major = TTY_MAJOR,
|
||||
.minor_start = 0,
|
||||
.type = TTY_DRIVER_TYPE_CONSOLE,
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include "linux/blkdev.h"
|
||||
#include "linux/hdreg.h"
|
||||
#include "linux/init.h"
|
||||
#include "linux/devfs_fs_kernel.h"
|
||||
#include "linux/cdrom.h"
|
||||
#include "linux/proc_fs.h"
|
||||
#include "linux/ctype.h"
|
||||
|
@ -628,7 +627,6 @@ static int ubd_new_disk(int major, u64 size, int unit,
|
|||
|
||||
{
|
||||
struct gendisk *disk;
|
||||
char from[sizeof("ubd/nnnnn\0")], to[sizeof("discnnnnn/disc\0")];
|
||||
int err;
|
||||
|
||||
disk = alloc_disk(1 << UBD_SHIFT);
|
||||
|
@ -639,20 +637,10 @@ static int ubd_new_disk(int major, u64 size, int unit,
|
|||
disk->first_minor = unit << UBD_SHIFT;
|
||||
disk->fops = &ubd_blops;
|
||||
set_capacity(disk, size / 512);
|
||||
if(major == MAJOR_NR){
|
||||
if(major == MAJOR_NR)
|
||||
sprintf(disk->disk_name, "ubd%c", 'a' + unit);
|
||||
sprintf(disk->devfs_name, "ubd/disc%d", unit);
|
||||
sprintf(from, "ubd/%d", unit);
|
||||
sprintf(to, "disc%d/disc", unit);
|
||||
err = devfs_mk_symlink(from, to);
|
||||
if(err)
|
||||
printk("ubd_new_disk failed to make link from %s to "
|
||||
"%s, error = %d\n", from, to, err);
|
||||
}
|
||||
else {
|
||||
else
|
||||
sprintf(disk->disk_name, "ubd_fake%d", unit);
|
||||
sprintf(disk->devfs_name, "ubd_fake/disc%d", unit);
|
||||
}
|
||||
|
||||
/* sysfs register (not for ide fake devices) */
|
||||
if (major == MAJOR_NR) {
|
||||
|
@ -841,7 +829,6 @@ int ubd_init(void)
|
|||
{
|
||||
int i;
|
||||
|
||||
devfs_mk_dir("ubd");
|
||||
if (register_blkdev(MAJOR_NR, "ubd"))
|
||||
return -1;
|
||||
|
||||
|
@ -855,7 +842,6 @@ int ubd_init(void)
|
|||
char name[sizeof("ubd_nnn\0")];
|
||||
|
||||
snprintf(name, sizeof(name), "ubd_%d", fake_major);
|
||||
devfs_mk_dir(name);
|
||||
if (register_blkdev(fake_major, "ubd"))
|
||||
return -1;
|
||||
}
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
struct line_driver {
|
||||
char *name;
|
||||
char *device_name;
|
||||
char *devfs_name;
|
||||
short major;
|
||||
short minor_start;
|
||||
short type;
|
||||
|
|
|
@ -2530,7 +2530,6 @@ static boolean DAC960_RegisterBlockDevice(DAC960_Controller_T *Controller)
|
|||
blk_queue_max_sectors(RequestQueue, Controller->MaxBlocksPerCommand);
|
||||
disk->queue = RequestQueue;
|
||||
sprintf(disk->disk_name, "rd/c%dd%d", Controller->ControllerNumber, n);
|
||||
sprintf(disk->devfs_name, "rd/host%d/target%d", Controller->ControllerNumber, n);
|
||||
disk->major = MajorNumber;
|
||||
disk->first_minor = n << DAC960_MaxPartitionsBits;
|
||||
disk->fops = &DAC960_BlockDeviceOperations;
|
||||
|
|
|
@ -1732,13 +1732,10 @@ int acsi_init( void )
|
|||
struct gendisk *disk = acsi_gendisk[i];
|
||||
sprintf(disk->disk_name, "ad%c", 'a'+i);
|
||||
aip = &acsi_info[NDevices];
|
||||
sprintf(disk->devfs_name, "ad/target%d/lun%d", aip->target, aip->lun);
|
||||
disk->major = ACSI_MAJOR;
|
||||
disk->first_minor = i << 4;
|
||||
if (acsi_info[i].type != HARDDISK) {
|
||||
if (acsi_info[i].type != HARDDISK)
|
||||
disk->minors = 1;
|
||||
strcat(disk->devfs_name, "/disc");
|
||||
}
|
||||
disk->fops = &acsi_fops;
|
||||
disk->private_data = &acsi_info[i];
|
||||
set_capacity(disk, acsi_info[i].size);
|
||||
|
|
|
@ -65,7 +65,6 @@ not be guaranteed. There are several ways to assure this:
|
|||
#include <linux/time.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/smp_lock.h>
|
||||
|
||||
#include <asm/pgtable.h>
|
||||
|
@ -1005,11 +1004,6 @@ int slm_init( void )
|
|||
BufferP = SLMBuffer;
|
||||
SLMState = IDLE;
|
||||
|
||||
devfs_mk_dir("slm");
|
||||
for (i = 0; i < MAX_SLM; i++) {
|
||||
devfs_mk_cdev(MKDEV(ACSI_MAJOR, i),
|
||||
S_IFCHR|S_IRUSR|S_IWUSR, "slm/%d", i);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1032,10 +1026,6 @@ int init_module(void)
|
|||
|
||||
void cleanup_module(void)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < MAX_SLM; i++)
|
||||
devfs_remove("slm/%d", i);
|
||||
devfs_remove("slm");
|
||||
if (unregister_chrdev( ACSI_MAJOR, "slm" ) != 0)
|
||||
printk( KERN_ERR "acsi_slm: cleanup_module failed\n");
|
||||
atari_stram_free( SLMBuffer );
|
||||
|
|
|
@ -3248,7 +3248,6 @@ static int __devinit cciss_init_one(struct pci_dev *pdev,
|
|||
|
||||
q->queuedata = hba[i];
|
||||
sprintf(disk->disk_name, "cciss/c%dd%d", i, j);
|
||||
sprintf(disk->devfs_name, "cciss/host%d/target%d", i, j);
|
||||
disk->major = hba[i]->major;
|
||||
disk->first_minor = j << NWD_SHIFT;
|
||||
disk->fops = &cciss_fops;
|
||||
|
|
|
@ -33,7 +33,6 @@
|
|||
#include <linux/blkpg.h>
|
||||
#include <linux/timer.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/hdreg.h>
|
||||
#include <linux/spinlock.h>
|
||||
|
@ -348,7 +347,6 @@ static void __devexit cpqarray_remove_one(int i)
|
|||
for(j = 0; j < NWD; j++) {
|
||||
if (ida_gendisk[i][j]->flags & GENHD_FL_UP)
|
||||
del_gendisk(ida_gendisk[i][j]);
|
||||
devfs_remove("ida/c%dd%d",i,j);
|
||||
put_disk(ida_gendisk[i][j]);
|
||||
}
|
||||
blk_cleanup_queue(hba[i]->queue);
|
||||
|
@ -1807,8 +1805,6 @@ static void getgeometry(int ctlr)
|
|||
|
||||
}
|
||||
|
||||
sprintf(disk->devfs_name, "ida/c%dd%d", ctlr, log_unit);
|
||||
|
||||
info_p->phys_drives =
|
||||
sense_config_buf->ctlr_phys_drv;
|
||||
info_p->drv_assign_map
|
||||
|
@ -1844,7 +1840,6 @@ static void __exit cpqarray_exit(void)
|
|||
}
|
||||
}
|
||||
|
||||
devfs_remove("ida");
|
||||
remove_proc_entry("cpqarray", proc_root_driver);
|
||||
}
|
||||
|
||||
|
|
|
@ -177,7 +177,6 @@ static int print_unex = 1;
|
|||
#include <linux/ioport.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/buffer_head.h> /* for invalidate_buffers() */
|
||||
#include <linux/mutex.h>
|
||||
|
@ -224,7 +223,6 @@ static struct completion device_release;
|
|||
static unsigned short virtual_dma_port = 0x3f0;
|
||||
irqreturn_t floppy_interrupt(int irq, void *dev_id, struct pt_regs *regs);
|
||||
static int set_dor(int fdc, char mask, char data);
|
||||
static void register_devfs_entries(int drive) __init;
|
||||
|
||||
#define K_64 0x10000 /* 64KB */
|
||||
|
||||
|
@ -3676,7 +3674,6 @@ static void __init config_types(void)
|
|||
first = 0;
|
||||
}
|
||||
printk("%s fd%d is %s", prepend, drive, name);
|
||||
register_devfs_entries(drive);
|
||||
}
|
||||
*UDP = *params;
|
||||
}
|
||||
|
@ -3954,37 +3951,6 @@ static struct block_device_operations floppy_fops = {
|
|||
.media_changed = check_floppy_change,
|
||||
.revalidate_disk = floppy_revalidate,
|
||||
};
|
||||
static char *table[] = {
|
||||
"", "d360", "h1200", "u360", "u720", "h360", "h720",
|
||||
"u1440", "u2880", "CompaQ", "h1440", "u1680", "h410",
|
||||
"u820", "h1476", "u1722", "h420", "u830", "h1494", "u1743",
|
||||
"h880", "u1040", "u1120", "h1600", "u1760", "u1920",
|
||||
"u3200", "u3520", "u3840", "u1840", "u800", "u1600",
|
||||
NULL
|
||||
};
|
||||
static int t360[] = { 1, 0 },
|
||||
t1200[] = { 2, 5, 6, 10, 12, 14, 16, 18, 20, 23, 0 },
|
||||
t3in[] = { 8, 9, 26, 27, 28, 7, 11, 15, 19, 24, 25, 29, 31, 3, 4, 13,
|
||||
17, 21, 22, 30, 0 };
|
||||
static int *table_sup[] =
|
||||
{ NULL, t360, t1200, t3in + 5 + 8, t3in + 5, t3in, t3in };
|
||||
|
||||
static void __init register_devfs_entries(int drive)
|
||||
{
|
||||
int base_minor = (drive < 4) ? drive : (124 + drive);
|
||||
|
||||
if (UDP->cmos < ARRAY_SIZE(default_drive_params)) {
|
||||
int i = 0;
|
||||
do {
|
||||
int minor = base_minor + (table_sup[UDP->cmos][i] << 2);
|
||||
|
||||
devfs_mk_bdev(MKDEV(FLOPPY_MAJOR, minor),
|
||||
S_IFBLK | S_IRUSR | S_IWUSR | S_IRGRP |
|
||||
S_IWGRP, "floppy/%d%s", drive,
|
||||
table[table_sup[UDP->cmos][i]]);
|
||||
} while (table_sup[UDP->cmos][i++]);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Floppy Driver initialization
|
||||
|
@ -4261,11 +4227,9 @@ static int __init floppy_init(void)
|
|||
motor_off_timer[dr].function = motor_off_callback;
|
||||
}
|
||||
|
||||
devfs_mk_dir("floppy");
|
||||
|
||||
err = register_blkdev(FLOPPY_MAJOR, "fd");
|
||||
if (err)
|
||||
goto out_devfs_remove;
|
||||
goto out_put_disk;
|
||||
|
||||
floppy_queue = blk_init_queue(do_fd_request, &floppy_lock);
|
||||
if (!floppy_queue) {
|
||||
|
@ -4424,8 +4388,6 @@ out_unreg_region:
|
|||
blk_cleanup_queue(floppy_queue);
|
||||
out_unreg_blkdev:
|
||||
unregister_blkdev(FLOPPY_MAJOR, "fd");
|
||||
out_devfs_remove:
|
||||
devfs_remove("floppy");
|
||||
out_put_disk:
|
||||
while (dr--) {
|
||||
del_timer(&motor_off_timer[dr]);
|
||||
|
@ -4586,19 +4548,6 @@ static void floppy_release_irq_and_dma(void)
|
|||
|
||||
static char *floppy;
|
||||
|
||||
static void unregister_devfs_entries(int drive)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (UDP->cmos < ARRAY_SIZE(default_drive_params)) {
|
||||
i = 0;
|
||||
do {
|
||||
devfs_remove("floppy/%d%s", drive,
|
||||
table[table_sup[UDP->cmos][i]]);
|
||||
} while (table_sup[UDP->cmos][i++]);
|
||||
}
|
||||
}
|
||||
|
||||
static void __init parse_floppy_cfg_string(char *cfg)
|
||||
{
|
||||
char *ptr;
|
||||
|
@ -4635,13 +4584,11 @@ void cleanup_module(void)
|
|||
if ((allowed_drive_mask & (1 << drive)) &&
|
||||
fdc_state[FDC(drive)].version != FDC_NONE) {
|
||||
del_gendisk(disks[drive]);
|
||||
unregister_devfs_entries(drive);
|
||||
device_remove_file(&floppy_device[drive].dev, &dev_attr_cmos);
|
||||
platform_device_unregister(&floppy_device[drive]);
|
||||
}
|
||||
put_disk(disks[drive]);
|
||||
}
|
||||
devfs_remove("floppy");
|
||||
|
||||
del_timer_sync(&fd_timeout);
|
||||
del_timer_sync(&fd_timer);
|
||||
|
|
|
@ -63,7 +63,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/blkpg.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/swap.h>
|
||||
#include <linux/slab.h>
|
||||
|
@ -1277,8 +1276,6 @@ static int __init loop_init(void)
|
|||
goto out_mem3;
|
||||
}
|
||||
|
||||
devfs_mk_dir("loop");
|
||||
|
||||
for (i = 0; i < max_loop; i++) {
|
||||
struct loop_device *lo = &loop_dev[i];
|
||||
struct gendisk *disk = disks[i];
|
||||
|
@ -1296,7 +1293,6 @@ static int __init loop_init(void)
|
|||
disk->first_minor = i;
|
||||
disk->fops = &lo_fops;
|
||||
sprintf(disk->disk_name, "loop%d", i);
|
||||
sprintf(disk->devfs_name, "loop/%d", i);
|
||||
disk->private_data = lo;
|
||||
disk->queue = lo->lo_queue;
|
||||
}
|
||||
|
@ -1310,7 +1306,6 @@ static int __init loop_init(void)
|
|||
out_mem4:
|
||||
while (i--)
|
||||
blk_cleanup_queue(loop_dev[i].lo_queue);
|
||||
devfs_remove("loop");
|
||||
i = max_loop;
|
||||
out_mem3:
|
||||
while (i--)
|
||||
|
@ -1333,7 +1328,6 @@ static void loop_exit(void)
|
|||
blk_cleanup_queue(loop_dev[i].lo_queue);
|
||||
put_disk(disks[i]);
|
||||
}
|
||||
devfs_remove("loop");
|
||||
if (unregister_blkdev(LOOP_MAJOR, "loop"))
|
||||
printk(KERN_WARNING "loop: cannot unregister blkdev\n");
|
||||
|
||||
|
|
|
@ -29,8 +29,6 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <net/sock.h>
|
||||
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/types.h>
|
||||
|
@ -642,7 +640,6 @@ static int __init nbd_init(void)
|
|||
printk(KERN_INFO "nbd: registered device at major %d\n", NBD_MAJOR);
|
||||
dprintk(DBG_INIT, "nbd: debugflags=0x%x\n", debugflags);
|
||||
|
||||
devfs_mk_dir("nbd");
|
||||
for (i = 0; i < nbds_max; i++) {
|
||||
struct gendisk *disk = nbd_dev[i].disk;
|
||||
nbd_dev[i].file = NULL;
|
||||
|
@ -660,7 +657,6 @@ static int __init nbd_init(void)
|
|||
disk->private_data = &nbd_dev[i];
|
||||
disk->flags |= GENHD_FL_SUPPRESS_PARTITION_INFO;
|
||||
sprintf(disk->disk_name, "nbd%d", i);
|
||||
sprintf(disk->devfs_name, "nbd/%d", i);
|
||||
set_capacity(disk, 0x7ffffc00ULL << 1); /* 2 TB */
|
||||
add_disk(disk);
|
||||
}
|
||||
|
@ -686,7 +682,6 @@ static void __exit nbd_cleanup(void)
|
|||
put_disk(disk);
|
||||
}
|
||||
}
|
||||
devfs_remove("nbd");
|
||||
unregister_blkdev(NBD_MAJOR, "nbd");
|
||||
printk(KERN_INFO "nbd: unregistered device at major %d\n", NBD_MAJOR);
|
||||
}
|
||||
|
|
|
@ -156,7 +156,6 @@ enum {D_PRT, D_PRO, D_UNI, D_MOD, D_SLV, D_DLY};
|
|||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/mtio.h>
|
||||
|
@ -674,25 +673,15 @@ static int __init pg_init(void)
|
|||
err = PTR_ERR(pg_class);
|
||||
goto out_chrdev;
|
||||
}
|
||||
devfs_mk_dir("pg");
|
||||
for (unit = 0; unit < PG_UNITS; unit++) {
|
||||
struct pg *dev = &devices[unit];
|
||||
if (dev->present) {
|
||||
if (dev->present)
|
||||
class_device_create(pg_class, NULL, MKDEV(major, unit),
|
||||
NULL, "pg%u", unit);
|
||||
err = devfs_mk_cdev(MKDEV(major, unit),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR, "pg/%u",
|
||||
unit);
|
||||
if (err)
|
||||
goto out_class;
|
||||
}
|
||||
}
|
||||
err = 0;
|
||||
goto out;
|
||||
|
||||
out_class:
|
||||
class_device_destroy(pg_class, MKDEV(major, unit));
|
||||
class_destroy(pg_class);
|
||||
out_chrdev:
|
||||
unregister_chrdev(major, "pg");
|
||||
out:
|
||||
|
@ -705,13 +694,10 @@ static void __exit pg_exit(void)
|
|||
|
||||
for (unit = 0; unit < PG_UNITS; unit++) {
|
||||
struct pg *dev = &devices[unit];
|
||||
if (dev->present) {
|
||||
if (dev->present)
|
||||
class_device_destroy(pg_class, MKDEV(major, unit));
|
||||
devfs_remove("pg/%u", unit);
|
||||
}
|
||||
}
|
||||
class_destroy(pg_class);
|
||||
devfs_remove("pg");
|
||||
unregister_chrdev(major, name);
|
||||
|
||||
for (unit = 0; unit < PG_UNITS; unit++) {
|
||||
|
|
|
@ -141,7 +141,6 @@ static int (*drives[4])[6] = {&drive0, &drive1, &drive2, &drive3};
|
|||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/mtio.h>
|
||||
|
@ -971,32 +970,15 @@ static int __init pt_init(void)
|
|||
goto out_chrdev;
|
||||
}
|
||||
|
||||
devfs_mk_dir("pt");
|
||||
for (unit = 0; unit < PT_UNITS; unit++)
|
||||
if (pt[unit].present) {
|
||||
class_device_create(pt_class, NULL, MKDEV(major, unit),
|
||||
NULL, "pt%d", unit);
|
||||
err = devfs_mk_cdev(MKDEV(major, unit),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"pt/%d", unit);
|
||||
if (err) {
|
||||
class_device_destroy(pt_class, MKDEV(major, unit));
|
||||
goto out_class;
|
||||
}
|
||||
class_device_create(pt_class, NULL, MKDEV(major, unit + 128),
|
||||
NULL, "pt%dn", unit);
|
||||
err = devfs_mk_cdev(MKDEV(major, unit + 128),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"pt/%dn", unit);
|
||||
if (err) {
|
||||
class_device_destroy(pt_class, MKDEV(major, unit + 128));
|
||||
goto out_class;
|
||||
}
|
||||
}
|
||||
goto out;
|
||||
|
||||
out_class:
|
||||
class_destroy(pt_class);
|
||||
out_chrdev:
|
||||
unregister_chrdev(major, "pt");
|
||||
out:
|
||||
|
@ -1009,12 +991,9 @@ static void __exit pt_exit(void)
|
|||
for (unit = 0; unit < PT_UNITS; unit++)
|
||||
if (pt[unit].present) {
|
||||
class_device_destroy(pt_class, MKDEV(major, unit));
|
||||
devfs_remove("pt/%d", unit);
|
||||
class_device_destroy(pt_class, MKDEV(major, unit + 128));
|
||||
devfs_remove("pt/%dn", unit);
|
||||
}
|
||||
class_destroy(pt_class);
|
||||
devfs_remove("pt");
|
||||
unregister_chrdev(major, name);
|
||||
for (unit = 0; unit < PT_UNITS; unit++)
|
||||
if (pt[unit].present)
|
||||
|
|
|
@ -2612,7 +2612,6 @@ static struct file_operations pkt_ctl_fops = {
|
|||
static struct miscdevice pkt_misc = {
|
||||
.minor = MISC_DYNAMIC_MINOR,
|
||||
.name = "pktcdvd",
|
||||
.devfs_name = "pktcdvd/control",
|
||||
.fops = &pkt_ctl_fops
|
||||
};
|
||||
|
||||
|
|
|
@ -421,7 +421,6 @@ static int __init ps2esdi_geninit(void)
|
|||
disk->major = PS2ESDI_MAJOR;
|
||||
disk->first_minor = i<<6;
|
||||
sprintf(disk->disk_name, "ed%c", 'a'+i);
|
||||
sprintf(disk->devfs_name, "ed/target%d", i);
|
||||
disk->fops = &ps2esdi_fops;
|
||||
ps2esdi_gendisk[i] = disk;
|
||||
}
|
||||
|
|
|
@ -50,7 +50,6 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/moduleparam.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/pagemap.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/genhd.h>
|
||||
|
@ -412,7 +411,6 @@ static void __exit rd_cleanup(void)
|
|||
put_disk(rd_disks[i]);
|
||||
blk_cleanup_queue(rd_queue[i]);
|
||||
}
|
||||
devfs_remove("rd");
|
||||
unregister_blkdev(RAMDISK_MAJOR, "ramdisk");
|
||||
}
|
||||
|
||||
|
@ -442,8 +440,6 @@ static int __init rd_init(void)
|
|||
goto out;
|
||||
}
|
||||
|
||||
devfs_mk_dir("rd");
|
||||
|
||||
for (i = 0; i < CONFIG_BLK_DEV_RAM_COUNT; i++) {
|
||||
struct gendisk *disk = rd_disks[i];
|
||||
|
||||
|
@ -461,7 +457,6 @@ static int __init rd_init(void)
|
|||
disk->queue = rd_queue[i];
|
||||
disk->flags |= GENHD_FL_SUPPRESS_PARTITION_INFO;
|
||||
sprintf(disk->disk_name, "ram%d", i);
|
||||
sprintf(disk->devfs_name, "rd/%d", i);
|
||||
set_capacity(disk, rd_size * 2);
|
||||
add_disk(rd_disks[i]);
|
||||
}
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include <linux/fd.h>
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/spinlock.h>
|
||||
|
@ -1019,8 +1018,6 @@ int swim3_init(void)
|
|||
int err = -ENOMEM;
|
||||
int i;
|
||||
|
||||
devfs_mk_dir("floppy");
|
||||
|
||||
swim = find_devices("floppy");
|
||||
while (swim && (floppy_count < MAX_FLOPPIES))
|
||||
{
|
||||
|
@ -1064,7 +1061,6 @@ int swim3_init(void)
|
|||
disk->queue = swim3_queue;
|
||||
disk->flags |= GENHD_FL_REMOVABLE;
|
||||
sprintf(disk->disk_name, "fd%d", i);
|
||||
sprintf(disk->devfs_name, "floppy/%d", i);
|
||||
set_capacity(disk, 2880);
|
||||
add_disk(disk);
|
||||
}
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
#include <linux/spinlock.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/compiler.h>
|
||||
#include <linux/workqueue.h>
|
||||
|
@ -1510,7 +1509,6 @@ static int carm_init_disks(struct carm_host *host)
|
|||
port->disk = disk;
|
||||
sprintf(disk->disk_name, DRV_NAME "/%u",
|
||||
(unsigned int) (host->id * CARM_MAX_PORTS) + i);
|
||||
sprintf(disk->devfs_name, DRV_NAME "/%u_%u", host->id, i);
|
||||
disk->major = host->major;
|
||||
disk->first_minor = i * CARM_MINORS_PER_MAJOR;
|
||||
disk->fops = &carm_bd_ops;
|
||||
|
@ -1672,8 +1670,6 @@ static int carm_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||
if (host->flags & FL_DYN_MAJOR)
|
||||
host->major = rc;
|
||||
|
||||
devfs_mk_dir(DRV_NAME);
|
||||
|
||||
rc = carm_init_disks(host);
|
||||
if (rc)
|
||||
goto err_out_blkdev_disks;
|
||||
|
@ -1739,7 +1735,6 @@ static void carm_remove_one (struct pci_dev *pdev)
|
|||
|
||||
free_irq(pdev->irq, host);
|
||||
carm_free_disks(host);
|
||||
devfs_remove(DRV_NAME);
|
||||
unregister_blkdev(host->major, host->name);
|
||||
if (host->major == 160)
|
||||
clear_bit(0, &carm_major_alloc);
|
||||
|
|
|
@ -24,12 +24,10 @@
|
|||
#include <linux/usb.h>
|
||||
#include <linux/usb_usual.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/timer.h>
|
||||
#include <scsi/scsi.h>
|
||||
|
||||
#define DRV_NAME "ub"
|
||||
#define DEVFS_NAME DRV_NAME
|
||||
|
||||
#define UB_MAJOR 180
|
||||
|
||||
|
@ -2291,7 +2289,6 @@ static int ub_probe_lun(struct ub_dev *sc, int lnum)
|
|||
goto err_diskalloc;
|
||||
|
||||
sprintf(disk->disk_name, DRV_NAME "%c", lun->id + 'a');
|
||||
sprintf(disk->devfs_name, DEVFS_NAME "/%c", lun->id + 'a');
|
||||
disk->major = UB_MAJOR;
|
||||
disk->first_minor = lun->id * UB_PARTS_PER_LUN;
|
||||
disk->fops = &ub_bd_fops;
|
||||
|
@ -2445,7 +2442,6 @@ static int __init ub_init(void)
|
|||
|
||||
if ((rc = register_blkdev(UB_MAJOR, DRV_NAME)) != 0)
|
||||
goto err_regblkdev;
|
||||
devfs_mk_dir(DEVFS_NAME);
|
||||
|
||||
if ((rc = usb_register(&ub_driver)) != 0)
|
||||
goto err_register;
|
||||
|
@ -2454,7 +2450,6 @@ static int __init ub_init(void)
|
|||
return 0;
|
||||
|
||||
err_register:
|
||||
devfs_remove(DEVFS_NAME);
|
||||
unregister_blkdev(UB_MAJOR, DRV_NAME);
|
||||
err_regblkdev:
|
||||
return rc;
|
||||
|
@ -2464,7 +2459,6 @@ static void __exit ub_exit(void)
|
|||
{
|
||||
usb_deregister(&ub_driver);
|
||||
|
||||
devfs_remove(DEVFS_NAME);
|
||||
unregister_blkdev(UB_MAJOR, DRV_NAME);
|
||||
usb_usual_clear_present(USB_US_TYPE_UB);
|
||||
}
|
||||
|
|
|
@ -1192,7 +1192,6 @@ static int __init mm_init(void)
|
|||
for (i = 0; i < num_cards; i++) {
|
||||
struct gendisk *disk = mm_gendisk[i];
|
||||
sprintf(disk->disk_name, "umem%c", 'a'+i);
|
||||
sprintf(disk->devfs_name, "umem/card%d", i);
|
||||
spin_lock_init(&cards[i].lock);
|
||||
disk->major = major_nr;
|
||||
disk->first_minor = i << MM_SHIFT;
|
||||
|
|
|
@ -59,7 +59,6 @@ MODULE_LICENSE("GPL");
|
|||
* numbers 0-255 we get a maximum of 32 disks.
|
||||
*/
|
||||
#define VIOD_GENHD_NAME "iseries/vd"
|
||||
#define VIOD_GENHD_DEVFS_NAME "iseries/disc"
|
||||
|
||||
#define VIOD_VERS "1.64"
|
||||
|
||||
|
@ -523,8 +522,6 @@ retry:
|
|||
else
|
||||
snprintf(g->disk_name, sizeof(g->disk_name),
|
||||
VIOD_GENHD_NAME "%c", 'a' + (dev_no % 26));
|
||||
snprintf(g->devfs_name, sizeof(g->devfs_name),
|
||||
"%s%d", VIOD_GENHD_DEVFS_NAME, dev_no);
|
||||
g->fops = &viodasd_fops;
|
||||
g->queue = q;
|
||||
g->private_data = d;
|
||||
|
|
|
@ -215,7 +215,6 @@ static int __init xd_init(void)
|
|||
disk->major = XT_DISK_MAJOR;
|
||||
disk->first_minor = i<<6;
|
||||
sprintf(disk->disk_name, "xd%c", i+'a');
|
||||
sprintf(disk->devfs_name, "xd/target%d", i);
|
||||
disk->fops = &xd_fops;
|
||||
disk->private_data = p;
|
||||
disk->queue = xd_queue;
|
||||
|
|
|
@ -354,7 +354,6 @@ z2_init(void)
|
|||
z2ram_gendisk->first_minor = 0;
|
||||
z2ram_gendisk->fops = &z2_fops;
|
||||
sprintf(z2ram_gendisk->disk_name, "z2ram");
|
||||
strcpy(z2ram_gendisk->devfs_name, z2ram_gendisk->disk_name);
|
||||
|
||||
z2ram_gendisk->queue = z2_queue;
|
||||
add_disk(z2ram_gendisk);
|
||||
|
|
|
@ -1918,7 +1918,6 @@ static int __init aztcd_init(void)
|
|||
azt_disk->first_minor = 0;
|
||||
azt_disk->fops = &azt_fops;
|
||||
sprintf(azt_disk->disk_name, "aztcd");
|
||||
sprintf(azt_disk->devfs_name, "aztcd");
|
||||
azt_disk->queue = azt_queue;
|
||||
add_disk(azt_disk);
|
||||
azt_invalidate_buffers();
|
||||
|
|
|
@ -161,7 +161,6 @@
|
|||
#include <linux/hdreg.h>
|
||||
#include <linux/genhd.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/string.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/init.h>
|
||||
|
|
|
@ -187,7 +187,6 @@ History:
|
|||
#include <linux/interrupt.h>
|
||||
#include <linux/timer.h>
|
||||
#include <linux/cdrom.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/slab.h>
|
||||
|
|
|
@ -955,7 +955,6 @@ static int __init gscd_init(void)
|
|||
gscd_disk->first_minor = 0;
|
||||
gscd_disk->fops = &gscd_fops;
|
||||
sprintf(gscd_disk->disk_name, "gscd");
|
||||
sprintf(gscd_disk->devfs_name, "gscd");
|
||||
|
||||
if (register_blkdev(MAJOR_NR, "gscd")) {
|
||||
ret = -EIO;
|
||||
|
|
|
@ -74,7 +74,6 @@ static const char *mcdx_c_version
|
|||
#include <linux/major.h>
|
||||
#define MAJOR_NR MITSUMI_X_CDROM_MAJOR
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
|
||||
#include "mcdx.h"
|
||||
|
||||
|
|
|
@ -2033,7 +2033,6 @@ static int __init optcd_init(void)
|
|||
optcd_disk->first_minor = 0;
|
||||
optcd_disk->fops = &opt_fops;
|
||||
sprintf(optcd_disk->disk_name, "optcd");
|
||||
sprintf(optcd_disk->devfs_name, "optcd");
|
||||
|
||||
if (!request_region(optcd_port, 4, "optcd")) {
|
||||
printk(KERN_ERR "optcd: conflict, I/O port 0x%x already used\n",
|
||||
|
|
|
@ -371,7 +371,6 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/cdrom.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/string.h>
|
||||
#include <linux/vmalloc.h>
|
||||
|
@ -5808,8 +5807,6 @@ int __init sbpcd_init(void)
|
|||
return -ENOMEM;
|
||||
}
|
||||
|
||||
devfs_mk_dir("sbp");
|
||||
|
||||
for (j=0;j<NR_SBPCD;j++)
|
||||
{
|
||||
struct cdrom_device_info * sbpcd_infop;
|
||||
|
@ -5871,7 +5868,6 @@ int __init sbpcd_init(void)
|
|||
disk->fops = &sbpcd_bdops;
|
||||
strcpy(disk->disk_name, sbpcd_infop->name);
|
||||
disk->flags = GENHD_FL_CD;
|
||||
sprintf(disk->devfs_name, "sbp/c0t%d", p->drv_id);
|
||||
p->disk = disk;
|
||||
if (register_cdrom(sbpcd_infop))
|
||||
{
|
||||
|
@ -5906,7 +5902,6 @@ static void sbpcd_exit(void)
|
|||
if (D_S[j].drv_id==-1) continue;
|
||||
del_gendisk(D_S[j].disk);
|
||||
put_disk(D_S[j].disk);
|
||||
devfs_remove("sbp/c0t%d", j);
|
||||
vfree(D_S[j].sbp_buf);
|
||||
if (D_S[j].sbp_audsiz>0)
|
||||
vfree(D_S[j].aud_buf);
|
||||
|
@ -5917,7 +5912,6 @@ static void sbpcd_exit(void)
|
|||
}
|
||||
vfree(D_S[j].sbpcd_infop);
|
||||
}
|
||||
devfs_remove("sbp");
|
||||
msg(DBG_INF, "%s module released.\n", major_name);
|
||||
}
|
||||
|
||||
|
|
|
@ -1695,7 +1695,6 @@ static int __init sjcd_init(void)
|
|||
sjcd_disk->first_minor = 0,
|
||||
sjcd_disk->fops = &sjcd_fops,
|
||||
sprintf(sjcd_disk->disk_name, "sjcd");
|
||||
sprintf(sjcd_disk->devfs_name, "sjcd");
|
||||
|
||||
if (!request_region(sjcd_base, 4,"sjcd")) {
|
||||
printk
|
||||
|
|
|
@ -1589,7 +1589,6 @@ static int __init sony535_init(void)
|
|||
cdu_disk->first_minor = 0;
|
||||
cdu_disk->fops = &cdu_fops;
|
||||
sprintf(cdu_disk->disk_name, "cdu");
|
||||
sprintf(cdu_disk->devfs_name, "cdu535");
|
||||
|
||||
if (!request_region(sony535_cd_base_io, 4, CDU535_HANDLE)) {
|
||||
printk(KERN_WARNING"sonycd535: Unable to request region 0x%x\n",
|
||||
|
|
|
@ -49,7 +49,6 @@
|
|||
#include <asm/iseries/vio.h>
|
||||
|
||||
#define VIOCD_DEVICE "iseries/vcd"
|
||||
#define VIOCD_DEVICE_DEVFS "iseries/vcd"
|
||||
|
||||
#define VIOCD_VERS "1.06"
|
||||
|
||||
|
@ -688,8 +687,6 @@ static int viocd_probe(struct vio_dev *vdev, const struct vio_device_id *id)
|
|||
gendisk->first_minor = deviceno;
|
||||
strncpy(gendisk->disk_name, c->name,
|
||||
sizeof(gendisk->disk_name));
|
||||
snprintf(gendisk->devfs_name, sizeof(gendisk->devfs_name),
|
||||
VIOCD_DEVICE_DEVFS "%d", deviceno);
|
||||
blk_queue_max_hw_segments(q, 1);
|
||||
blk_queue_max_phys_segments(q, 1);
|
||||
blk_queue_max_sectors(q, 4096 / 512);
|
||||
|
|
|
@ -5250,7 +5250,6 @@ cy_init(void)
|
|||
cy_serial_driver->owner = THIS_MODULE;
|
||||
cy_serial_driver->driver_name = "cyclades";
|
||||
cy_serial_driver->name = "ttyC";
|
||||
cy_serial_driver->devfs_name = "tts/C";
|
||||
cy_serial_driver->major = CYCLADES_MAJOR;
|
||||
cy_serial_driver->minor_start = 0;
|
||||
cy_serial_driver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -33,7 +33,6 @@
|
|||
#include <linux/fs.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/device.h>
|
||||
|
||||
|
@ -518,17 +517,9 @@ static int __init dsp56k_init_driver(void)
|
|||
}
|
||||
class_device_create(dsp56k_class, NULL, MKDEV(DSP56K_MAJOR, 0), NULL, "dsp56k");
|
||||
|
||||
err = devfs_mk_cdev(MKDEV(DSP56K_MAJOR, 0),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR, "dsp56k");
|
||||
if(err)
|
||||
goto out_class;
|
||||
|
||||
printk(banner);
|
||||
goto out;
|
||||
|
||||
out_class:
|
||||
class_device_destroy(dsp56k_class, MKDEV(DSP56K_MAJOR, 0));
|
||||
class_destroy(dsp56k_class);
|
||||
out_chrdev:
|
||||
unregister_chrdev(DSP56K_MAJOR, "dsp56k");
|
||||
out:
|
||||
|
@ -541,7 +532,6 @@ static void __exit dsp56k_cleanup_driver(void)
|
|||
class_device_destroy(dsp56k_class, MKDEV(DSP56K_MAJOR, 0));
|
||||
class_destroy(dsp56k_class);
|
||||
unregister_chrdev(DSP56K_MAJOR, "dsp56k");
|
||||
devfs_remove("dsp56k");
|
||||
}
|
||||
module_exit(dsp56k_cleanup_driver);
|
||||
|
||||
|
|
|
@ -62,7 +62,6 @@
|
|||
#include <linux/init.h> /* for __init, module_{init,exit} */
|
||||
#include <linux/poll.h> /* for POLLIN, etc. */
|
||||
#include <linux/dtlk.h> /* local header file for DoubleTalk values */
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/smp_lock.h>
|
||||
|
||||
#ifdef TRACING
|
||||
|
@ -337,9 +336,6 @@ static int __init dtlk_init(void)
|
|||
if (dtlk_dev_probe() == 0)
|
||||
printk(", MAJOR %d\n", dtlk_major);
|
||||
|
||||
devfs_mk_cdev(MKDEV(dtlk_major, DTLK_MINOR),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR, "dtlk");
|
||||
|
||||
init_timer(&dtlk_timer);
|
||||
dtlk_timer.function = dtlk_timer_tick;
|
||||
init_waitqueue_head(&dtlk_process_list);
|
||||
|
@ -357,7 +353,6 @@ static void __exit dtlk_cleanup (void)
|
|||
|
||||
dtlk_write_tts(DTLK_CLEAR);
|
||||
unregister_chrdev(dtlk_major, "dtlk");
|
||||
devfs_remove("dtlk");
|
||||
release_region(dtlk_port_lpc, DTLK_IO_EXTENT);
|
||||
}
|
||||
|
||||
|
|
|
@ -1232,7 +1232,6 @@ static int __init pc_init(void)
|
|||
|
||||
pc_driver->owner = THIS_MODULE;
|
||||
pc_driver->name = "ttyD";
|
||||
pc_driver->devfs_name = "tts/D";
|
||||
pc_driver->major = DIGI_MAJOR;
|
||||
pc_driver->minor_start = 0;
|
||||
pc_driver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -2449,7 +2449,6 @@ static int __init espserial_init(void)
|
|||
|
||||
esp_driver->owner = THIS_MODULE;
|
||||
esp_driver->name = "ttyP";
|
||||
esp_driver->devfs_name = "tts/P";
|
||||
esp_driver->major = ESP_IN_MAJOR;
|
||||
esp_driver->minor_start = 0;
|
||||
esp_driver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -33,7 +33,6 @@
|
|||
#endif
|
||||
#include <linux/fcntl.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
|
||||
#include <linux/zftape.h>
|
||||
#include <linux/init.h>
|
||||
|
@ -332,29 +331,11 @@ KERN_INFO
|
|||
zft_class = class_create(THIS_MODULE, "zft");
|
||||
for (i = 0; i < 4; i++) {
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i), NULL, "qft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"qft%i", i);
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i + 4), NULL, "nqft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i + 4),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"nqft%i", i);
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i + 16), NULL, "zqft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i + 16),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"zqft%i", i);
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i + 20), NULL, "nzqft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i + 20),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"nzqft%i", i);
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i + 32), NULL, "rawqft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i + 32),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"rawqft%i", i);
|
||||
class_device_create(zft_class, NULL, MKDEV(QIC117_TAPE_MAJOR, i + 36), NULL, "nrawrawqft%i", i);
|
||||
devfs_mk_cdev(MKDEV(QIC117_TAPE_MAJOR, i + 36),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"nrawqft%i", i);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_ZFT_COMPRESSOR
|
||||
|
@ -380,17 +361,11 @@ static void zft_exit(void)
|
|||
TRACE(ft_t_info, "successful");
|
||||
}
|
||||
for (i = 0; i < 4; i++) {
|
||||
devfs_remove("qft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i));
|
||||
devfs_remove("nqft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i + 4));
|
||||
devfs_remove("zqft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i + 16));
|
||||
devfs_remove("nzqft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i + 20));
|
||||
devfs_remove("rawqft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i + 32));
|
||||
devfs_remove("nrawqft%i", i);
|
||||
class_device_destroy(zft_class, MKDEV(QIC117_TAPE_MAJOR, i + 36));
|
||||
}
|
||||
class_destroy(zft_class);
|
||||
|
|
|
@ -820,7 +820,6 @@ int __init hvc_init(void)
|
|||
return -ENOMEM;
|
||||
|
||||
drv->owner = THIS_MODULE;
|
||||
drv->devfs_name = "hvc/";
|
||||
drv->driver_name = "hvc";
|
||||
drv->name = "hvc";
|
||||
drv->major = HVC_MAJOR;
|
||||
|
|
|
@ -1363,7 +1363,6 @@ static int __init hvcs_module_init(void)
|
|||
|
||||
hvcs_tty_driver->driver_name = hvcs_driver_name;
|
||||
hvcs_tty_driver->name = hvcs_device_node;
|
||||
hvcs_tty_driver->devfs_name = hvcs_device_node;
|
||||
|
||||
/*
|
||||
* We'll let the system assign us a major number, indicated by leaving
|
||||
|
|
|
@ -1154,7 +1154,6 @@ static int __init hvsi_init(void)
|
|||
return -ENOMEM;
|
||||
|
||||
hvsi_driver->owner = THIS_MODULE;
|
||||
hvsi_driver->devfs_name = "hvsi/";
|
||||
hvsi_driver->driver_name = "hvsi";
|
||||
hvsi_driver->name = "hvsi";
|
||||
hvsi_driver->major = HVSI_MAJOR;
|
||||
|
|
|
@ -91,7 +91,6 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/signal.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/timer.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/pci.h>
|
||||
|
@ -414,9 +413,7 @@ cleanup_module(void)
|
|||
/* free io addresses and Tibet */
|
||||
release_region( ip2config.addr[i], 8 );
|
||||
class_device_destroy(ip2_class, MKDEV(IP2_IPL_MAJOR, 4 * i));
|
||||
devfs_remove("ip2/ipl%d", i);
|
||||
class_device_destroy(ip2_class, MKDEV(IP2_IPL_MAJOR, 4 * i + 1));
|
||||
devfs_remove("ip2/stat%d", i);
|
||||
}
|
||||
/* Disable and remove interrupt handler. */
|
||||
if ( (ip2config.irq[i] > 0) && have_requested_irq(ip2config.irq[i]) ) {
|
||||
|
@ -425,7 +422,6 @@ cleanup_module(void)
|
|||
}
|
||||
}
|
||||
class_destroy(ip2_class);
|
||||
devfs_remove("ip2");
|
||||
if ( ( err = tty_unregister_driver ( ip2_tty_driver ) ) ) {
|
||||
printk(KERN_ERR "IP2: failed to unregister tty driver (%d)\n", err);
|
||||
}
|
||||
|
@ -675,7 +671,6 @@ ip2_loadmain(int *iop, int *irqp, unsigned char *firmware, int firmsize)
|
|||
|
||||
ip2_tty_driver->owner = THIS_MODULE;
|
||||
ip2_tty_driver->name = "ttyF";
|
||||
ip2_tty_driver->devfs_name = "tts/F";
|
||||
ip2_tty_driver->driver_name = pcDriver_name;
|
||||
ip2_tty_driver->major = IP2_TTY_MAJOR;
|
||||
ip2_tty_driver->minor_start = 0;
|
||||
|
@ -683,7 +678,7 @@ ip2_loadmain(int *iop, int *irqp, unsigned char *firmware, int firmsize)
|
|||
ip2_tty_driver->subtype = SERIAL_TYPE_NORMAL;
|
||||
ip2_tty_driver->init_termios = tty_std_termios;
|
||||
ip2_tty_driver->init_termios.c_cflag = B9600|CS8|CREAD|HUPCL|CLOCAL;
|
||||
ip2_tty_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS;
|
||||
ip2_tty_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
tty_set_operations(ip2_tty_driver, &ip2_ops);
|
||||
|
||||
ip2trace (ITRC_NO_PORT, ITRC_INIT, 3, 0 );
|
||||
|
@ -724,26 +719,9 @@ ip2_loadmain(int *iop, int *irqp, unsigned char *firmware, int firmsize)
|
|||
class_device_create(ip2_class, NULL,
|
||||
MKDEV(IP2_IPL_MAJOR, 4 * i),
|
||||
NULL, "ipl%d", i);
|
||||
err = devfs_mk_cdev(MKDEV(IP2_IPL_MAJOR, 4 * i),
|
||||
S_IRUSR | S_IWUSR | S_IRGRP | S_IFCHR,
|
||||
"ip2/ipl%d", i);
|
||||
if (err) {
|
||||
class_device_destroy(ip2_class,
|
||||
MKDEV(IP2_IPL_MAJOR, 4 * i));
|
||||
goto out_class;
|
||||
}
|
||||
|
||||
class_device_create(ip2_class, NULL,
|
||||
MKDEV(IP2_IPL_MAJOR, 4 * i + 1),
|
||||
NULL, "stat%d", i);
|
||||
err = devfs_mk_cdev(MKDEV(IP2_IPL_MAJOR, 4 * i + 1),
|
||||
S_IRUSR | S_IWUSR | S_IRGRP | S_IFCHR,
|
||||
"ip2/stat%d", i);
|
||||
if (err) {
|
||||
class_device_destroy(ip2_class,
|
||||
MKDEV(IP2_IPL_MAJOR, 4 * i + 1));
|
||||
goto out_class;
|
||||
}
|
||||
|
||||
for ( box = 0; box < ABS_MAX_BOXES; ++box )
|
||||
{
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#include <linux/poll.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/ipmi.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/init.h>
|
||||
|
@ -804,9 +803,6 @@ static void ipmi_new_smi(int if_num, struct device *device)
|
|||
dev_t dev = MKDEV(ipmi_major, if_num);
|
||||
struct ipmi_reg_list *entry;
|
||||
|
||||
devfs_mk_cdev(dev, S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"ipmidev/%d", if_num);
|
||||
|
||||
entry = kmalloc(sizeof(*entry), GFP_KERNEL);
|
||||
if (!entry) {
|
||||
printk(KERN_ERR "ipmi_devintf: Unable to create the"
|
||||
|
@ -836,7 +832,6 @@ static void ipmi_smi_gone(int if_num)
|
|||
}
|
||||
class_device_destroy(ipmi_class, dev);
|
||||
mutex_unlock(®_list_mutex);
|
||||
devfs_remove("ipmidev/%d", if_num);
|
||||
}
|
||||
|
||||
static struct ipmi_smi_watcher smi_watcher =
|
||||
|
@ -872,8 +867,6 @@ static __init int init_ipmi_devintf(void)
|
|||
ipmi_major = rv;
|
||||
}
|
||||
|
||||
devfs_mk_dir(DEVICE_NAME);
|
||||
|
||||
rv = ipmi_smi_watcher_register(&smi_watcher);
|
||||
if (rv) {
|
||||
unregister_chrdev(ipmi_major, DEVICE_NAME);
|
||||
|
@ -898,7 +891,6 @@ static __exit void cleanup_ipmi(void)
|
|||
mutex_unlock(®_list_mutex);
|
||||
class_destroy(ipmi_class);
|
||||
ipmi_smi_watcher_unregister(&smi_watcher);
|
||||
devfs_remove(DEVICE_NAME);
|
||||
unregister_chrdev(ipmi_major, DEVICE_NAME);
|
||||
}
|
||||
module_exit(cleanup_ipmi);
|
||||
|
|
|
@ -1581,7 +1581,6 @@ static int __devinit isicom_register_tty_driver(void)
|
|||
|
||||
isicom_normal->owner = THIS_MODULE;
|
||||
isicom_normal->name = "ttyM";
|
||||
isicom_normal->devfs_name = "isicom/";
|
||||
isicom_normal->major = ISICOM_NMAJOR;
|
||||
isicom_normal->minor_start = 0;
|
||||
isicom_normal->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#include <linux/ioport.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/wait.h>
|
||||
#include <linux/eisa.h>
|
||||
|
@ -826,11 +825,8 @@ static void __exit istallion_module_exit(void)
|
|||
return;
|
||||
}
|
||||
put_tty_driver(stli_serial);
|
||||
for (i = 0; i < 4; i++) {
|
||||
devfs_remove("staliomem/%d", i);
|
||||
for (i = 0; i < 4; i++)
|
||||
class_device_destroy(istallion_class, MKDEV(STL_SIOMEMMAJOR, i));
|
||||
}
|
||||
devfs_remove("staliomem");
|
||||
class_destroy(istallion_class);
|
||||
if ((i = unregister_chrdev(STL_SIOMEMMAJOR, "staliomem")))
|
||||
printk("STALLION: failed to un-register serial memory device, "
|
||||
|
@ -4728,16 +4724,11 @@ int __init stli_init(void)
|
|||
printk(KERN_ERR "STALLION: failed to register serial memory "
|
||||
"device\n");
|
||||
|
||||
devfs_mk_dir("staliomem");
|
||||
istallion_class = class_create(THIS_MODULE, "staliomem");
|
||||
for (i = 0; i < 4; i++) {
|
||||
devfs_mk_cdev(MKDEV(STL_SIOMEMMAJOR, i),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"staliomem/%d", i);
|
||||
for (i = 0; i < 4; i++)
|
||||
class_device_create(istallion_class, NULL,
|
||||
MKDEV(STL_SIOMEMMAJOR, i),
|
||||
NULL, "staliomem%d", i);
|
||||
}
|
||||
|
||||
/*
|
||||
* Set up the tty driver structure and register us as a driver.
|
||||
|
|
|
@ -120,7 +120,6 @@
|
|||
#include <linux/major.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/fcntl.h>
|
||||
#include <linux/delay.h>
|
||||
|
@ -807,8 +806,6 @@ static int lp_register(int nr, struct parport *port)
|
|||
|
||||
class_device_create(lp_class, NULL, MKDEV(LP_MAJOR, nr), NULL,
|
||||
"lp%d", nr);
|
||||
devfs_mk_cdev(MKDEV(LP_MAJOR, nr), S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"printers/%d", nr);
|
||||
|
||||
printk(KERN_INFO "lp%d: using %s (%s).\n", nr, port->name,
|
||||
(port->irq == PARPORT_IRQ_NONE)?"polling":"interrupt-driven");
|
||||
|
@ -907,7 +904,6 @@ static int __init lp_init (void)
|
|||
return -EIO;
|
||||
}
|
||||
|
||||
devfs_mk_dir("printers");
|
||||
lp_class = class_create(THIS_MODULE, "printer");
|
||||
if (IS_ERR(lp_class)) {
|
||||
err = PTR_ERR(lp_class);
|
||||
|
@ -933,7 +929,6 @@ static int __init lp_init (void)
|
|||
out_class:
|
||||
class_destroy(lp_class);
|
||||
out_devfs:
|
||||
devfs_remove("printers");
|
||||
unregister_chrdev(LP_MAJOR, "lp");
|
||||
return err;
|
||||
}
|
||||
|
@ -981,10 +976,8 @@ static void lp_cleanup_module (void)
|
|||
if (lp_table[offset].dev == NULL)
|
||||
continue;
|
||||
parport_unregister_device(lp_table[offset].dev);
|
||||
devfs_remove("printers/%d", offset);
|
||||
class_device_destroy(lp_class, MKDEV(LP_MAJOR, offset));
|
||||
}
|
||||
devfs_remove("printers");
|
||||
class_destroy(lp_class);
|
||||
}
|
||||
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#include <linux/tty.h>
|
||||
#include <linux/capability.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/ptrace.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/highmem.h>
|
||||
|
@ -941,13 +940,10 @@ static int __init chr_dev_init(void)
|
|||
printk("unable to get major %d for memory devs\n", MEM_MAJOR);
|
||||
|
||||
mem_class = class_create(THIS_MODULE, "mem");
|
||||
for (i = 0; i < ARRAY_SIZE(devlist); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(devlist); i++)
|
||||
class_device_create(mem_class, NULL,
|
||||
MKDEV(MEM_MAJOR, devlist[i].minor),
|
||||
NULL, devlist[i].name);
|
||||
devfs_mk_cdev(MKDEV(MEM_MAJOR, devlist[i].minor),
|
||||
S_IFCHR | devlist[i].mode, devlist[i].name);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
#include <linux/slab.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/stat.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/device.h>
|
||||
|
@ -204,7 +203,7 @@ int misc_register(struct miscdevice * misc)
|
|||
{
|
||||
struct miscdevice *c;
|
||||
dev_t dev;
|
||||
int err;
|
||||
int err = 0;
|
||||
|
||||
down(&misc_sem);
|
||||
list_for_each_entry(c, &misc_list, list) {
|
||||
|
@ -228,10 +227,6 @@ int misc_register(struct miscdevice * misc)
|
|||
|
||||
if (misc->minor < DYNAMIC_MINORS)
|
||||
misc_minors[misc->minor >> 3] |= 1 << (misc->minor & 7);
|
||||
if (misc->devfs_name[0] == '\0') {
|
||||
snprintf(misc->devfs_name, sizeof(misc->devfs_name),
|
||||
"misc/%s", misc->name);
|
||||
}
|
||||
dev = MKDEV(MISC_MAJOR, misc->minor);
|
||||
|
||||
misc->class = class_device_create(misc_class, NULL, dev, misc->dev,
|
||||
|
@ -241,13 +236,6 @@ int misc_register(struct miscdevice * misc)
|
|||
goto out;
|
||||
}
|
||||
|
||||
err = devfs_mk_cdev(dev, S_IFCHR|S_IRUSR|S_IWUSR|S_IRGRP,
|
||||
misc->devfs_name);
|
||||
if (err) {
|
||||
class_device_destroy(misc_class, dev);
|
||||
goto out;
|
||||
}
|
||||
|
||||
/*
|
||||
* Add it to the front, so that later devices can "override"
|
||||
* earlier defaults
|
||||
|
@ -278,7 +266,6 @@ int misc_deregister(struct miscdevice * misc)
|
|||
down(&misc_sem);
|
||||
list_del(&misc->list);
|
||||
class_device_destroy(misc_class, MKDEV(MISC_MAJOR, misc->minor));
|
||||
devfs_remove(misc->devfs_name);
|
||||
if (i < DYNAMIC_MINORS && i>0) {
|
||||
misc_minors[i>>3] &= ~(1 << (misc->minor & 7));
|
||||
}
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/mmtimer.h>
|
||||
#include <linux/miscdevice.h>
|
||||
#include <linux/posix-timers.h>
|
||||
|
@ -694,7 +693,6 @@ static int __init mmtimer_init(void)
|
|||
return -1;
|
||||
}
|
||||
|
||||
strcpy(mmtimer_miscdev.devfs_name, MMTIMER_NAME);
|
||||
if (misc_register(&mmtimer_miscdev)) {
|
||||
printk(KERN_ERR "%s: failed to register device\n",
|
||||
MMTIMER_NAME);
|
||||
|
|
|
@ -342,7 +342,6 @@ static int __init moxa_init(void)
|
|||
init_MUTEX(&moxaBuffSem);
|
||||
moxaDriver->owner = THIS_MODULE;
|
||||
moxaDriver->name = "ttyMX";
|
||||
moxaDriver->devfs_name = "tts/a";
|
||||
moxaDriver->major = ttymajor;
|
||||
moxaDriver->minor_start = 0;
|
||||
moxaDriver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -60,7 +60,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/parport.h>
|
||||
#include <linux/ctype.h>
|
||||
|
@ -770,7 +769,7 @@ static struct parport_driver pp_driver = {
|
|||
|
||||
static int __init ppdev_init (void)
|
||||
{
|
||||
int i, err = 0;
|
||||
int err = 0;
|
||||
|
||||
if (register_chrdev (PP_MAJOR, CHRDEV, &pp_fops)) {
|
||||
printk (KERN_WARNING CHRDEV ": unable to get major %d\n",
|
||||
|
@ -782,11 +781,6 @@ static int __init ppdev_init (void)
|
|||
err = PTR_ERR(ppdev_class);
|
||||
goto out_chrdev;
|
||||
}
|
||||
devfs_mk_dir("parports");
|
||||
for (i = 0; i < PARPORT_MAX; i++) {
|
||||
devfs_mk_cdev(MKDEV(PP_MAJOR, i),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO, "parports/%d", i);
|
||||
}
|
||||
if (parport_register_driver(&pp_driver)) {
|
||||
printk (KERN_WARNING CHRDEV ": unable to register with parport\n");
|
||||
goto out_class;
|
||||
|
@ -796,9 +790,6 @@ static int __init ppdev_init (void)
|
|||
goto out;
|
||||
|
||||
out_class:
|
||||
for (i = 0; i < PARPORT_MAX; i++)
|
||||
devfs_remove("parports/%d", i);
|
||||
devfs_remove("parports");
|
||||
class_destroy(ppdev_class);
|
||||
out_chrdev:
|
||||
unregister_chrdev(PP_MAJOR, CHRDEV);
|
||||
|
@ -808,12 +799,8 @@ out:
|
|||
|
||||
static void __exit ppdev_cleanup (void)
|
||||
{
|
||||
int i;
|
||||
/* Clean up all parport stuff */
|
||||
for (i = 0; i < PARPORT_MAX; i++)
|
||||
devfs_remove("parports/%d", i);
|
||||
parport_unregister_driver(&pp_driver);
|
||||
devfs_remove("parports");
|
||||
class_destroy(ppdev_class);
|
||||
unregister_chrdev (PP_MAJOR, CHRDEV);
|
||||
}
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
#include <linux/major.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/sysctl.h>
|
||||
|
||||
#include <asm/uaccess.h>
|
||||
|
@ -265,7 +264,6 @@ static void __init legacy_pty_init(void)
|
|||
pty_driver->owner = THIS_MODULE;
|
||||
pty_driver->driver_name = "pty_master";
|
||||
pty_driver->name = "pty";
|
||||
pty_driver->devfs_name = "pty/m";
|
||||
pty_driver->major = PTY_MASTER_MAJOR;
|
||||
pty_driver->minor_start = 0;
|
||||
pty_driver->type = TTY_DRIVER_TYPE_PTY;
|
||||
|
@ -283,7 +281,6 @@ static void __init legacy_pty_init(void)
|
|||
pty_slave_driver->owner = THIS_MODULE;
|
||||
pty_slave_driver->driver_name = "pty_slave";
|
||||
pty_slave_driver->name = "ttyp";
|
||||
pty_slave_driver->devfs_name = "pty/s";
|
||||
pty_slave_driver->major = PTY_SLAVE_MAJOR;
|
||||
pty_slave_driver->minor_start = 0;
|
||||
pty_slave_driver->type = TTY_DRIVER_TYPE_PTY;
|
||||
|
@ -351,7 +348,6 @@ static int pty_unix98_ioctl(struct tty_struct *tty, struct file *file,
|
|||
|
||||
static void __init unix98_pty_init(void)
|
||||
{
|
||||
devfs_mk_dir("pts");
|
||||
ptm_driver = alloc_tty_driver(NR_UNIX98_PTY_MAX);
|
||||
if (!ptm_driver)
|
||||
panic("Couldn't allocate Unix98 ptm driver");
|
||||
|
@ -372,7 +368,7 @@ static void __init unix98_pty_init(void)
|
|||
ptm_driver->init_termios.c_cflag = B38400 | CS8 | CREAD;
|
||||
ptm_driver->init_termios.c_lflag = 0;
|
||||
ptm_driver->flags = TTY_DRIVER_RESET_TERMIOS | TTY_DRIVER_REAL_RAW |
|
||||
TTY_DRIVER_NO_DEVFS | TTY_DRIVER_DEVPTS_MEM;
|
||||
TTY_DRIVER_DYNAMIC_DEV | TTY_DRIVER_DEVPTS_MEM;
|
||||
ptm_driver->other = pts_driver;
|
||||
tty_set_operations(ptm_driver, &pty_ops);
|
||||
ptm_driver->ioctl = pty_unix98_ioctl;
|
||||
|
@ -387,7 +383,7 @@ static void __init unix98_pty_init(void)
|
|||
pts_driver->init_termios = tty_std_termios;
|
||||
pts_driver->init_termios.c_cflag = B38400 | CS8 | CREAD;
|
||||
pts_driver->flags = TTY_DRIVER_RESET_TERMIOS | TTY_DRIVER_REAL_RAW |
|
||||
TTY_DRIVER_NO_DEVFS | TTY_DRIVER_DEVPTS_MEM;
|
||||
TTY_DRIVER_DYNAMIC_DEV | TTY_DRIVER_DEVPTS_MEM;
|
||||
pts_driver->other = ptm_driver;
|
||||
tty_set_operations(pts_driver, &pty_ops);
|
||||
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
|
||||
#include <linux/init.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/module.h>
|
||||
|
@ -288,7 +287,6 @@ static struct cdev raw_cdev = {
|
|||
|
||||
static int __init raw_init(void)
|
||||
{
|
||||
int i;
|
||||
dev_t dev = MKDEV(RAW_MAJOR, 0);
|
||||
|
||||
if (register_chrdev_region(dev, MAX_RAW_MINORS, "raw"))
|
||||
|
@ -310,13 +308,6 @@ static int __init raw_init(void)
|
|||
}
|
||||
class_device_create(raw_class, NULL, MKDEV(RAW_MAJOR, 0), NULL, "rawctl");
|
||||
|
||||
devfs_mk_cdev(MKDEV(RAW_MAJOR, 0),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"raw/rawctl");
|
||||
for (i = 1; i < MAX_RAW_MINORS; i++)
|
||||
devfs_mk_cdev(MKDEV(RAW_MAJOR, i),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"raw/raw%d", i);
|
||||
return 0;
|
||||
|
||||
error:
|
||||
|
@ -326,12 +317,6 @@ error:
|
|||
|
||||
static void __exit raw_exit(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 1; i < MAX_RAW_MINORS; i++)
|
||||
devfs_remove("raw/raw%d", i);
|
||||
devfs_remove("raw/rawctl");
|
||||
devfs_remove("raw");
|
||||
class_device_destroy(raw_class, MKDEV(RAW_MAJOR, 0));
|
||||
class_destroy(raw_class);
|
||||
cdev_del(&raw_cdev);
|
||||
|
|
|
@ -1634,7 +1634,6 @@ static inline int rc_init_drivers(void)
|
|||
memset(IRQ_to_board, 0, sizeof(IRQ_to_board));
|
||||
riscom_driver->owner = THIS_MODULE;
|
||||
riscom_driver->name = "ttyL";
|
||||
riscom_driver->devfs_name = "tts/L";
|
||||
riscom_driver->major = RISCOM8_NORMAL_MAJOR;
|
||||
riscom_driver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
riscom_driver->subtype = SERIAL_TYPE_NORMAL;
|
||||
|
|
|
@ -2426,8 +2426,7 @@ static int __init rp_init(void)
|
|||
*/
|
||||
|
||||
rocket_driver->owner = THIS_MODULE;
|
||||
rocket_driver->flags = TTY_DRIVER_NO_DEVFS;
|
||||
rocket_driver->devfs_name = "tts/R";
|
||||
rocket_driver->flags = TTY_DRIVER_DYNAMIC_DEV;
|
||||
rocket_driver->name = "ttyR";
|
||||
rocket_driver->driver_name = "Comtrol RocketPort";
|
||||
rocket_driver->major = TTY_ROCKET_MAJOR;
|
||||
|
@ -2438,7 +2437,7 @@ static int __init rp_init(void)
|
|||
rocket_driver->init_termios.c_cflag =
|
||||
B9600 | CS8 | CREAD | HUPCL | CLOCAL;
|
||||
#ifdef ROCKET_SOFT_FLOW
|
||||
rocket_driver->flags |= TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS;
|
||||
rocket_driver->flags |= TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
#endif
|
||||
tty_set_operations(rocket_driver, &rocket_ops);
|
||||
|
||||
|
|
|
@ -2235,7 +2235,6 @@ scrn[1] = '\0';
|
|||
/* Initialize the tty_driver structure */
|
||||
|
||||
cy_serial_driver->owner = THIS_MODULE;
|
||||
cy_serial_driver->devfs_name = "tts/";
|
||||
cy_serial_driver->name = "ttyS";
|
||||
cy_serial_driver->major = TTY_MAJOR;
|
||||
cy_serial_driver->minor_start = 64;
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#include <linux/ioport.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/delay.h>
|
||||
|
||||
|
@ -757,11 +756,8 @@ static void __exit stallion_module_exit(void)
|
|||
"errno=%d\n", -i);
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < 4; i++) {
|
||||
devfs_remove("staliomem/%d", i);
|
||||
for (i = 0; i < 4; i++)
|
||||
class_device_destroy(stallion_class, MKDEV(STL_SIOMEMMAJOR, i));
|
||||
}
|
||||
devfs_remove("staliomem");
|
||||
if ((i = unregister_chrdev(STL_SIOMEMMAJOR, "staliomem")))
|
||||
printk("STALLION: failed to un-register serial memory device, "
|
||||
"errno=%d\n", -i);
|
||||
|
@ -3044,22 +3040,16 @@ static int __init stl_init(void)
|
|||
*/
|
||||
if (register_chrdev(STL_SIOMEMMAJOR, "staliomem", &stl_fsiomem))
|
||||
printk("STALLION: failed to register serial board device\n");
|
||||
devfs_mk_dir("staliomem");
|
||||
|
||||
stallion_class = class_create(THIS_MODULE, "staliomem");
|
||||
for (i = 0; i < 4; i++) {
|
||||
devfs_mk_cdev(MKDEV(STL_SIOMEMMAJOR, i),
|
||||
S_IFCHR|S_IRUSR|S_IWUSR,
|
||||
"staliomem/%d", i);
|
||||
for (i = 0; i < 4; i++)
|
||||
class_device_create(stallion_class, NULL,
|
||||
MKDEV(STL_SIOMEMMAJOR, i), NULL,
|
||||
"staliomem%d", i);
|
||||
}
|
||||
|
||||
stl_serial->owner = THIS_MODULE;
|
||||
stl_serial->driver_name = stl_drvname;
|
||||
stl_serial->name = "ttyE";
|
||||
stl_serial->devfs_name = "tts/E";
|
||||
stl_serial->major = STL_SERIALMAJOR;
|
||||
stl_serial->minor_start = 0;
|
||||
stl_serial->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -56,7 +56,6 @@
|
|||
#include <linux/ioport.h>
|
||||
#include <asm/io.h>
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/devfs_fs_kernel.h> /* DevFs support */
|
||||
#include <linux/parport.h> /* Our code depend on parport */
|
||||
#include <linux/device.h>
|
||||
|
||||
|
@ -443,12 +442,6 @@ tipar_register(int nr, struct parport *port)
|
|||
|
||||
class_device_create(tipar_class, NULL, MKDEV(TIPAR_MAJOR,
|
||||
TIPAR_MINOR + nr), NULL, "par%d", nr);
|
||||
/* Use devfs, tree: /dev/ticables/par/[0..2] */
|
||||
err = devfs_mk_cdev(MKDEV(TIPAR_MAJOR, TIPAR_MINOR + nr),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"ticables/par/%d", nr);
|
||||
if (err)
|
||||
goto out_class;
|
||||
|
||||
/* Display informations */
|
||||
pr_info("tipar%d: using %s (%s)\n", nr, port->name, (port->irq ==
|
||||
|
@ -460,11 +453,7 @@ tipar_register(int nr, struct parport *port)
|
|||
pr_info("tipar%d: link cable not found\n", nr);
|
||||
|
||||
err = 0;
|
||||
goto out;
|
||||
|
||||
out_class:
|
||||
class_device_destroy(tipar_class, MKDEV(TIPAR_MAJOR, TIPAR_MINOR + nr));
|
||||
class_destroy(tipar_class);
|
||||
out:
|
||||
return err;
|
||||
}
|
||||
|
@ -507,9 +496,6 @@ tipar_init_module(void)
|
|||
goto out;
|
||||
}
|
||||
|
||||
/* Use devfs with tree: /dev/ticables/par/[0..2] */
|
||||
devfs_mk_dir("ticables/par");
|
||||
|
||||
tipar_class = class_create(THIS_MODULE, "ticables");
|
||||
if (IS_ERR(tipar_class)) {
|
||||
err = PTR_ERR(tipar_class);
|
||||
|
@ -528,7 +514,6 @@ out_class:
|
|||
class_destroy(tipar_class);
|
||||
|
||||
out_chrdev:
|
||||
devfs_remove("ticables/par");
|
||||
unregister_chrdev(TIPAR_MAJOR, "tipar");
|
||||
out:
|
||||
return err;
|
||||
|
@ -549,10 +534,8 @@ tipar_cleanup_module(void)
|
|||
continue;
|
||||
parport_unregister_device(table[i].dev);
|
||||
class_device_destroy(tipar_class, MKDEV(TIPAR_MAJOR, i));
|
||||
devfs_remove("ticables/par/%d", i);
|
||||
}
|
||||
class_destroy(tipar_class);
|
||||
devfs_remove("ticables/par");
|
||||
|
||||
pr_info("tipar: module unloaded\n");
|
||||
}
|
||||
|
|
|
@ -102,7 +102,6 @@
|
|||
#include <linux/kbd_kern.h>
|
||||
#include <linux/vt_kern.h>
|
||||
#include <linux/selection.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
|
||||
#include <linux/kmod.h>
|
||||
|
||||
|
@ -2955,8 +2954,8 @@ static struct class *tty_class;
|
|||
* Returns a pointer to the class device (or ERR_PTR(-EFOO) on error).
|
||||
*
|
||||
* This call is required to be made to register an individual tty device if
|
||||
* the tty driver's flags have the TTY_DRIVER_NO_DEVFS bit set. If that
|
||||
* bit is not set, this function should not be called.
|
||||
* the tty driver's flags have the TTY_DRIVER_DYNAMIC_DEV bit set. If that
|
||||
* bit is not set, this function should not be called by a tty driver.
|
||||
*/
|
||||
struct class_device *tty_register_device(struct tty_driver *driver,
|
||||
unsigned index, struct device *device)
|
||||
|
@ -2970,9 +2969,6 @@ struct class_device *tty_register_device(struct tty_driver *driver,
|
|||
return ERR_PTR(-EINVAL);
|
||||
}
|
||||
|
||||
devfs_mk_cdev(dev, S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"%s%d", driver->devfs_name, index + driver->name_base);
|
||||
|
||||
if (driver->type == TTY_DRIVER_TYPE_PTY)
|
||||
pty_line_name(driver, index, name);
|
||||
else
|
||||
|
@ -2991,7 +2987,6 @@ struct class_device *tty_register_device(struct tty_driver *driver,
|
|||
*/
|
||||
void tty_unregister_device(struct tty_driver *driver, unsigned index)
|
||||
{
|
||||
devfs_remove("%s%d", driver->devfs_name, index + driver->name_base);
|
||||
class_device_destroy(tty_class, MKDEV(driver->major, driver->minor_start) + index);
|
||||
}
|
||||
|
||||
|
@ -3113,7 +3108,7 @@ int tty_register_driver(struct tty_driver *driver)
|
|||
|
||||
list_add(&driver->tty_drivers, &tty_drivers);
|
||||
|
||||
if ( !(driver->flags & TTY_DRIVER_NO_DEVFS) ) {
|
||||
if ( !(driver->flags & TTY_DRIVER_DYNAMIC_DEV) ) {
|
||||
for(i = 0; i < driver->num; i++)
|
||||
tty_register_device(driver, i, NULL);
|
||||
}
|
||||
|
@ -3156,7 +3151,7 @@ int tty_unregister_driver(struct tty_driver *driver)
|
|||
driver->termios_locked[i] = NULL;
|
||||
kfree(tp);
|
||||
}
|
||||
if (!(driver->flags & TTY_DRIVER_NO_DEVFS))
|
||||
if (!(driver->flags & TTY_DRIVER_DYNAMIC_DEV))
|
||||
tty_unregister_device(driver, i);
|
||||
}
|
||||
p = driver->ttys;
|
||||
|
@ -3232,14 +3227,12 @@ static int __init tty_init(void)
|
|||
if (cdev_add(&tty_cdev, MKDEV(TTYAUX_MAJOR, 0), 1) ||
|
||||
register_chrdev_region(MKDEV(TTYAUX_MAJOR, 0), 1, "/dev/tty") < 0)
|
||||
panic("Couldn't register /dev/tty driver\n");
|
||||
devfs_mk_cdev(MKDEV(TTYAUX_MAJOR, 0), S_IFCHR|S_IRUGO|S_IWUGO, "tty");
|
||||
class_device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 0), NULL, "tty");
|
||||
|
||||
cdev_init(&console_cdev, &console_fops);
|
||||
if (cdev_add(&console_cdev, MKDEV(TTYAUX_MAJOR, 1), 1) ||
|
||||
register_chrdev_region(MKDEV(TTYAUX_MAJOR, 1), 1, "/dev/console") < 0)
|
||||
panic("Couldn't register /dev/console driver\n");
|
||||
devfs_mk_cdev(MKDEV(TTYAUX_MAJOR, 1), S_IFCHR|S_IRUSR|S_IWUSR, "console");
|
||||
class_device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 1), NULL, "console");
|
||||
|
||||
#ifdef CONFIG_UNIX98_PTYS
|
||||
|
@ -3247,7 +3240,6 @@ static int __init tty_init(void)
|
|||
if (cdev_add(&ptmx_cdev, MKDEV(TTYAUX_MAJOR, 2), 1) ||
|
||||
register_chrdev_region(MKDEV(TTYAUX_MAJOR, 2), 1, "/dev/ptmx") < 0)
|
||||
panic("Couldn't register /dev/ptmx driver\n");
|
||||
devfs_mk_cdev(MKDEV(TTYAUX_MAJOR, 2), S_IFCHR|S_IRUGO|S_IWUGO, "ptmx");
|
||||
class_device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 2), NULL, "ptmx");
|
||||
#endif
|
||||
|
||||
|
@ -3256,7 +3248,6 @@ static int __init tty_init(void)
|
|||
if (cdev_add(&vc0_cdev, MKDEV(TTY_MAJOR, 0), 1) ||
|
||||
register_chrdev_region(MKDEV(TTY_MAJOR, 0), 1, "/dev/vc/0") < 0)
|
||||
panic("Couldn't register /dev/tty0 driver\n");
|
||||
devfs_mk_cdev(MKDEV(TTY_MAJOR, 0), S_IFCHR|S_IRUSR|S_IWUSR, "vc/0");
|
||||
class_device_create(tty_class, NULL, MKDEV(TTY_MAJOR, 0), NULL, "tty0");
|
||||
|
||||
vty_init();
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
#include <linux/major.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/tty.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/mm.h>
|
||||
|
@ -478,12 +477,6 @@ static struct class *vc_class;
|
|||
|
||||
void vcs_make_devfs(struct tty_struct *tty)
|
||||
{
|
||||
devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 1),
|
||||
S_IFCHR|S_IRUSR|S_IWUSR,
|
||||
"vcc/%u", tty->index + 1);
|
||||
devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 129),
|
||||
S_IFCHR|S_IRUSR|S_IWUSR,
|
||||
"vcc/a%u", tty->index + 1);
|
||||
class_device_create(vc_class, NULL, MKDEV(VCS_MAJOR, tty->index + 1),
|
||||
NULL, "vcs%u", tty->index + 1);
|
||||
class_device_create(vc_class, NULL, MKDEV(VCS_MAJOR, tty->index + 129),
|
||||
|
@ -491,8 +484,6 @@ void vcs_make_devfs(struct tty_struct *tty)
|
|||
}
|
||||
void vcs_remove_devfs(struct tty_struct *tty)
|
||||
{
|
||||
devfs_remove("vcc/%u", tty->index + 1);
|
||||
devfs_remove("vcc/a%u", tty->index + 1);
|
||||
class_device_destroy(vc_class, MKDEV(VCS_MAJOR, tty->index + 1));
|
||||
class_device_destroy(vc_class, MKDEV(VCS_MAJOR, tty->index + 129));
|
||||
}
|
||||
|
@ -503,8 +494,6 @@ int __init vcs_init(void)
|
|||
panic("unable to get major %d for vcs device", VCS_MAJOR);
|
||||
vc_class = class_create(THIS_MODULE, "vc");
|
||||
|
||||
devfs_mk_cdev(MKDEV(VCS_MAJOR, 0), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/0");
|
||||
devfs_mk_cdev(MKDEV(VCS_MAJOR, 128), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/a0");
|
||||
class_device_create(vc_class, NULL, MKDEV(VCS_MAJOR, 0), NULL, "vcs");
|
||||
class_device_create(vc_class, NULL, MKDEV(VCS_MAJOR, 128), NULL, "vcsa");
|
||||
return 0;
|
||||
|
|
|
@ -1152,7 +1152,6 @@ static int __init viocons_init2(void)
|
|||
viotty_driver = alloc_tty_driver(VTTY_PORTS);
|
||||
viotty_driver->owner = THIS_MODULE;
|
||||
viotty_driver->driver_name = "vioconsole";
|
||||
viotty_driver->devfs_name = "vcs/";
|
||||
viotty_driver->name = "tty";
|
||||
viotty_driver->name_base = 1;
|
||||
viotty_driver->major = TTY_MAJOR;
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include <linux/dma-mapping.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/cdev.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/completion.h>
|
||||
#include <linux/proc_fs.h>
|
||||
|
@ -246,7 +245,6 @@ static struct device *tape_device[VIOTAPE_MAX_TAPE];
|
|||
*/
|
||||
static struct {
|
||||
unsigned char cur_part;
|
||||
int dev_handle;
|
||||
unsigned char part_stat_rwi[MAX_PARTITIONS];
|
||||
} state[VIOTAPE_MAX_TAPE];
|
||||
|
||||
|
@ -959,12 +957,7 @@ static int viotape_probe(struct vio_dev *vdev, const struct vio_device_id *id)
|
|||
"iseries!vt%d", i);
|
||||
class_device_create(tape_class, NULL, MKDEV(VIOTAPE_MAJOR, i | 0x80),
|
||||
NULL, "iseries!nvt%d", i);
|
||||
devfs_mk_cdev(MKDEV(VIOTAPE_MAJOR, i), S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"iseries/vt%d", i);
|
||||
devfs_mk_cdev(MKDEV(VIOTAPE_MAJOR, i | 0x80),
|
||||
S_IFCHR | S_IRUSR | S_IWUSR, "iseries/nvt%d", i);
|
||||
sprintf(tapename, "iseries/vt%d", i);
|
||||
state[i].dev_handle = devfs_register_tape(tapename);
|
||||
printk(VIOTAPE_KERN_INFO "tape %s is iSeries "
|
||||
"resource %10.10s type %4.4s, model %3.3s\n",
|
||||
tapename, viotape_unitinfo[i].rsrcname,
|
||||
|
@ -976,9 +969,6 @@ static int viotape_remove(struct vio_dev *vdev)
|
|||
{
|
||||
int i = vdev->unit_address;
|
||||
|
||||
devfs_remove("iseries/nvt%d", i);
|
||||
devfs_remove("iseries/vt%d", i);
|
||||
devfs_unregister_tape(state[i].dev_handle);
|
||||
class_device_destroy(tape_class, MKDEV(VIOTAPE_MAJOR, i | 0x80));
|
||||
class_device_destroy(tape_class, MKDEV(VIOTAPE_MAJOR, i));
|
||||
return 0;
|
||||
|
|
|
@ -147,7 +147,6 @@ static int scc_init_drivers(void)
|
|||
scc_driver->owner = THIS_MODULE;
|
||||
scc_driver->driver_name = "scc";
|
||||
scc_driver->name = "ttyS";
|
||||
scc_driver->devfs_name = "tts/";
|
||||
scc_driver->major = TTY_MAJOR;
|
||||
scc_driver->minor_start = SCC_MINOR_BASE;
|
||||
scc_driver->type = TTY_DRIVER_TYPE_SERIAL;
|
||||
|
|
|
@ -79,7 +79,6 @@
|
|||
#include <linux/mm.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/vt_kern.h>
|
||||
#include <linux/selection.h>
|
||||
#include <linux/tiocl.h>
|
||||
|
@ -2663,7 +2662,6 @@ int __init vty_init(void)
|
|||
if (!console_driver)
|
||||
panic("Couldn't allocate console driver\n");
|
||||
console_driver->owner = THIS_MODULE;
|
||||
console_driver->devfs_name = "vc/";
|
||||
console_driver->name = "tty";
|
||||
console_driver->name_base = 1;
|
||||
console_driver->major = TTY_MAJOR;
|
||||
|
|
|
@ -3527,8 +3527,6 @@ static int ide_cd_probe(ide_drive_t *drive)
|
|||
drive->driver_data = info;
|
||||
|
||||
g->minors = 1;
|
||||
snprintf(g->devfs_name, sizeof(g->devfs_name),
|
||||
"%s/cd", drive->devfs_name);
|
||||
g->driverfs_dev = &drive->gendev;
|
||||
g->flags = GENHD_FL_CD | GENHD_FL_REMOVABLE;
|
||||
if (ide_cdrom_setup(drive)) {
|
||||
|
|
|
@ -1018,7 +1018,6 @@ static void ide_disk_release(struct kref *kref)
|
|||
struct gendisk *g = idkp->disk;
|
||||
|
||||
drive->driver_data = NULL;
|
||||
drive->devfs_name[0] = '\0';
|
||||
g->private_data = NULL;
|
||||
put_disk(g);
|
||||
kfree(idkp);
|
||||
|
@ -1222,7 +1221,6 @@ static int ide_disk_probe(ide_drive_t *drive)
|
|||
drive->attach = 1;
|
||||
|
||||
g->minors = 1 << PARTN_BITS;
|
||||
strcpy(g->devfs_name, drive->devfs_name);
|
||||
g->driverfs_dev = &drive->gendev;
|
||||
g->flags = drive->removable ? GENHD_FL_REMOVABLE : 0;
|
||||
set_capacity(g, idedisk_capacity(drive));
|
||||
|
|
|
@ -2176,7 +2176,6 @@ static int ide_floppy_probe(ide_drive_t *drive)
|
|||
|
||||
g->minors = 1 << PARTN_BITS;
|
||||
g->driverfs_dev = &drive->gendev;
|
||||
strcpy(g->devfs_name, drive->devfs_name);
|
||||
g->flags = drive->removable ? GENHD_FL_REMOVABLE : 0;
|
||||
g->fops = &idefloppy_ops;
|
||||
drive->attach = 1;
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
#include <linux/slab.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/kmod.h>
|
||||
#include <linux/pci.h>
|
||||
|
@ -1279,10 +1278,6 @@ static void drive_release_dev (struct device *dev)
|
|||
ide_drive_t *drive = container_of(dev, ide_drive_t, gendev);
|
||||
|
||||
spin_lock_irq(&ide_lock);
|
||||
if (drive->devfs_name[0] != '\0') {
|
||||
devfs_remove(drive->devfs_name);
|
||||
drive->devfs_name[0] = '\0';
|
||||
}
|
||||
ide_remove_drive_from_hwgroup(drive);
|
||||
kfree(drive->id);
|
||||
drive->id = NULL;
|
||||
|
@ -1316,12 +1311,6 @@ static void init_gendisk (ide_hwif_t *hwif)
|
|||
drive->gendev.bus = &ide_bus_type;
|
||||
drive->gendev.driver_data = drive;
|
||||
drive->gendev.release = drive_release_dev;
|
||||
if (drive->present) {
|
||||
sprintf(drive->devfs_name, "ide/host%d/bus%d/target%d/lun%d",
|
||||
(hwif->channel && hwif->mate) ?
|
||||
hwif->mate->index : hwif->index,
|
||||
hwif->channel, unit, drive->lun);
|
||||
}
|
||||
}
|
||||
blk_register_region(MKDEV(hwif->major, 0), MAX_DRIVES << PARTN_BITS,
|
||||
THIS_MODULE, ata_probe, ata_lock, hwif);
|
||||
|
|
|
@ -435,7 +435,6 @@
|
|||
#include <linux/interrupt.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/genhd.h>
|
||||
#include <linux/slab.h>
|
||||
|
@ -4726,9 +4725,6 @@ static void ide_tape_release(struct kref *kref)
|
|||
MKDEV(IDETAPE_MAJOR, tape->minor));
|
||||
class_device_destroy(idetape_sysfs_class,
|
||||
MKDEV(IDETAPE_MAJOR, tape->minor + 128));
|
||||
devfs_remove("%s/mt", drive->devfs_name);
|
||||
devfs_remove("%s/mtn", drive->devfs_name);
|
||||
devfs_unregister_tape(g->number);
|
||||
idetape_devs[tape->minor] = NULL;
|
||||
g->private_data = NULL;
|
||||
put_disk(g);
|
||||
|
@ -4902,14 +4898,6 @@ static int ide_tape_probe(ide_drive_t *drive)
|
|||
class_device_create(idetape_sysfs_class, NULL,
|
||||
MKDEV(IDETAPE_MAJOR, minor + 128), &drive->gendev, "n%s", tape->name);
|
||||
|
||||
devfs_mk_cdev(MKDEV(HWIF(drive)->major, minor),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"%s/mt", drive->devfs_name);
|
||||
devfs_mk_cdev(MKDEV(HWIF(drive)->major, minor + 128),
|
||||
S_IFCHR | S_IRUGO | S_IWUGO,
|
||||
"%s/mtn", drive->devfs_name);
|
||||
|
||||
g->number = devfs_register_tape(drive->devfs_name);
|
||||
g->fops = &idetape_block_ops;
|
||||
ide_register_region(g);
|
||||
|
||||
|
|
|
@ -147,7 +147,6 @@
|
|||
#include <linux/pci.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/completion.h>
|
||||
#include <linux/reboot.h>
|
||||
#include <linux/cdrom.h>
|
||||
|
@ -592,13 +591,8 @@ void ide_unregister(unsigned int index)
|
|||
goto abort;
|
||||
for (unit = 0; unit < MAX_DRIVES; ++unit) {
|
||||
drive = &hwif->drives[unit];
|
||||
if (!drive->present) {
|
||||
if (drive->devfs_name[0] != '\0') {
|
||||
devfs_remove(drive->devfs_name);
|
||||
drive->devfs_name[0] = '\0';
|
||||
}
|
||||
if (!drive->present)
|
||||
continue;
|
||||
}
|
||||
spin_unlock_irq(&ide_lock);
|
||||
device_unregister(&drive->gendev);
|
||||
wait_for_completion(&drive->gendev_rel_comp);
|
||||
|
@ -1996,7 +1990,6 @@ EXPORT_SYMBOL_GPL(ide_bus_type);
|
|||
static int __init ide_init(void)
|
||||
{
|
||||
printk(KERN_INFO "Uniform Multi-Platform E-IDE driver " REVISION "\n");
|
||||
devfs_mk_dir("ide");
|
||||
system_bus_speed = ide_system_bus_speed();
|
||||
|
||||
bus_register(&ide_bus_type);
|
||||
|
@ -2074,7 +2067,6 @@ void cleanup_module (void)
|
|||
#ifdef CONFIG_PROC_FS
|
||||
proc_ide_destroy();
|
||||
#endif
|
||||
devfs_remove("ide");
|
||||
|
||||
bus_unregister(&ide_bus_type);
|
||||
}
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/miscdevice.h>
|
||||
#include <linux/wait.h>
|
||||
#include <linux/mutex.h>
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/moduleparam.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/isdn/capiutil.h>
|
||||
#include <linux/isdn/capicmd.h>
|
||||
#if defined(CONFIG_ISDN_CAPI_CAPIFS) || defined(CONFIG_ISDN_CAPI_CAPIFS_MODULE)
|
||||
|
@ -1337,7 +1336,6 @@ static int capinc_tty_init(void)
|
|||
|
||||
drv->owner = THIS_MODULE;
|
||||
drv->driver_name = "capi_nc";
|
||||
drv->devfs_name = "capi/";
|
||||
drv->name = "capi";
|
||||
drv->major = capi_ttymajor;
|
||||
drv->minor_start = 0;
|
||||
|
@ -1516,8 +1514,6 @@ static int __init capi_init(void)
|
|||
}
|
||||
|
||||
class_device_create(capi_class, NULL, MKDEV(capi_major, 0), NULL, "capi");
|
||||
devfs_mk_cdev(MKDEV(capi_major, 0), S_IFCHR | S_IRUSR | S_IWUSR,
|
||||
"isdn/capi20");
|
||||
|
||||
#ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
|
||||
if (capinc_tty_init() < 0) {
|
||||
|
@ -1552,7 +1548,6 @@ static void __exit capi_exit(void)
|
|||
class_device_destroy(capi_class, MKDEV(capi_major, 0));
|
||||
class_destroy(capi_class);
|
||||
unregister_chrdev(capi_major, "capi20");
|
||||
devfs_remove("isdn/capi20");
|
||||
|
||||
#ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
|
||||
capinc_tty_exit();
|
||||
|
|
|
@ -41,7 +41,6 @@ MODULE_PARM_DESC(cidmode, "Call-ID mode");
|
|||
#define GIGASET_MINORS 1
|
||||
#define GIGASET_MINOR 16
|
||||
#define GIGASET_MODULENAME "bas_gigaset"
|
||||
#define GIGASET_DEVFSNAME "gig/bas/"
|
||||
#define GIGASET_DEVNAME "ttyGB"
|
||||
|
||||
/* length limit according to Siemens 3070usb-protokoll.doc ch. 2.1 */
|
||||
|
@ -2349,8 +2348,7 @@ static int __init bas_gigaset_init(void)
|
|||
/* allocate memory for our driver state and intialize it */
|
||||
if ((driver = gigaset_initdriver(GIGASET_MINOR, GIGASET_MINORS,
|
||||
GIGASET_MODULENAME, GIGASET_DEVNAME,
|
||||
GIGASET_DEVFSNAME, &gigops,
|
||||
THIS_MODULE)) == NULL)
|
||||
&gigops, THIS_MODULE)) == NULL)
|
||||
goto error;
|
||||
|
||||
/* allocate memory for our device state and intialize it */
|
||||
|
|
|
@ -1092,14 +1092,12 @@ EXPORT_SYMBOL_GPL(gigaset_freedriver);
|
|||
* minors Number of minors this driver can handle
|
||||
* procname Name of the driver
|
||||
* devname Name of the device files (prefix without minor number)
|
||||
* devfsname Devfs name of the device files without %d
|
||||
* return value:
|
||||
* Pointer to the gigaset_driver structure on success, NULL on failure.
|
||||
*/
|
||||
struct gigaset_driver *gigaset_initdriver(unsigned minor, unsigned minors,
|
||||
const char *procname,
|
||||
const char *devname,
|
||||
const char *devfsname,
|
||||
const struct gigaset_ops *ops,
|
||||
struct module *owner)
|
||||
{
|
||||
|
@ -1139,7 +1137,7 @@ struct gigaset_driver *gigaset_initdriver(unsigned minor, unsigned minors,
|
|||
drv->cs[i].minor_index = i;
|
||||
}
|
||||
|
||||
gigaset_if_initdriver(drv, procname, devname, devfsname);
|
||||
gigaset_if_initdriver(drv, procname, devname);
|
||||
|
||||
spin_lock_irqsave(&driver_lock, flags);
|
||||
list_add(&drv->list, &drivers);
|
||||
|
|
|
@ -769,7 +769,6 @@ void gigaset_block_channels(struct cardstate *cs);
|
|||
struct gigaset_driver *gigaset_initdriver(unsigned minor, unsigned minors,
|
||||
const char *procname,
|
||||
const char *devname,
|
||||
const char *devfsname,
|
||||
const struct gigaset_ops *ops,
|
||||
struct module *owner);
|
||||
|
||||
|
@ -892,7 +891,7 @@ int gigaset_fill_inbuf(struct inbuf_t *inbuf, const unsigned char *src,
|
|||
|
||||
/* initialize interface */
|
||||
void gigaset_if_initdriver(struct gigaset_driver *drv, const char *procname,
|
||||
const char *devname, const char *devfsname);
|
||||
const char *devname);
|
||||
/* release interface */
|
||||
void gigaset_if_freedriver(struct gigaset_driver *drv);
|
||||
/* add minor */
|
||||
|
|
|
@ -673,10 +673,9 @@ EXPORT_SYMBOL_GPL(gigaset_if_receive);
|
|||
* drv Driver
|
||||
* procname Name of the driver (e.g. for /proc/tty/drivers)
|
||||
* devname Name of the device files (prefix without minor number)
|
||||
* devfsname Devfs name of the device files without %d
|
||||
*/
|
||||
void gigaset_if_initdriver(struct gigaset_driver *drv, const char *procname,
|
||||
const char *devname, const char *devfsname)
|
||||
const char *devname)
|
||||
{
|
||||
unsigned minors = drv->minors;
|
||||
int ret;
|
||||
|
@ -692,7 +691,7 @@ void gigaset_if_initdriver(struct gigaset_driver *drv, const char *procname,
|
|||
tty->major = GIG_MAJOR,
|
||||
tty->type = TTY_DRIVER_TYPE_SERIAL,
|
||||
tty->subtype = SERIAL_TYPE_NORMAL,
|
||||
tty->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_NO_DEVFS,
|
||||
tty->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV;
|
||||
|
||||
tty->driver_name = procname;
|
||||
tty->name = devname;
|
||||
|
@ -700,7 +699,6 @@ void gigaset_if_initdriver(struct gigaset_driver *drv, const char *procname,
|
|||
tty->num = drv->minors;
|
||||
|
||||
tty->owner = THIS_MODULE;
|
||||
tty->devfs_name = devfsname;
|
||||
|
||||
tty->init_termios = tty_std_termios; //FIXME
|
||||
tty->init_termios.c_cflag = B9600 | CS8 | CREAD | HUPCL | CLOCAL; //FIXME
|
||||
|
|
|
@ -41,7 +41,6 @@ MODULE_PARM_DESC(cidmode, "Call-ID mode");
|
|||
#define GIGASET_MINORS 1
|
||||
#define GIGASET_MINOR 8
|
||||
#define GIGASET_MODULENAME "usb_gigaset"
|
||||
#define GIGASET_DEVFSNAME "gig/usb/"
|
||||
#define GIGASET_DEVNAME "ttyGU"
|
||||
|
||||
#define IF_WRITEBUF 2000 //FIXME // WAKEUP_CHARS: 256
|
||||
|
@ -896,8 +895,7 @@ static int __init usb_gigaset_init(void)
|
|||
/* allocate memory for our driver state and intialize it */
|
||||
if ((driver = gigaset_initdriver(GIGASET_MINOR, GIGASET_MINORS,
|
||||
GIGASET_MODULENAME, GIGASET_DEVNAME,
|
||||
GIGASET_DEVFSNAME, &ops,
|
||||
THIS_MODULE)) == NULL)
|
||||
&ops, THIS_MODULE)) == NULL)
|
||||
goto error;
|
||||
|
||||
/* allocate memory for our device state and intialize it */
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
#include <linux/sched.h>
|
||||
#include <linux/smp_lock.h>
|
||||
#include <linux/poll.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
#include "platform.h"
|
||||
|
@ -178,7 +177,6 @@ static struct file_operations divas_maint_fops = {
|
|||
|
||||
static void divas_maint_unregister_chrdev(void)
|
||||
{
|
||||
devfs_remove(DEVNAME);
|
||||
unregister_chrdev(major, DEVNAME);
|
||||
}
|
||||
|
||||
|
@ -190,7 +188,6 @@ static int DIVA_INIT_FUNCTION divas_maint_register_chrdev(void)
|
|||
DRIVERLNAME);
|
||||
return (0);
|
||||
}
|
||||
devfs_mk_cdev(MKDEV(major, 0), S_IFCHR|S_IRUSR|S_IWUSR, DEVNAME);
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
#include <linux/poll.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/skbuff.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
#include "platform.h"
|
||||
|
@ -145,7 +144,6 @@ static struct file_operations divas_idi_fops = {
|
|||
|
||||
static void divas_idi_unregister_chrdev(void)
|
||||
{
|
||||
devfs_remove(DEVNAME);
|
||||
unregister_chrdev(major, DEVNAME);
|
||||
}
|
||||
|
||||
|
@ -157,7 +155,6 @@ static int DIVA_INIT_FUNCTION divas_idi_register_chrdev(void)
|
|||
DRIVERLNAME);
|
||||
return (0);
|
||||
}
|
||||
devfs_mk_cdev(MKDEV(major, 0), S_IFCHR|S_IRUSR|S_IWUSR, DEVNAME);
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/io.h>
|
||||
#include <linux/ioport.h>
|
||||
|
@ -678,7 +677,6 @@ static struct file_operations divas_fops = {
|
|||
|
||||
static void divas_unregister_chrdev(void)
|
||||
{
|
||||
devfs_remove(DEVNAME);
|
||||
unregister_chrdev(major, DEVNAME);
|
||||
}
|
||||
|
||||
|
@ -690,7 +688,6 @@ static int DIVA_INIT_FUNCTION divas_register_chrdev(void)
|
|||
DRIVERLNAME);
|
||||
return (0);
|
||||
}
|
||||
devfs_mk_cdev(MKDEV(major, 0), S_IFCHR|S_IRUSR|S_IWUSR, DEVNAME);
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue