diff options
author | Christoph Hellwig <hch@lst.de> | 2006-01-14 16:21:25 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-14 21:27:14 -0500 |
commit | 67a6680d64e18c7a1901f31ef747ea53b6cd986d (patch) | |
tree | 1d428eb19fdd393290348c63911c2974016ebc9d | |
parent | a80da7389891d0eeacbd568a9b54f665fd424d14 (diff) |
[PATCH] fbdev: Sanitize ->fb_ioctl prototype
The ioctl and file arguments to ->fb_mmap are totally unused and there's not
reason a driver should need them.
Also update the ->fb_compat_ioctl prototype to be the same as ->fb_mmap.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/video/amifb.c | 9 | ||||
-rw-r--r-- | drivers/video/arcfb.c | 5 | ||||
-rw-r--r-- | drivers/video/atafb.c | 3 | ||||
-rw-r--r-- | drivers/video/aty/aty128fb.c | 6 | ||||
-rw-r--r-- | drivers/video/aty/atyfb_base.c | 6 | ||||
-rw-r--r-- | drivers/video/aty/radeon_base.c | 4 | ||||
-rw-r--r-- | drivers/video/bw2.c | 6 | ||||
-rw-r--r-- | drivers/video/cg14.c | 6 | ||||
-rw-r--r-- | drivers/video/cg3.c | 6 | ||||
-rw-r--r-- | drivers/video/cg6.c | 6 | ||||
-rw-r--r-- | drivers/video/fbmem.c | 4 | ||||
-rw-r--r-- | drivers/video/ffb.c | 6 | ||||
-rw-r--r-- | drivers/video/imsttfb.c | 3 | ||||
-rw-r--r-- | drivers/video/intelfb/intelfbdrv.c | 8 | ||||
-rw-r--r-- | drivers/video/kyro/fbdev.c | 5 | ||||
-rw-r--r-- | drivers/video/leo.c | 6 | ||||
-rw-r--r-- | drivers/video/matrox/matroxfb_base.c | 5 | ||||
-rw-r--r-- | drivers/video/matrox/matroxfb_crtc2.c | 9 | ||||
-rw-r--r-- | drivers/video/p9100.c | 7 | ||||
-rw-r--r-- | drivers/video/pm3fb.c | 8 | ||||
-rw-r--r-- | drivers/video/pmag-aa-fb.c | 3 | ||||
-rw-r--r-- | drivers/video/radeonfb.c | 4 | ||||
-rw-r--r-- | drivers/video/sis/sis_main.c | 28 | ||||
-rw-r--r-- | drivers/video/sis/sis_main.h | 5 | ||||
-rw-r--r-- | drivers/video/sstfb.c | 3 | ||||
-rw-r--r-- | drivers/video/tcx.c | 7 | ||||
-rw-r--r-- | include/linux/fb.h | 8 |
27 files changed, 67 insertions, 109 deletions
diff --git a/drivers/video/amifb.c b/drivers/video/amifb.c index 2c42a812655a..3033c72dea20 100644 --- a/drivers/video/amifb.c +++ b/drivers/video/amifb.c | |||
@@ -1131,9 +1131,7 @@ static void amifb_copyarea(struct fb_info *info, | |||
1131 | const struct fb_copyarea *region); | 1131 | const struct fb_copyarea *region); |
1132 | static void amifb_imageblit(struct fb_info *info, | 1132 | static void amifb_imageblit(struct fb_info *info, |
1133 | const struct fb_image *image); | 1133 | const struct fb_image *image); |
1134 | static int amifb_ioctl(struct inode *inode, struct file *file, | 1134 | static int amifb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg); |
1135 | unsigned int cmd, unsigned long arg, | ||
1136 | struct fb_info *info); | ||
1137 | 1135 | ||
1138 | 1136 | ||
1139 | /* | 1137 | /* |
@@ -2172,9 +2170,8 @@ static void amifb_imageblit(struct fb_info *info, const struct fb_image *image) | |||
2172 | * Amiga Frame Buffer Specific ioctls | 2170 | * Amiga Frame Buffer Specific ioctls |
2173 | */ | 2171 | */ |
2174 | 2172 | ||
2175 | static int amifb_ioctl(struct inode *inode, struct file *file, | 2173 | static int amifb_ioctl(struct fb_info *info, |
2176 | unsigned int cmd, unsigned long arg, | 2174 | unsigned int cmd, unsigned long arg) |
2177 | struct fb_info *info) | ||
2178 | { | 2175 | { |
2179 | union { | 2176 | union { |
2180 | struct fb_fix_cursorinfo fix; | 2177 | struct fb_fix_cursorinfo fix; |
diff --git a/drivers/video/arcfb.c b/drivers/video/arcfb.c index 89060b2db8e5..df8e5667b348 100644 --- a/drivers/video/arcfb.c +++ b/drivers/video/arcfb.c | |||
@@ -399,9 +399,8 @@ static void arcfb_imageblit(struct fb_info *info, const struct fb_image *image) | |||
399 | image->height); | 399 | image->height); |
400 | } | 400 | } |
401 | 401 | ||
402 | static int arcfb_ioctl(struct inode *inode, struct file *file, | 402 | static int arcfb_ioctl(struct fb_info *info, |
403 | unsigned int cmd, unsigned long arg, | 403 | unsigned int cmd, unsigned long arg) |
404 | struct fb_info *info) | ||
405 | { | 404 | { |
406 | void __user *argp = (void __user *)arg; | 405 | void __user *argp = (void __user *)arg; |
407 | struct arcfb_par *par = info->par; | 406 | struct arcfb_par *par = info->par; |
diff --git a/drivers/video/atafb.c b/drivers/video/atafb.c index 15ec1295bc29..e69ab65f7843 100644 --- a/drivers/video/atafb.c +++ b/drivers/video/atafb.c | |||
@@ -2571,8 +2571,7 @@ atafb_pan_display(struct fb_var_screeninfo *var, int con, struct fb_info *info) | |||
2571 | } | 2571 | } |
2572 | 2572 | ||
2573 | static int | 2573 | static int |
2574 | atafb_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 2574 | atafb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
2575 | unsigned long arg, int con, struct fb_info *info) | ||
2576 | { | 2575 | { |
2577 | switch (cmd) { | 2576 | switch (cmd) { |
2578 | #ifdef FBCMD_GET_CURRENTPAR | 2577 | #ifdef FBCMD_GET_CURRENTPAR |
diff --git a/drivers/video/aty/aty128fb.c b/drivers/video/aty/aty128fb.c index e686185a076d..bfc8a93b2c73 100644 --- a/drivers/video/aty/aty128fb.c +++ b/drivers/video/aty/aty128fb.c | |||
@@ -431,8 +431,7 @@ static int aty128fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
431 | static int aty128fb_pan_display(struct fb_var_screeninfo *var, | 431 | static int aty128fb_pan_display(struct fb_var_screeninfo *var, |
432 | struct fb_info *fb); | 432 | struct fb_info *fb); |
433 | static int aty128fb_blank(int blank, struct fb_info *fb); | 433 | static int aty128fb_blank(int blank, struct fb_info *fb); |
434 | static int aty128fb_ioctl(struct inode *inode, struct file *file, u_int cmd, | 434 | static int aty128fb_ioctl(struct fb_info *info, u_int cmd, unsigned long arg); |
435 | u_long arg, struct fb_info *info); | ||
436 | static int aty128fb_sync(struct fb_info *info); | 435 | static int aty128fb_sync(struct fb_info *info); |
437 | 436 | ||
438 | /* | 437 | /* |
@@ -2108,8 +2107,7 @@ static int aty128fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
2108 | /* in param: u32* backlight value: 0 to 15 */ | 2107 | /* in param: u32* backlight value: 0 to 15 */ |
2109 | #define FBIO_ATY128_SET_MIRROR _IOW('@', 2, __u32) | 2108 | #define FBIO_ATY128_SET_MIRROR _IOW('@', 2, __u32) |
2110 | 2109 | ||
2111 | static int aty128fb_ioctl(struct inode *inode, struct file *file, u_int cmd, | 2110 | static int aty128fb_ioctl(struct fb_info *info, u_int cmd, u_long arg) |
2112 | u_long arg, struct fb_info *info) | ||
2113 | { | 2111 | { |
2114 | struct aty128fb_par *par = info->par; | 2112 | struct aty128fb_par *par = info->par; |
2115 | u32 value; | 2113 | u32 value; |
diff --git a/drivers/video/aty/atyfb_base.c b/drivers/video/aty/atyfb_base.c index ed81005cbdba..75b463ad4c75 100644 --- a/drivers/video/aty/atyfb_base.c +++ b/drivers/video/aty/atyfb_base.c | |||
@@ -238,8 +238,7 @@ static int atyfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
238 | u_int transp, struct fb_info *info); | 238 | u_int transp, struct fb_info *info); |
239 | static int atyfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info); | 239 | static int atyfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info); |
240 | static int atyfb_blank(int blank, struct fb_info *info); | 240 | static int atyfb_blank(int blank, struct fb_info *info); |
241 | static int atyfb_ioctl(struct inode *inode, struct file *file, u_int cmd, | 241 | static int atyfb_ioctl(struct fb_info *info, u_int cmd, u_long arg); |
242 | u_long arg, struct fb_info *info); | ||
243 | extern void atyfb_fillrect(struct fb_info *info, const struct fb_fillrect *rect); | 242 | extern void atyfb_fillrect(struct fb_info *info, const struct fb_fillrect *rect); |
244 | extern void atyfb_copyarea(struct fb_info *info, const struct fb_copyarea *area); | 243 | extern void atyfb_copyarea(struct fb_info *info, const struct fb_copyarea *area); |
245 | extern void atyfb_imageblit(struct fb_info *info, const struct fb_image *image); | 244 | extern void atyfb_imageblit(struct fb_info *info, const struct fb_image *image); |
@@ -1739,8 +1738,7 @@ struct atyclk { | |||
1739 | #define FBIO_WAITFORVSYNC _IOW('F', 0x20, __u32) | 1738 | #define FBIO_WAITFORVSYNC _IOW('F', 0x20, __u32) |
1740 | #endif | 1739 | #endif |
1741 | 1740 | ||
1742 | static int atyfb_ioctl(struct inode *inode, struct file *file, u_int cmd, | 1741 | static int atyfb_ioctl(struct fb_info *info, u_int cmd, u_long arg) |
1743 | u_long arg, struct fb_info *info) | ||
1744 | { | 1742 | { |
1745 | struct atyfb_par *par = (struct atyfb_par *) info->par; | 1743 | struct atyfb_par *par = (struct atyfb_par *) info->par; |
1746 | #ifdef __sparc__ | 1744 | #ifdef __sparc__ |
diff --git a/drivers/video/aty/radeon_base.c b/drivers/video/aty/radeon_base.c index 156db84cb363..c9f0c5a07e6e 100644 --- a/drivers/video/aty/radeon_base.c +++ b/drivers/video/aty/radeon_base.c | |||
@@ -864,8 +864,8 @@ static int radeonfb_pan_display (struct fb_var_screeninfo *var, | |||
864 | } | 864 | } |
865 | 865 | ||
866 | 866 | ||
867 | static int radeonfb_ioctl (struct inode *inode, struct file *file, unsigned int cmd, | 867 | static int radeonfb_ioctl (struct fb_info *info, unsigned int cmd, |
868 | unsigned long arg, struct fb_info *info) | 868 | unsigned long arg) |
869 | { | 869 | { |
870 | struct radeonfb_info *rinfo = info->par; | 870 | struct radeonfb_info *rinfo = info->par; |
871 | unsigned int tmp; | 871 | unsigned int tmp; |
diff --git a/drivers/video/bw2.c b/drivers/video/bw2.c index 9248fe1fbb1a..641a6c1fbf22 100644 --- a/drivers/video/bw2.c +++ b/drivers/video/bw2.c | |||
@@ -36,8 +36,7 @@ | |||
36 | static int bw2_blank(int, struct fb_info *); | 36 | static int bw2_blank(int, struct fb_info *); |
37 | 37 | ||
38 | static int bw2_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 38 | static int bw2_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
39 | static int bw2_ioctl(struct inode *, struct file *, unsigned int, | 39 | static int bw2_ioctl(struct fb_info *, unsigned int, unsigned long); |
40 | unsigned long, struct fb_info *); | ||
41 | 40 | ||
42 | /* | 41 | /* |
43 | * Frame buffer operations | 42 | * Frame buffer operations |
@@ -181,8 +180,7 @@ static int bw2_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
181 | vma); | 180 | vma); |
182 | } | 181 | } |
183 | 182 | ||
184 | static int bw2_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 183 | static int bw2_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
185 | unsigned long arg, struct fb_info *info) | ||
186 | { | 184 | { |
187 | struct bw2_par *par = (struct bw2_par *) info->par; | 185 | struct bw2_par *par = (struct bw2_par *) info->par; |
188 | 186 | ||
diff --git a/drivers/video/cg14.c b/drivers/video/cg14.c index a56147102abb..edb9936673c8 100644 --- a/drivers/video/cg14.c +++ b/drivers/video/cg14.c | |||
@@ -32,8 +32,7 @@ static int cg14_setcolreg(unsigned, unsigned, unsigned, unsigned, | |||
32 | unsigned, struct fb_info *); | 32 | unsigned, struct fb_info *); |
33 | 33 | ||
34 | static int cg14_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 34 | static int cg14_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
35 | static int cg14_ioctl(struct inode *, struct file *, unsigned int, | 35 | static int cg14_ioctl(struct fb_info *, unsigned int, unsigned long); |
36 | unsigned long, struct fb_info *); | ||
37 | static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *); | 36 | static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *); |
38 | 37 | ||
39 | /* | 38 | /* |
@@ -277,8 +276,7 @@ static int cg14_mmap(struct fb_info *info, struct file *file, struct vm_area_str | |||
277 | par->iospace, vma); | 276 | par->iospace, vma); |
278 | } | 277 | } |
279 | 278 | ||
280 | static int cg14_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 279 | static int cg14_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
281 | unsigned long arg, struct fb_info *info) | ||
282 | { | 280 | { |
283 | struct cg14_par *par = (struct cg14_par *) info->par; | 281 | struct cg14_par *par = (struct cg14_par *) info->par; |
284 | struct cg14_regs __iomem *regs = par->regs; | 282 | struct cg14_regs __iomem *regs = par->regs; |
diff --git a/drivers/video/cg3.c b/drivers/video/cg3.c index 9fcd89608ed7..027f707fa5db 100644 --- a/drivers/video/cg3.c +++ b/drivers/video/cg3.c | |||
@@ -34,8 +34,7 @@ static int cg3_setcolreg(unsigned, unsigned, unsigned, unsigned, | |||
34 | static int cg3_blank(int, struct fb_info *); | 34 | static int cg3_blank(int, struct fb_info *); |
35 | 35 | ||
36 | static int cg3_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 36 | static int cg3_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
37 | static int cg3_ioctl(struct inode *, struct file *, unsigned int, | 37 | static int cg3_ioctl(struct fb_info *, unsigned int, unsigned long); |
38 | unsigned long, struct fb_info *); | ||
39 | 38 | ||
40 | /* | 39 | /* |
41 | * Frame buffer operations | 40 | * Frame buffer operations |
@@ -240,8 +239,7 @@ static int cg3_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
240 | vma); | 239 | vma); |
241 | } | 240 | } |
242 | 241 | ||
243 | static int cg3_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 242 | static int cg3_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
244 | unsigned long arg, struct fb_info *info) | ||
245 | { | 243 | { |
246 | struct cg3_par *par = (struct cg3_par *) info->par; | 244 | struct cg3_par *par = (struct cg3_par *) info->par; |
247 | 245 | ||
diff --git a/drivers/video/cg6.c b/drivers/video/cg6.c index 050835e39aa3..678e335d2b0f 100644 --- a/drivers/video/cg6.c +++ b/drivers/video/cg6.c | |||
@@ -37,8 +37,7 @@ static void cg6_imageblit(struct fb_info *, const struct fb_image *); | |||
37 | static void cg6_fillrect(struct fb_info *, const struct fb_fillrect *); | 37 | static void cg6_fillrect(struct fb_info *, const struct fb_fillrect *); |
38 | static int cg6_sync(struct fb_info *); | 38 | static int cg6_sync(struct fb_info *); |
39 | static int cg6_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 39 | static int cg6_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
40 | static int cg6_ioctl(struct inode *, struct file *, unsigned int, | 40 | static int cg6_ioctl(struct fb_info *, unsigned int, unsigned long); |
41 | unsigned long, struct fb_info *); | ||
42 | 41 | ||
43 | /* | 42 | /* |
44 | * Frame buffer operations | 43 | * Frame buffer operations |
@@ -534,8 +533,7 @@ static int cg6_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
534 | vma); | 533 | vma); |
535 | } | 534 | } |
536 | 535 | ||
537 | static int cg6_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 536 | static int cg6_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
538 | unsigned long arg, struct fb_info *info) | ||
539 | { | 537 | { |
540 | struct cg6_par *par = (struct cg6_par *) info->par; | 538 | struct cg6_par *par = (struct cg6_par *) info->par; |
541 | 539 | ||
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index 32a9b69becc5..80c16fb61e1c 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c | |||
@@ -957,7 +957,7 @@ fb_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | |||
957 | default: | 957 | default: |
958 | if (fb->fb_ioctl == NULL) | 958 | if (fb->fb_ioctl == NULL) |
959 | return -EINVAL; | 959 | return -EINVAL; |
960 | return fb->fb_ioctl(inode, file, cmd, arg, info); | 960 | return fb->fb_ioctl(info, cmd, arg); |
961 | } | 961 | } |
962 | } | 962 | } |
963 | 963 | ||
@@ -1107,7 +1107,7 @@ fb_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) | |||
1107 | 1107 | ||
1108 | default: | 1108 | default: |
1109 | if (fb->fb_compat_ioctl) | 1109 | if (fb->fb_compat_ioctl) |
1110 | ret = fb->fb_compat_ioctl(file, cmd, arg, info); | 1110 | ret = fb->fb_compat_ioctl(info, cmd, arg); |
1111 | break; | 1111 | break; |
1112 | } | 1112 | } |
1113 | unlock_kernel(); | 1113 | unlock_kernel(); |
diff --git a/drivers/video/ffb.c b/drivers/video/ffb.c index c4870d559afc..d096c129d20b 100644 --- a/drivers/video/ffb.c +++ b/drivers/video/ffb.c | |||
@@ -38,8 +38,7 @@ static void ffb_fillrect(struct fb_info *, const struct fb_fillrect *); | |||
38 | static void ffb_copyarea(struct fb_info *, const struct fb_copyarea *); | 38 | static void ffb_copyarea(struct fb_info *, const struct fb_copyarea *); |
39 | static int ffb_sync(struct fb_info *); | 39 | static int ffb_sync(struct fb_info *); |
40 | static int ffb_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 40 | static int ffb_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
41 | static int ffb_ioctl(struct inode *, struct file *, unsigned int, | 41 | static int ffb_ioctl(struct fb_info *, unsigned int, unsigned long); |
42 | unsigned long, struct fb_info *); | ||
43 | static int ffb_pan_display(struct fb_var_screeninfo *, struct fb_info *); | 42 | static int ffb_pan_display(struct fb_var_screeninfo *, struct fb_info *); |
44 | 43 | ||
45 | /* | 44 | /* |
@@ -848,8 +847,7 @@ static int ffb_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
848 | 0, vma); | 847 | 0, vma); |
849 | } | 848 | } |
850 | 849 | ||
851 | static int ffb_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 850 | static int ffb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
852 | unsigned long arg, struct fb_info *info) | ||
853 | { | 851 | { |
854 | struct ffb_par *par = (struct ffb_par *) info->par; | 852 | struct ffb_par *par = (struct ffb_par *) info->par; |
855 | 853 | ||
diff --git a/drivers/video/imsttfb.c b/drivers/video/imsttfb.c index a5d813050db5..ad416ae47596 100644 --- a/drivers/video/imsttfb.c +++ b/drivers/video/imsttfb.c | |||
@@ -1267,8 +1267,7 @@ imsttfb_cursor(struct fb_info *info, struct fb_cursor *cursor) | |||
1267 | #define FBIMSTT_GETIDXREG 0x545406 | 1267 | #define FBIMSTT_GETIDXREG 0x545406 |
1268 | 1268 | ||
1269 | static int | 1269 | static int |
1270 | imsttfb_ioctl(struct inode *inode, struct file *file, u_int cmd, | 1270 | imsttfb_ioctl(struct fb_info *info, u_int cmd, u_long arg) |
1271 | u_long arg, struct fb_info *info) | ||
1272 | { | 1271 | { |
1273 | struct imstt_par *par = info->par; | 1272 | struct imstt_par *par = info->par; |
1274 | void __user *argp = (void __user *)arg; | 1273 | void __user *argp = (void __user *)arg; |
diff --git a/drivers/video/intelfb/intelfbdrv.c b/drivers/video/intelfb/intelfbdrv.c index 0090544842f5..6b8bd3cdf9c0 100644 --- a/drivers/video/intelfb/intelfbdrv.c +++ b/drivers/video/intelfb/intelfbdrv.c | |||
@@ -157,9 +157,8 @@ static int intelfb_cursor(struct fb_info *info, | |||
157 | 157 | ||
158 | static int intelfb_sync(struct fb_info *info); | 158 | static int intelfb_sync(struct fb_info *info); |
159 | 159 | ||
160 | static int intelfb_ioctl(struct inode *inode, struct file *file, | 160 | static int intelfb_ioctl(struct fb_info *info, |
161 | unsigned int cmd, unsigned long arg, | 161 | unsigned int cmd, unsigned long arg); |
162 | struct fb_info *info); | ||
163 | 162 | ||
164 | static int __devinit intelfb_pci_register(struct pci_dev *pdev, | 163 | static int __devinit intelfb_pci_register(struct pci_dev *pdev, |
165 | const struct pci_device_id *ent); | 164 | const struct pci_device_id *ent); |
@@ -1380,8 +1379,7 @@ intelfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info) | |||
1380 | 1379 | ||
1381 | /* When/if we have our own ioctls. */ | 1380 | /* When/if we have our own ioctls. */ |
1382 | static int | 1381 | static int |
1383 | intelfb_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 1382 | intelfb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
1384 | unsigned long arg, struct fb_info *info) | ||
1385 | { | 1383 | { |
1386 | int retval = 0; | 1384 | int retval = 0; |
1387 | 1385 | ||
diff --git a/drivers/video/kyro/fbdev.c b/drivers/video/kyro/fbdev.c index bcd359b6d4ff..477ad297de4e 100644 --- a/drivers/video/kyro/fbdev.c +++ b/drivers/video/kyro/fbdev.c | |||
@@ -586,9 +586,8 @@ static int __init kyrofb_setup(char *options) | |||
586 | } | 586 | } |
587 | #endif | 587 | #endif |
588 | 588 | ||
589 | static int kyrofb_ioctl(struct inode *inode, struct file *file, | 589 | static int kyrofb_ioctl(struct fb_info *info, |
590 | unsigned int cmd, unsigned long arg, | 590 | unsigned int cmd, unsigned long arg) |
591 | struct fb_info *info) | ||
592 | { | 591 | { |
593 | overlay_create ol_create; | 592 | overlay_create ol_create; |
594 | overlay_viewport_set ol_viewport_set; | 593 | overlay_viewport_set ol_viewport_set; |
diff --git a/drivers/video/leo.c b/drivers/video/leo.c index 494287f8f8bf..fb14787e13b9 100644 --- a/drivers/video/leo.c +++ b/drivers/video/leo.c | |||
@@ -33,8 +33,7 @@ static int leo_setcolreg(unsigned, unsigned, unsigned, unsigned, | |||
33 | static int leo_blank(int, struct fb_info *); | 33 | static int leo_blank(int, struct fb_info *); |
34 | 34 | ||
35 | static int leo_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 35 | static int leo_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
36 | static int leo_ioctl(struct inode *, struct file *, unsigned int, | 36 | static int leo_ioctl(struct fb_info *, unsigned int, unsigned long); |
37 | unsigned long, struct fb_info *); | ||
38 | static int leo_pan_display(struct fb_var_screeninfo *, struct fb_info *); | 37 | static int leo_pan_display(struct fb_var_screeninfo *, struct fb_info *); |
39 | 38 | ||
40 | /* | 39 | /* |
@@ -373,8 +372,7 @@ static int leo_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
373 | vma); | 372 | vma); |
374 | } | 373 | } |
375 | 374 | ||
376 | static int leo_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 375 | static int leo_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) |
377 | unsigned long arg, struct fb_info *info) | ||
378 | { | 376 | { |
379 | struct leo_par *par = (struct leo_par *) info->par; | 377 | struct leo_par *par = (struct leo_par *) info->par; |
380 | 378 | ||
diff --git a/drivers/video/matrox/matroxfb_base.c b/drivers/video/matrox/matroxfb_base.c index 1e74f4cca53b..4055ff6f5a81 100644 --- a/drivers/video/matrox/matroxfb_base.c +++ b/drivers/video/matrox/matroxfb_base.c | |||
@@ -865,9 +865,8 @@ static struct matrox_altout panellink_output = { | |||
865 | .name = "Panellink output", | 865 | .name = "Panellink output", |
866 | }; | 866 | }; |
867 | 867 | ||
868 | static int matroxfb_ioctl(struct inode *inode, struct file *file, | 868 | static int matroxfb_ioctl(struct fb_info *info, |
869 | unsigned int cmd, unsigned long arg, | 869 | unsigned int cmd, unsigned long arg) |
870 | struct fb_info *info) | ||
871 | { | 870 | { |
872 | void __user *argp = (void __user *)arg; | 871 | void __user *argp = (void __user *)arg; |
873 | MINFO_FROM_INFO(info); | 872 | MINFO_FROM_INFO(info); |
diff --git a/drivers/video/matrox/matroxfb_crtc2.c b/drivers/video/matrox/matroxfb_crtc2.c index d52d7d825c41..27eb4bb4f89f 100644 --- a/drivers/video/matrox/matroxfb_crtc2.c +++ b/drivers/video/matrox/matroxfb_crtc2.c | |||
@@ -419,11 +419,10 @@ static int matroxfb_dh_get_vblank(const struct matroxfb_dh_fb_info* m2info, stru | |||
419 | return 0; | 419 | return 0; |
420 | } | 420 | } |
421 | 421 | ||
422 | static int matroxfb_dh_ioctl(struct inode* inode, | 422 | static int matroxfb_dh_ioctl(struct fb_info *info, |
423 | struct file* file, | ||
424 | unsigned int cmd, | 423 | unsigned int cmd, |
425 | unsigned long arg, | 424 | unsigned long arg) |
426 | struct fb_info* info) { | 425 | { |
427 | #define m2info (container_of(info, struct matroxfb_dh_fb_info, fbcon)) | 426 | #define m2info (container_of(info, struct matroxfb_dh_fb_info, fbcon)) |
428 | MINFO_FROM(m2info->primary_dev); | 427 | MINFO_FROM(m2info->primary_dev); |
429 | 428 | ||
@@ -457,7 +456,7 @@ static int matroxfb_dh_ioctl(struct inode* inode, | |||
457 | case MATROXFB_GET_OUTPUT_MODE: | 456 | case MATROXFB_GET_OUTPUT_MODE: |
458 | case MATROXFB_GET_ALL_OUTPUTS: | 457 | case MATROXFB_GET_ALL_OUTPUTS: |
459 | { | 458 | { |
460 | return ACCESS_FBINFO(fbcon.fbops)->fb_ioctl(inode, file, cmd, arg, &ACCESS_FBINFO(fbcon)); | 459 | return ACCESS_FBINFO(fbcon.fbops)->fb_ioctl(&ACCESS_FBINFO(fbcon), cmd, arg); |
461 | } | 460 | } |
462 | case MATROXFB_SET_OUTPUT_CONNECTION: | 461 | case MATROXFB_SET_OUTPUT_CONNECTION: |
463 | { | 462 | { |
diff --git a/drivers/video/p9100.c b/drivers/video/p9100.c index b251e754e16c..a1025e9606f1 100644 --- a/drivers/video/p9100.c +++ b/drivers/video/p9100.c | |||
@@ -32,8 +32,7 @@ static int p9100_setcolreg(unsigned, unsigned, unsigned, unsigned, | |||
32 | static int p9100_blank(int, struct fb_info *); | 32 | static int p9100_blank(int, struct fb_info *); |
33 | 33 | ||
34 | static int p9100_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 34 | static int p9100_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
35 | static int p9100_ioctl(struct inode *, struct file *, unsigned int, | 35 | static int p9100_ioctl(struct fb_info *, unsigned int, unsigned long); |
36 | unsigned long, struct fb_info *); | ||
37 | 36 | ||
38 | /* | 37 | /* |
39 | * Frame buffer operations | 38 | * Frame buffer operations |
@@ -232,8 +231,8 @@ static int p9100_mmap(struct fb_info *info, struct file *file, struct vm_area_st | |||
232 | vma); | 231 | vma); |
233 | } | 232 | } |
234 | 233 | ||
235 | static int p9100_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 234 | static int p9100_ioctl(struct fb_info *info, unsigned int cmd, |
236 | unsigned long arg, struct fb_info *info) | 235 | unsigned long arg) |
237 | { | 236 | { |
238 | struct p9100_par *par = (struct p9100_par *) info->par; | 237 | struct p9100_par *par = (struct p9100_par *) info->par; |
239 | 238 | ||
diff --git a/drivers/video/pm3fb.c b/drivers/video/pm3fb.c index 2e11b601c488..0e78ddc81583 100644 --- a/drivers/video/pm3fb.c +++ b/drivers/video/pm3fb.c | |||
@@ -657,9 +657,7 @@ static void pm3fb_set_disp(const void *par, struct display *disp, | |||
657 | static void pm3fb_detect(void); | 657 | static void pm3fb_detect(void); |
658 | static int pm3fb_pan_display(const struct fb_var_screeninfo *var, | 658 | static int pm3fb_pan_display(const struct fb_var_screeninfo *var, |
659 | struct fb_info_gen *info); | 659 | struct fb_info_gen *info); |
660 | static int pm3fb_ioctl(struct inode *inode, struct file *file, | 660 | static int pm3fb_ioctl(struct fb_info *info, u_int cmd, u_long arg); |
661 | u_int cmd, u_long arg, int con, | ||
662 | struct fb_info *info); | ||
663 | 661 | ||
664 | 662 | ||
665 | /* the struct that hold them together */ | 663 | /* the struct that hold them together */ |
@@ -3438,9 +3436,7 @@ static int pm3fb_pan_display(const struct fb_var_screeninfo *var, | |||
3438 | return 0; | 3436 | return 0; |
3439 | } | 3437 | } |
3440 | 3438 | ||
3441 | static int pm3fb_ioctl(struct inode *inode, struct file *file, | 3439 | static int pm3fb_ioctl(struct fb_info *info, u_int cmd, u_long arg) |
3442 | u_int cmd, u_long arg, int con, | ||
3443 | struct fb_info *info) | ||
3444 | { | 3440 | { |
3445 | struct pm3fb_info *l_fb_info = (struct pm3fb_info *) info; | 3441 | struct pm3fb_info *l_fb_info = (struct pm3fb_info *) info; |
3446 | u32 cm, i; | 3442 | u32 cm, i; |
diff --git a/drivers/video/pmag-aa-fb.c b/drivers/video/pmag-aa-fb.c index 28d1fe5fe340..d92f352211ef 100644 --- a/drivers/video/pmag-aa-fb.c +++ b/drivers/video/pmag-aa-fb.c | |||
@@ -299,8 +299,7 @@ static int aafb_set_cmap(struct fb_cmap *cmap, int kspc, int con, | |||
299 | return -EINVAL; | 299 | return -EINVAL; |
300 | } | 300 | } |
301 | 301 | ||
302 | static int aafb_ioctl(struct inode *inode, struct file *file, u32 cmd, | 302 | static int aafb_ioctl(struct fb_info *info, u32 cmd, unsigned long arg) |
303 | unsigned long arg, int con, struct fb_info *info) | ||
304 | { | 303 | { |
305 | /* TODO: Not yet implemented */ | 304 | /* TODO: Not yet implemented */ |
306 | return -ENOIOCTLCMD; | 305 | return -ENOIOCTLCMD; |
diff --git a/drivers/video/radeonfb.c b/drivers/video/radeonfb.c index 600318f708f2..db9fb9074dbc 100644 --- a/drivers/video/radeonfb.c +++ b/drivers/video/radeonfb.c | |||
@@ -1497,8 +1497,8 @@ static int radeonfb_pan_display (struct fb_var_screeninfo *var, | |||
1497 | } | 1497 | } |
1498 | 1498 | ||
1499 | 1499 | ||
1500 | static int radeonfb_ioctl (struct inode *inode, struct file *file, unsigned int cmd, | 1500 | static int radeonfb_ioctl (struct fb_info *info, unsigned int cmd, |
1501 | unsigned long arg, struct fb_info *info) | 1501 | unsigned long arg) |
1502 | { | 1502 | { |
1503 | struct radeonfb_info *rinfo = (struct radeonfb_info *) info; | 1503 | struct radeonfb_info *rinfo = (struct radeonfb_info *) info; |
1504 | unsigned int tmp; | 1504 | unsigned int tmp; |
diff --git a/drivers/video/sis/sis_main.c b/drivers/video/sis/sis_main.c index dea1a46c67c4..8adf5bf91eee 100644 --- a/drivers/video/sis/sis_main.c +++ b/drivers/video/sis/sis_main.c | |||
@@ -1743,13 +1743,14 @@ sisfb_blank(int blank, struct fb_info *info) | |||
1743 | 1743 | ||
1744 | /* ----------- FBDev related routines for all series ---------- */ | 1744 | /* ----------- FBDev related routines for all series ---------- */ |
1745 | 1745 | ||
1746 | static int | 1746 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) |
1747 | sisfb_ioctl(struct inode *inode, struct file *file, | 1747 | static int sisfb_ioctl(struct fb_info *info, unsigned int cmd, |
1748 | unsigned int cmd, unsigned long arg, | 1748 | unsigned long arg) |
1749 | #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) | 1749 | #else |
1750 | int con, | 1750 | static int sisfb_ioctl(struct inode *inode, struct file *file, |
1751 | unsigned int cmd, unsigned long arg, | ||
1752 | struct fb_info *info) | ||
1751 | #endif | 1753 | #endif |
1752 | struct fb_info *info) | ||
1753 | { | 1754 | { |
1754 | struct sis_video_info *ivideo = (struct sis_video_info *)info->par; | 1755 | struct sis_video_info *ivideo = (struct sis_video_info *)info->par; |
1755 | struct sis_memreq sismemreq; | 1756 | struct sis_memreq sismemreq; |
@@ -1924,19 +1925,6 @@ sisfb_ioctl(struct inode *inode, struct file *file, | |||
1924 | return 0; | 1925 | return 0; |
1925 | } | 1926 | } |
1926 | 1927 | ||
1927 | #ifdef SIS_NEW_CONFIG_COMPAT | ||
1928 | static long | ||
1929 | sisfb_compat_ioctl(struct file *f, unsigned int cmd, unsigned long arg, struct fb_info *info) | ||
1930 | { | ||
1931 | int ret; | ||
1932 | |||
1933 | lock_kernel(); | ||
1934 | ret = sisfb_ioctl(NULL, f, cmd, arg, info); | ||
1935 | unlock_kernel(); | ||
1936 | return ret; | ||
1937 | } | ||
1938 | #endif | ||
1939 | |||
1940 | static int | 1928 | static int |
1941 | sisfb_get_fix(struct fb_fix_screeninfo *fix, int con, struct fb_info *info) | 1929 | sisfb_get_fix(struct fb_fix_screeninfo *fix, int con, struct fb_info *info) |
1942 | { | 1930 | { |
@@ -2007,7 +1995,7 @@ static struct fb_ops sisfb_ops = { | |||
2007 | #endif | 1995 | #endif |
2008 | .fb_sync = fbcon_sis_sync, | 1996 | .fb_sync = fbcon_sis_sync, |
2009 | #ifdef SIS_NEW_CONFIG_COMPAT | 1997 | #ifdef SIS_NEW_CONFIG_COMPAT |
2010 | .fb_compat_ioctl= sisfb_compat_ioctl, | 1998 | .fb_compat_ioctl= sisfb_ioctl, |
2011 | #endif | 1999 | #endif |
2012 | .fb_ioctl = sisfb_ioctl | 2000 | .fb_ioctl = sisfb_ioctl |
2013 | }; | 2001 | }; |
diff --git a/drivers/video/sis/sis_main.h b/drivers/video/sis/sis_main.h index 445bcbba03ae..70b6df371b8e 100644 --- a/drivers/video/sis/sis_main.h +++ b/drivers/video/sis/sis_main.h | |||
@@ -727,9 +727,14 @@ static int sisfb_ioctl(struct inode *inode, struct file *file, | |||
727 | #endif | 727 | #endif |
728 | 728 | ||
729 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0) | 729 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0) |
730 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) | ||
731 | static int sisfb_ioctl(struct fb_info *info, unsigned int cmd, | ||
732 | unsigned long arg); | ||
733 | #else | ||
730 | static int sisfb_ioctl(struct inode *inode, struct file *file, | 734 | static int sisfb_ioctl(struct inode *inode, struct file *file, |
731 | unsigned int cmd, unsigned long arg, | 735 | unsigned int cmd, unsigned long arg, |
732 | struct fb_info *info); | 736 | struct fb_info *info); |
737 | #endif | ||
733 | static int sisfb_set_par(struct fb_info *info); | 738 | static int sisfb_set_par(struct fb_info *info); |
734 | static int sisfb_blank(int blank, | 739 | static int sisfb_blank(int blank, |
735 | struct fb_info *info); | 740 | struct fb_info *info); |
diff --git a/drivers/video/sstfb.c b/drivers/video/sstfb.c index 8a5ce210bb27..99921df35474 100644 --- a/drivers/video/sstfb.c +++ b/drivers/video/sstfb.c | |||
@@ -771,8 +771,7 @@ static int sstfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, | |||
771 | return 0; | 771 | return 0; |
772 | } | 772 | } |
773 | 773 | ||
774 | static int sstfb_ioctl(struct inode *inode, struct file *file, | 774 | static int sstfb_ioctl(struct fb_info *info, u_int cmd, u_long arg) |
775 | u_int cmd, u_long arg, struct fb_info *info ) | ||
776 | { | 775 | { |
777 | struct sstfb_par *par = info->par; | 776 | struct sstfb_par *par = info->par; |
778 | struct pci_dev *sst_dev = par->dev; | 777 | struct pci_dev *sst_dev = par->dev; |
diff --git a/drivers/video/tcx.c b/drivers/video/tcx.c index 2b27b4474001..cb940771ec58 100644 --- a/drivers/video/tcx.c +++ b/drivers/video/tcx.c | |||
@@ -34,8 +34,7 @@ static int tcx_setcolreg(unsigned, unsigned, unsigned, unsigned, | |||
34 | static int tcx_blank(int, struct fb_info *); | 34 | static int tcx_blank(int, struct fb_info *); |
35 | 35 | ||
36 | static int tcx_mmap(struct fb_info *, struct file *, struct vm_area_struct *); | 36 | static int tcx_mmap(struct fb_info *, struct file *, struct vm_area_struct *); |
37 | static int tcx_ioctl(struct inode *, struct file *, unsigned int, | 37 | static int tcx_ioctl(struct fb_info *, unsigned int, unsigned long); |
38 | unsigned long, struct fb_info *); | ||
39 | static int tcx_pan_display(struct fb_var_screeninfo *, struct fb_info *); | 38 | static int tcx_pan_display(struct fb_var_screeninfo *, struct fb_info *); |
40 | 39 | ||
41 | /* | 40 | /* |
@@ -312,8 +311,8 @@ static int tcx_mmap(struct fb_info *info, struct file *file, struct vm_area_stru | |||
312 | vma); | 311 | vma); |
313 | } | 312 | } |
314 | 313 | ||
315 | static int tcx_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 314 | static int tcx_ioctl(struct fb_info *info, unsigned int cmd, |
316 | unsigned long arg, struct fb_info *info) | 315 | unsigned long arg) |
317 | { | 316 | { |
318 | struct tcx_par *par = (struct tcx_par *) info->par; | 317 | struct tcx_par *par = (struct tcx_par *) info->par; |
319 | 318 | ||
diff --git a/include/linux/fb.h b/include/linux/fb.h index a973be2cfe61..6da8a80a2662 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h | |||
@@ -608,12 +608,12 @@ struct fb_ops { | |||
608 | int (*fb_sync)(struct fb_info *info); | 608 | int (*fb_sync)(struct fb_info *info); |
609 | 609 | ||
610 | /* perform fb specific ioctl (optional) */ | 610 | /* perform fb specific ioctl (optional) */ |
611 | int (*fb_ioctl)(struct inode *inode, struct file *file, unsigned int cmd, | 611 | int (*fb_ioctl)(struct fb_info *info, unsigned int cmd, |
612 | unsigned long arg, struct fb_info *info); | 612 | unsigned long arg); |
613 | 613 | ||
614 | /* Handle 32bit compat ioctl (optional) */ | 614 | /* Handle 32bit compat ioctl (optional) */ |
615 | long (*fb_compat_ioctl)(struct file *f, unsigned cmd, unsigned long arg, | 615 | int (*fb_compat_ioctl)(struct fb_info *info, unsigned cmd, |
616 | struct fb_info *info); | 616 | unsigned long arg); |
617 | 617 | ||
618 | /* perform fb specific mmap */ | 618 | /* perform fb specific mmap */ |
619 | int (*fb_mmap)(struct fb_info *info, struct file *file, struct vm_area_struct *vma); | 619 | int (*fb_mmap)(struct fb_info *info, struct file *file, struct vm_area_struct *vma); |