Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
8ce6edde
Commit
8ce6edde
authored
Apr 08, 2002
by
Gerd Knorr
Committed by
Linus Torvalds
Apr 08, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
adapt v4l video drivers to 2.5.8-pre1 videodev fixes.
parent
cbba4f5e
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
80 additions
and
39 deletions
+80
-39
drivers/media/video/bttv-driver.c
drivers/media/video/bttv-driver.c
+18
-8
drivers/media/video/bttv-vbi.c
drivers/media/video/bttv-vbi.c
+9
-4
drivers/media/video/bw-qcam.c
drivers/media/video/bw-qcam.c
+9
-4
drivers/media/video/c-qcam.c
drivers/media/video/c-qcam.c
+9
-4
drivers/media/video/cpia.c
drivers/media/video/cpia.c
+9
-4
drivers/media/video/pms.c
drivers/media/video/pms.c
+9
-4
drivers/media/video/saa5249.c
drivers/media/video/saa5249.c
+7
-6
drivers/media/video/w9966.c
drivers/media/video/w9966.c
+10
-5
No files found.
drivers/media/video/bttv-driver.c
View file @
8ce6edde
...
@@ -1650,7 +1650,7 @@ static void release_buffer(struct file *file, struct videobuf_buffer *vb)
...
@@ -1650,7 +1650,7 @@ static void release_buffer(struct file *file, struct videobuf_buffer *vb)
bttv_dma_free
(
fh
->
btv
,
buf
);
bttv_dma_free
(
fh
->
btv
,
buf
);
}
}
static
int
bttv_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
bttv_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
bttv_fh
*
fh
=
file
->
private_data
;
struct
bttv_fh
*
fh
=
file
->
private_data
;
...
@@ -2432,6 +2432,12 @@ static int bttv_ioctl(struct inode *inode, struct file *file,
...
@@ -2432,6 +2432,12 @@ static int bttv_ioctl(struct inode *inode, struct file *file,
return
retval
;
return
retval
;
}
}
static
int
bttv_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
bttv_do_ioctl
);
}
/* start capture to a kernel bounce buffer */
/* start capture to a kernel bounce buffer */
static
int
bttv_read_capture
(
struct
bttv_fh
*
fh
)
static
int
bttv_read_capture
(
struct
bttv_fh
*
fh
)
{
{
...
@@ -2647,7 +2653,7 @@ static struct file_operations bttv_fops =
...
@@ -2647,7 +2653,7 @@ static struct file_operations bttv_fops =
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
bttv_open
,
open:
bttv_open
,
release:
bttv_release
,
release:
bttv_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
bttv
_ioctl
,
llseek:
no_llseek
,
llseek:
no_llseek
,
read:
bttv_read
,
read:
bttv_read
,
mmap:
bttv_mmap
,
mmap:
bttv_mmap
,
...
@@ -2661,7 +2667,6 @@ static struct video_device bttv_template =
...
@@ -2661,7 +2667,6 @@ static struct video_device bttv_template =
VID_TYPE_CLIPPING
|
VID_TYPE_SCALES
,
VID_TYPE_CLIPPING
|
VID_TYPE_SCALES
,
hardware:
VID_HARDWARE_BT848
,
hardware:
VID_HARDWARE_BT848
,
fops:
&
bttv_fops
,
fops:
&
bttv_fops
,
kernel_ioctl:
bttv_ioctl
,
minor:
-
1
,
minor:
-
1
,
};
};
...
@@ -2712,7 +2717,7 @@ static int radio_release(struct inode *inode, struct file *file)
...
@@ -2712,7 +2717,7 @@ static int radio_release(struct inode *inode, struct file *file)
return
0
;
return
0
;
}
}
static
int
radio_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
radio_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
bttv
*
btv
=
file
->
private_data
;
struct
bttv
*
btv
=
file
->
private_data
;
...
@@ -2763,12 +2768,18 @@ static int radio_ioctl(struct inode *inode, struct file *file,
...
@@ -2763,12 +2768,18 @@ static int radio_ioctl(struct inode *inode, struct file *file,
return
0
;
return
0
;
}
}
static
int
radio_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
radio_do_ioctl
);
}
static
struct
file_operations
radio_fops
=
static
struct
file_operations
radio_fops
=
{
{
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
radio_open
,
open:
radio_open
,
release:
radio_release
,
release:
radio_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
radio
_ioctl
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -2778,7 +2789,6 @@ static struct video_device radio_template =
...
@@ -2778,7 +2789,6 @@ static struct video_device radio_template =
type:
VID_TYPE_TUNER
|
VID_TYPE_TELETEXT
,
type:
VID_TYPE_TUNER
|
VID_TYPE_TELETEXT
,
hardware:
VID_HARDWARE_BT848
,
hardware:
VID_HARDWARE_BT848
,
fops:
&
radio_fops
,
fops:
&
radio_fops
,
kernel_ioctl:
radio_ioctl
,
minor:
-
1
,
minor:
-
1
,
};
};
...
...
drivers/media/video/bttv-vbi.c
View file @
8ce6edde
...
@@ -276,7 +276,7 @@ static int vbi_release(struct inode *inode, struct file *file)
...
@@ -276,7 +276,7 @@ static int vbi_release(struct inode *inode, struct file *file)
return
0
;
return
0
;
}
}
static
int
vbi_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
vbi_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
bttv
*
btv
=
file
->
private_data
;
struct
bttv
*
btv
=
file
->
private_data
;
...
@@ -507,6 +507,12 @@ static int vbi_ioctl(struct inode *inode, struct file *file,
...
@@ -507,6 +507,12 @@ static int vbi_ioctl(struct inode *inode, struct file *file,
#endif
#endif
}
}
static
int
vbi_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
vbi_do_ioctl
);
}
static
ssize_t
vbi_read
(
struct
file
*
file
,
char
*
data
,
static
ssize_t
vbi_read
(
struct
file
*
file
,
char
*
data
,
size_t
count
,
loff_t
*
ppos
)
size_t
count
,
loff_t
*
ppos
)
{
{
...
@@ -634,7 +640,7 @@ static struct file_operations vbi_fops =
...
@@ -634,7 +640,7 @@ static struct file_operations vbi_fops =
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
vbi_open
,
open:
vbi_open
,
release:
vbi_release
,
release:
vbi_release
,
ioctl:
v
ideo_generic
_ioctl
,
ioctl:
v
bi
_ioctl
,
llseek:
no_llseek
,
llseek:
no_llseek
,
read:
vbi_read
,
read:
vbi_read
,
poll:
vbi_poll
,
poll:
vbi_poll
,
...
@@ -647,7 +653,6 @@ struct video_device bttv_vbi_template =
...
@@ -647,7 +653,6 @@ struct video_device bttv_vbi_template =
type:
VID_TYPE_TUNER
|
VID_TYPE_TELETEXT
,
type:
VID_TYPE_TUNER
|
VID_TYPE_TELETEXT
,
hardware:
VID_HARDWARE_BT848
,
hardware:
VID_HARDWARE_BT848
,
fops:
&
vbi_fops
,
fops:
&
vbi_fops
,
kernel_ioctl:
vbi_ioctl
,
minor:
-
1
,
minor:
-
1
,
};
};
...
...
drivers/media/video/bw-qcam.c
View file @
8ce6edde
...
@@ -694,7 +694,7 @@ long qc_capture(struct qcam_device * q, char *buf, unsigned long len)
...
@@ -694,7 +694,7 @@ long qc_capture(struct qcam_device * q, char *buf, unsigned long len)
* Video4linux interfacing
* Video4linux interfacing
*/
*/
static
int
qcam_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
qcam_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
video_device
*
dev
=
video_devdata
(
file
);
struct
video_device
*
dev
=
video_devdata
(
file
);
...
@@ -854,6 +854,12 @@ static int qcam_ioctl(struct inode *inode, struct file *file,
...
@@ -854,6 +854,12 @@ static int qcam_ioctl(struct inode *inode, struct file *file,
return
0
;
return
0
;
}
}
static
int
qcam_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
qcam_do_ioctl
);
}
static
int
qcam_read
(
struct
file
*
file
,
char
*
buf
,
static
int
qcam_read
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
ppos
)
size_t
count
,
loff_t
*
ppos
)
{
{
...
@@ -882,7 +888,7 @@ static struct file_operations qcam_fops = {
...
@@ -882,7 +888,7 @@ static struct file_operations qcam_fops = {
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
video_exclusive_open
,
open:
video_exclusive_open
,
release:
video_exclusive_release
,
release:
video_exclusive_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
qcam
_ioctl
,
read:
qcam_read
,
read:
qcam_read
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -893,7 +899,6 @@ static struct video_device qcam_template=
...
@@ -893,7 +899,6 @@ static struct video_device qcam_template=
type:
VID_TYPE_CAPTURE
,
type:
VID_TYPE_CAPTURE
,
hardware:
VID_HARDWARE_QCAM_BW
,
hardware:
VID_HARDWARE_QCAM_BW
,
fops:
&
qcam_fops
,
fops:
&
qcam_fops
,
kernel_ioctl:
qcam_ioctl
,
};
};
#define MAX_CAMS 4
#define MAX_CAMS 4
...
...
drivers/media/video/c-qcam.c
View file @
8ce6edde
...
@@ -496,7 +496,7 @@ static long qc_capture(struct qcam_device *q, char *buf, unsigned long len)
...
@@ -496,7 +496,7 @@ static long qc_capture(struct qcam_device *q, char *buf, unsigned long len)
* Video4linux interfacing
* Video4linux interfacing
*/
*/
static
int
qcam_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
qcam_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
video_device
*
dev
=
video_devdata
(
file
);
struct
video_device
*
dev
=
video_devdata
(
file
);
...
@@ -662,6 +662,12 @@ static int qcam_ioctl(struct inode *inode, struct file *file,
...
@@ -662,6 +662,12 @@ static int qcam_ioctl(struct inode *inode, struct file *file,
return
0
;
return
0
;
}
}
static
int
qcam_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
qcam_do_ioctl
);
}
static
int
qcam_read
(
struct
file
*
file
,
char
*
buf
,
static
int
qcam_read
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
ppos
)
size_t
count
,
loff_t
*
ppos
)
{
{
...
@@ -683,7 +689,7 @@ static struct file_operations qcam_fops = {
...
@@ -683,7 +689,7 @@ static struct file_operations qcam_fops = {
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
video_exclusive_open
,
open:
video_exclusive_open
,
release:
video_exclusive_release
,
release:
video_exclusive_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
qcam
_ioctl
,
read:
qcam_read
,
read:
qcam_read
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -695,7 +701,6 @@ static struct video_device qcam_template=
...
@@ -695,7 +701,6 @@ static struct video_device qcam_template=
type:
VID_TYPE_CAPTURE
,
type:
VID_TYPE_CAPTURE
,
hardware:
VID_HARDWARE_QCAM_C
,
hardware:
VID_HARDWARE_QCAM_C
,
fops:
&
qcam_fops
,
fops:
&
qcam_fops
,
kernel_ioctl:
qcam_ioctl
,
};
};
/* Initialize the QuickCam driver control structure. */
/* Initialize the QuickCam driver control structure. */
...
...
drivers/media/video/cpia.c
View file @
8ce6edde
...
@@ -2572,7 +2572,7 @@ static int cpia_read(struct file *file, char *buf,
...
@@ -2572,7 +2572,7 @@ static int cpia_read(struct file *file, char *buf,
return
cam
->
decompressed_frame
.
count
;
return
cam
->
decompressed_frame
.
count
;
}
}
static
int
cpia_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
cpia_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
ioctlnr
,
void
*
arg
)
unsigned
int
ioctlnr
,
void
*
arg
)
{
{
struct
video_device
*
dev
=
file
->
private_data
;
struct
video_device
*
dev
=
file
->
private_data
;
...
@@ -2874,6 +2874,12 @@ static int cpia_ioctl(struct inode *inode, struct file *file,
...
@@ -2874,6 +2874,12 @@ static int cpia_ioctl(struct inode *inode, struct file *file,
return
retval
;
return
retval
;
}
}
static
int
cpia_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
cpia_do_ioctl
);
}
/* FIXME */
/* FIXME */
static
int
cpia_mmap
(
struct
file
*
file
,
struct
vm_area_struct
*
vma
)
static
int
cpia_mmap
(
struct
file
*
file
,
struct
vm_area_struct
*
vma
)
{
{
...
@@ -2933,7 +2939,7 @@ static struct file_operations cpia_fops = {
...
@@ -2933,7 +2939,7 @@ static struct file_operations cpia_fops = {
release:
cpia_close
,
release:
cpia_close
,
read:
cpia_read
,
read:
cpia_read
,
mmap:
cpia_mmap
,
mmap:
cpia_mmap
,
ioctl:
video_generic
_ioctl
,
ioctl:
cpia
_ioctl
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -2943,7 +2949,6 @@ static struct video_device cpia_template = {
...
@@ -2943,7 +2949,6 @@ static struct video_device cpia_template = {
type:
VID_TYPE_CAPTURE
,
type:
VID_TYPE_CAPTURE
,
hardware:
VID_HARDWARE_CPIA
,
/* FIXME */
hardware:
VID_HARDWARE_CPIA
,
/* FIXME */
fops:
&
cpia_fops
,
fops:
&
cpia_fops
,
kernel_ioctl:
cpia_ioctl
,
};
};
/* initialise cam_data structure */
/* initialise cam_data structure */
...
...
drivers/media/video/pms.c
View file @
8ce6edde
...
@@ -672,7 +672,7 @@ static int pms_capture(struct pms_device *dev, char *buf, int rgb555, int count)
...
@@ -672,7 +672,7 @@ static int pms_capture(struct pms_device *dev, char *buf, int rgb555, int count)
* Video4linux interfacing
* Video4linux interfacing
*/
*/
static
int
pms_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
pms_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
video_device
*
dev
=
video_devdata
(
file
);
struct
video_device
*
dev
=
video_devdata
(
file
);
...
@@ -855,6 +855,12 @@ static int pms_ioctl(struct inode *inode, struct file *file,
...
@@ -855,6 +855,12 @@ static int pms_ioctl(struct inode *inode, struct file *file,
return
0
;
return
0
;
}
}
static
int
pms_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
pms_do_ioctl
);
}
static
int
pms_read
(
struct
file
*
file
,
char
*
buf
,
static
int
pms_read
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
ppos
)
size_t
count
,
loff_t
*
ppos
)
{
{
...
@@ -872,7 +878,7 @@ static struct file_operations pms_fops = {
...
@@ -872,7 +878,7 @@ static struct file_operations pms_fops = {
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
video_exclusive_open
,
open:
video_exclusive_open
,
release:
video_exclusive_release
,
release:
video_exclusive_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
pms
_ioctl
,
read:
pms_read
,
read:
pms_read
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -884,7 +890,6 @@ static struct video_device pms_template=
...
@@ -884,7 +890,6 @@ static struct video_device pms_template=
type:
VID_TYPE_CAPTURE
,
type:
VID_TYPE_CAPTURE
,
hardware:
VID_HARDWARE_PMS
,
hardware:
VID_HARDWARE_PMS
,
fops:
&
pms_fops
,
fops:
&
pms_fops
,
kernel_ioctl:
pms_ioctl
,
};
};
struct
pms_device
pms_device
;
struct
pms_device
pms_device
;
...
...
drivers/media/video/saa5249.c
View file @
8ce6edde
...
@@ -341,9 +341,12 @@ static int i2c_getdata(struct saa5249_device *t, int count, u8 *buf)
...
@@ -341,9 +341,12 @@ static int i2c_getdata(struct saa5249_device *t, int count, u8 *buf)
* Standard character-device-driver functions
* Standard character-device-driver functions
*/
*/
static
int
do_saa5249_ioctl
(
struct
saa5249_device
*
t
,
unsigned
int
cmd
,
void
*
arg
)
static
int
do_saa5249_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
{
{
static
int
virtual_mode
=
FALSE
;
static
int
virtual_mode
=
FALSE
;
struct
video_device
*
vd
=
video_devdata
(
file
);
struct
saa5249_device
*
t
=
vd
->
priv
;
switch
(
cmd
)
switch
(
cmd
)
{
{
...
@@ -591,16 +594,15 @@ static int do_saa5249_ioctl(struct saa5249_device *t, unsigned int cmd, void *ar
...
@@ -591,16 +594,15 @@ static int do_saa5249_ioctl(struct saa5249_device *t, unsigned int cmd, void *ar
*/
*/
static
int
saa5249_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
saa5249_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
unsigned
long
arg
)
{
{
struct
video_device
*
vd
=
video_devdata
(
file
);
struct
video_device
*
vd
=
video_devdata
(
file
);
struct
saa5249_device
*
t
=
vd
->
priv
;
struct
saa5249_device
*
t
=
vd
->
priv
;
int
err
;
int
err
;
down
(
&
t
->
lock
);
down
(
&
t
->
lock
);
err
=
do_saa5249_ioctl
(
t
,
cmd
,
arg
);
err
=
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
do_saa5249_ioctl
);
up
(
&
t
->
lock
);
up
(
&
t
->
lock
);
return
err
;
return
err
;
}
}
...
@@ -679,7 +681,7 @@ static struct file_operations saa_fops = {
...
@@ -679,7 +681,7 @@ static struct file_operations saa_fops = {
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
saa5249_open
,
open:
saa5249_open
,
release:
saa5249_release
,
release:
saa5249_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
saa5249
_ioctl
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -690,7 +692,6 @@ static struct video_device saa_template =
...
@@ -690,7 +692,6 @@ static struct video_device saa_template =
type:
VID_TYPE_TELETEXT
,
/*| VID_TYPE_TUNER ?? */
type:
VID_TYPE_TELETEXT
,
/*| VID_TYPE_TUNER ?? */
hardware:
VID_HARDWARE_SAA5249
,
hardware:
VID_HARDWARE_SAA5249
,
fops:
&
saa_fops
,
fops:
&
saa_fops
,
kernel_ioctl:
saa5249_ioctl
,
};
};
MODULE_LICENSE
(
"GPL"
);
MODULE_LICENSE
(
"GPL"
);
drivers/media/video/w9966.c
View file @
8ce6edde
...
@@ -174,7 +174,7 @@ static int w9966_i2c_wbyte(struct w9966_dev* cam, int data);
...
@@ -174,7 +174,7 @@ static int w9966_i2c_wbyte(struct w9966_dev* cam, int data);
static
int
w9966_i2c_rbyte
(
struct
w9966_dev
*
cam
);
static
int
w9966_i2c_rbyte
(
struct
w9966_dev
*
cam
);
static
int
w9966_v4l_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
w9966_v4l_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
);
unsigned
int
cmd
,
unsigned
long
arg
);
static
int
w9966_v4l_read
(
struct
file
*
file
,
char
*
buf
,
static
int
w9966_v4l_read
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
ppos
);
size_t
count
,
loff_t
*
ppos
);
...
@@ -182,7 +182,7 @@ static struct file_operations w9966_fops = {
...
@@ -182,7 +182,7 @@ static struct file_operations w9966_fops = {
owner:
THIS_MODULE
,
owner:
THIS_MODULE
,
open:
video_exclusive_open
,
open:
video_exclusive_open
,
release:
video_exclusive_release
,
release:
video_exclusive_release
,
ioctl:
video_generic
_ioctl
,
ioctl:
w9966_v4l
_ioctl
,
read:
w9966_v4l_read
,
read:
w9966_v4l_read
,
llseek:
no_llseek
,
llseek:
no_llseek
,
};
};
...
@@ -192,7 +192,6 @@ static struct video_device w9966_template = {
...
@@ -192,7 +192,6 @@ static struct video_device w9966_template = {
type:
VID_TYPE_CAPTURE
|
VID_TYPE_SCALES
,
type:
VID_TYPE_CAPTURE
|
VID_TYPE_SCALES
,
hardware:
VID_HARDWARE_W9966
,
hardware:
VID_HARDWARE_W9966
,
fops:
&
w9966_fops
,
fops:
&
w9966_fops
,
kernel_ioctl:
w9966_v4l_ioctl
,
};
};
/*
/*
...
@@ -700,7 +699,7 @@ static int w9966_wReg_i2c(struct w9966_dev* cam, int reg, int data)
...
@@ -700,7 +699,7 @@ static int w9966_wReg_i2c(struct w9966_dev* cam, int reg, int data)
* Video4linux interfacing
* Video4linux interfacing
*/
*/
static
int
w9966_v4l_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
static
int
w9966_v4l_
do_
ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
void
*
arg
)
unsigned
int
cmd
,
void
*
arg
)
{
{
struct
video_device
*
vdev
=
video_devdata
(
file
);
struct
video_device
*
vdev
=
video_devdata
(
file
);
...
@@ -853,6 +852,12 @@ static int w9966_v4l_ioctl(struct inode *inode, struct file *file,
...
@@ -853,6 +852,12 @@ static int w9966_v4l_ioctl(struct inode *inode, struct file *file,
return
0
;
return
0
;
}
}
static
int
w9966_v4l_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
return
video_usercopy
(
inode
,
file
,
cmd
,
arg
,
w9966_v4l_do_ioctl
);
}
// Capture data
// Capture data
static
int
w9966_v4l_read
(
struct
file
*
file
,
char
*
buf
,
static
int
w9966_v4l_read
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
ppos
)
size_t
count
,
loff_t
*
ppos
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment