projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[ALSA] oxygen: make line-in exclusive only on Xonar
[powerpc.git]
/
sound
/
oss
/
soundcard.c
diff --git
a/sound/oss/soundcard.c
b/sound/oss/soundcard.c
index
8fb8e7f
..
a9c23b2
100644
(file)
--- a/
sound/oss/soundcard.c
+++ b/
sound/oss/soundcard.c
@@
-32,6
+32,7
@@
#include <linux/ctype.h>
#include <linux/stddef.h>
#include <linux/kmod.h>
#include <linux/ctype.h>
#include <linux/stddef.h>
#include <linux/kmod.h>
+#include <linux/kernel.h>
#include <asm/dma.h>
#include <asm/io.h>
#include <linux/wait.h>
#include <asm/dma.h>
#include <asm/io.h>
#include <linux/wait.h>
@@
-43,6
+44,7
@@
#include <linux/smp_lock.h>
#include <linux/module.h>
#include <linux/mm.h>
#include <linux/smp_lock.h>
#include <linux/module.h>
#include <linux/mm.h>
+#include <linux/device.h>
/*
* This ought to be moved into include/asm/dma.h
/*
* This ought to be moved into include/asm/dma.h
@@
-141,7
+143,7
@@
static int get_mixer_levels(void __user * arg)
static ssize_t sound_read(struct file *file, char __user *buf, size_t count, loff_t *ppos)
{
static ssize_t sound_read(struct file *file, char __user *buf, size_t count, loff_t *ppos)
{
- int dev = iminor(file->f_dentry->d_inode);
+ int dev = iminor(file->f_
path.
dentry->d_inode);
int ret = -EINVAL;
/*
int ret = -EINVAL;
/*
@@
-174,7
+176,7
@@
static ssize_t sound_read(struct file *file, char __user *buf, size_t count, lof
static ssize_t sound_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
{
static ssize_t sound_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
{
- int dev = iminor(file->f_dentry->d_inode);
+ int dev = iminor(file->f_
path.
dentry->d_inode);
int ret = -EINVAL;
lock_kernel();
int ret = -EINVAL;
lock_kernel();
@@
-393,7
+395,7
@@
static int sound_ioctl(struct inode *inode, struct file *file,
static unsigned int sound_poll(struct file *file, poll_table * wait)
{
static unsigned int sound_poll(struct file *file, poll_table * wait)
{
- struct inode *inode = file->f_dentry->d_inode;
+ struct inode *inode = file->f_
path.
dentry->d_inode;
int dev = iminor(inode);
DEB(printk("sound_poll(dev=%d)\n", dev));
int dev = iminor(inode);
DEB(printk("sound_poll(dev=%d)\n", dev));
@@
-418,7
+420,7
@@
static int sound_mmap(struct file *file, struct vm_area_struct *vma)
int dev_class;
unsigned long size;
struct dma_buffparms *dmap = NULL;
int dev_class;
unsigned long size;
struct dma_buffparms *dmap = NULL;
- int dev = iminor(file->f_dentry->d_inode);
+ int dev = iminor(file->f_
path.
dentry->d_inode);
dev_class = dev & 0x0f;
dev >>= 4;
dev_class = dev & 0x0f;
dev >>= 4;
@@
-482,7
+484,7
@@
static int sound_mmap(struct file *file, struct vm_area_struct *vma)
return 0;
}
return 0;
}
-struct file_operations oss_sound_fops = {
+
const
struct file_operations oss_sound_fops = {
.owner = THIS_MODULE,
.llseek = no_llseek,
.read = sound_read,
.owner = THIS_MODULE,
.llseek = no_llseek,
.read = sound_read,
@@
-557,7
+559,7
@@
static int __init oss_init(void)
/* Protecting the innocent */
sound_dmap_flag = (dmabuf > 0 ? 1 : 0);
/* Protecting the innocent */
sound_dmap_flag = (dmabuf > 0 ? 1 : 0);
- for (i = 0; i <
sizeof (dev_list) / sizeof *dev_list
; i++) {
+ for (i = 0; i <
ARRAY_SIZE(dev_list)
; i++) {
device_create(sound_class, NULL,
MKDEV(SOUND_MAJOR, dev_list[i].minor),
"%s", dev_list[i].name);
device_create(sound_class, NULL,
MKDEV(SOUND_MAJOR, dev_list[i].minor),
"%s", dev_list[i].name);
@@
-581,7
+583,7
@@
static void __exit oss_cleanup(void)
{
int i, j;
{
int i, j;
- for (i = 0; i <
sizeof (dev_list) / sizeof *dev_list
; i++) {
+ for (i = 0; i <
ARRAY_SIZE(dev_list)
; i++) {
device_destroy(sound_class, MKDEV(SOUND_MAJOR, dev_list[i].minor));
if (!dev_list[i].num)
continue;
device_destroy(sound_class, MKDEV(SOUND_MAJOR, dev_list[i].minor));
if (!dev_list[i].num)
continue;