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
3c7f4c76
Commit
3c7f4c76
authored
Oct 11, 2002
by
James Simmons
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed last console and old api related things. Removed experimental flags.
parent
0406890a
Changes
31
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
230 additions
and
540 deletions
+230
-540
drivers/video/Config.in
drivers/video/Config.in
+38
-141
drivers/video/Makefile
drivers/video/Makefile
+0
-1
drivers/video/anakinfb.c
drivers/video/anakinfb.c
+0
-1
drivers/video/aty/atyfb_base.c
drivers/video/aty/atyfb_base.c
+4
-16
drivers/video/aty/mach64_ct.c
drivers/video/aty/mach64_ct.c
+0
-2
drivers/video/aty/mach64_cursor.c
drivers/video/aty/mach64_cursor.c
+0
-2
drivers/video/aty/mach64_gx.c
drivers/video/aty/mach64_gx.c
+0
-2
drivers/video/clps711xfb.c
drivers/video/clps711xfb.c
+0
-2
drivers/video/dnfb.c
drivers/video/dnfb.c
+0
-1
drivers/video/fbcon.c
drivers/video/fbcon.c
+11
-157
drivers/video/fbgen.c
drivers/video/fbgen.c
+7
-9
drivers/video/fbmem.c
drivers/video/fbmem.c
+4
-5
drivers/video/fm2fb.c
drivers/video/fm2fb.c
+0
-1
drivers/video/g364fb.c
drivers/video/g364fb.c
+2
-5
drivers/video/hitfb.c
drivers/video/hitfb.c
+0
-3
drivers/video/hpfb.c
drivers/video/hpfb.c
+0
-1
drivers/video/macfb.c
drivers/video/macfb.c
+1
-4
drivers/video/maxinefb.c
drivers/video/maxinefb.c
+0
-3
drivers/video/modedb.c
drivers/video/modedb.c
+3
-5
drivers/video/neofb.c
drivers/video/neofb.c
+2
-5
drivers/video/offb.c
drivers/video/offb.c
+0
-2
drivers/video/pmag-ba-fb.c
drivers/video/pmag-ba-fb.c
+0
-3
drivers/video/pmagb-b-fb.c
drivers/video/pmagb-b-fb.c
+0
-3
drivers/video/q40fb.c
drivers/video/q40fb.c
+0
-1
drivers/video/sgivwfb.c
drivers/video/sgivwfb.c
+1
-2
drivers/video/skeletonfb.c
drivers/video/skeletonfb.c
+1
-4
drivers/video/tdfxfb.c
drivers/video/tdfxfb.c
+150
-147
drivers/video/tx3912fb.c
drivers/video/tx3912fb.c
+1
-1
drivers/video/vesafb.c
drivers/video/vesafb.c
+1
-3
drivers/video/vfb.c
drivers/video/vfb.c
+2
-3
include/linux/fb.h
include/linux/fb.h
+2
-5
No files found.
drivers/video/Config.in
View file @
3c7f4c76
This diff is collapsed.
Click to expand it.
drivers/video/Makefile
View file @
3c7f4c76
...
...
@@ -106,7 +106,6 @@ obj-$(CONFIG_FBCON_ILBM) += fbcon-ilbm.o
obj-$(CONFIG_FBCON_IPLAN2P2)
+=
fbcon-iplan2p2.o
obj-$(CONFIG_FBCON_IPLAN2P4)
+=
fbcon-iplan2p4.o
obj-$(CONFIG_FBCON_IPLAN2P8)
+=
fbcon-iplan2p8.o
obj-$(CONFIG_FBCON_MFB)
+=
fbcon-mfb.o
obj-$(CONFIG_FBCON_HGA)
+=
fbcon-hga.o
obj-$(CONFIG_FBCON_STI)
+=
fbcon-sti.o
obj-$(CONFIG_FBCON_ACCEL)
+=
fbcon-accel.o
...
...
drivers/video/anakinfb.c
View file @
3c7f4c76
...
...
@@ -62,7 +62,6 @@ anakinfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue,
static
struct
fb_ops
anakinfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
anakinfb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
drivers/video/aty/atyfb_base.c
View file @
3c7f4c76
...
...
@@ -146,11 +146,11 @@ static int atyfb_check_var(struct fb_var_screeninfo *var,
static
int
atyfb_set_par
(
struct
fb_info
*
info
);
static
int
atyfb_setcolreg
(
u_int
regno
,
u_int
red
,
u_int
green
,
u_int
blue
,
u_int
transp
,
struct
fb_info
*
info
);
static
int
atyfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
atyfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
);
static
int
atyfb_blank
(
int
blank
,
struct
fb_info
*
info
);
static
int
atyfb_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
u_int
cmd
,
u_long
arg
,
int
con
,
struct
fb_info
*
info
);
u_long
arg
,
struct
fb_info
*
info
);
extern
void
atyfb_fillrect
(
struct
fb_info
*
info
,
struct
fb_fillrect
*
rect
);
extern
void
atyfb_copyarea
(
struct
fb_info
*
info
,
struct
fb_copyarea
*
area
);
extern
void
atyfb_imageblit
(
struct
fb_info
*
info
,
struct
fb_image
*
image
);
...
...
@@ -195,17 +195,10 @@ int atyfb_init(void);
int
atyfb_setup
(
char
*
);
#endif
int
gen_get_var
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
)
{
*
var
=
info
->
var
;
return
0
;
}
static
struct
fb_ops
atyfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_open
=
atyfb_open
,
.
fb_release
=
atyfb_release
,
.
fb_set_var
=
gen_set_var
,
.
fb_check_var
=
atyfb_check_var
,
.
fb_set_par
=
atyfb_set_par
,
.
fb_setcolreg
=
atyfb_setcolreg
,
...
...
@@ -1002,7 +995,7 @@ static int atyfb_release(struct fb_info *info, int user)
* This call looks only at xoffset, yoffset and the FB_VMODE_YWRAP flag
*/
static
int
atyfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
atyfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
struct
atyfb_par
*
par
=
(
struct
atyfb_par
*
)
info
->
par
;
...
...
@@ -1044,7 +1037,7 @@ struct atyclk {
#endif
static
int
atyfb_ioctl
(
struct
inode
*
inode
,
struct
file
*
file
,
u_int
cmd
,
u_long
arg
,
int
con
,
struct
fb_info
*
info
)
u_long
arg
,
struct
fb_info
*
info
)
{
#if defined(__sparc__) || (defined(DEBUG) && defined(CONFIG_FB_ATY_CT))
struct
atyfb_par
*
par
=
(
struct
atyfb_par
*
)
info
->
par
;
...
...
@@ -1829,9 +1822,7 @@ static int __init aty_init(struct fb_info *info, const char *name)
info
->
node
=
NODEV
;
info
->
fbops
=
&
atyfb_ops
;
info
->
pseudo_palette
=
pseudo_palette
;
info
->
currcon
=
-
1
;
strcpy
(
info
->
fontname
,
fontname
);
info
->
updatevar
=
gen_update_var
;
info
->
flags
=
FBINFO_FLAG_DEFAULT
;
#ifdef CONFIG_PMAC_BACKLIGHT
...
...
@@ -1956,9 +1947,6 @@ static int __init aty_init(struct fb_info *info, const char *name)
fb_alloc_cmap
(
&
info
->
cmap
,
256
,
0
);
var
.
activate
=
FB_ACTIVATE_NOW
;
gen_set_var
(
&
var
,
-
1
,
info
);
if
(
register_framebuffer
(
info
)
<
0
)
return
0
;
...
...
drivers/video/aty/mach64_ct.c
View file @
3c7f4c76
...
...
@@ -7,8 +7,6 @@
#include <asm/io.h>
#include <video/fbcon.h>
#include <video/mach64.h>
#include "atyfb.h"
...
...
drivers/video/aty/mach64_cursor.c
View file @
3c7f4c76
...
...
@@ -11,8 +11,6 @@
#include <asm/io.h>
#include <asm/uaccess.h>
#include <video/fbcon.h>
#ifdef __sparc__
#include <asm/pbm.h>
#include <asm/fbio.h>
...
...
drivers/video/aty/mach64_gx.c
View file @
3c7f4c76
...
...
@@ -9,8 +9,6 @@
#include <asm/io.h>
#include <video/fbcon.h>
#include <video/mach64.h>
#include "atyfb.h"
...
...
drivers/video/clps711xfb.c
View file @
3c7f4c76
...
...
@@ -194,7 +194,6 @@ static struct fb_ops clps7111fb_ops = {
.
owner
=
THIS_MODULE
,
.
fb_check_var
=
clps7111fb_check_var
,
.
fb_set_par
=
clps7111fb_set_par
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
clps7111fb_setcolreg
,
.
fb_blank
=
clps7111fb_blank
,
.
fb_fillrect
=
cfb_fillrect
,
...
...
@@ -322,7 +321,6 @@ int __init clps711xfb_init(void)
clps_writeb
(
clps_readb
(
PDDR
)
|
EDB_PD3_LCDBL
,
PDDR
);
}
gen_set_var
(
&
cfb
->
var
,
-
1
,
cfb
);
err
=
register_framebuffer
(
cfb
);
out:
return
err
;
...
...
drivers/video/dnfb.c
View file @
3c7f4c76
...
...
@@ -117,7 +117,6 @@ static void dnfb_copyarea(struct fb_info *info, struct fb_copyarea *area);
static
struct
fb_ops
dn_fb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_blank
=
dnfb_blank
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
dnfb_copyarea
,
...
...
drivers/video/fbcon.c
View file @
3c7f4c76
...
...
@@ -335,14 +335,14 @@ int set_all_vcs(int fbidx, struct fb_ops *fb, struct fb_var_screeninfo *var,
int
unit
,
err
;
var
->
activate
|=
FB_ACTIVATE_TEST
;
err
=
fb
->
fb
_set_var
(
var
,
PROC_CONSOLE
(
info
),
info
);
err
=
gen
_set_var
(
var
,
PROC_CONSOLE
(
info
),
info
);
var
->
activate
&=
~
FB_ACTIVATE_TEST
;
gen_set_disp
(
PROC_CONSOLE
(
info
),
info
);
if
(
err
)
return
err
;
for
(
unit
=
0
;
unit
<
MAX_NR_CONSOLES
;
unit
++
)
if
(
fb_display
[
unit
].
conp
&&
con2fb_map
[
unit
]
==
fbidx
)
{
fb
->
fb
_set_var
(
var
,
unit
,
info
);
gen
_set_var
(
var
,
unit
,
info
);
gen_set_disp
(
unit
,
info
);
}
return
0
;
...
...
@@ -503,7 +503,6 @@ static const char *fbcon_startup(void)
return
display_desc
;
}
static
void
fbcon_init
(
struct
vc_data
*
conp
,
int
init
)
{
int
unit
=
conp
->
vc_num
;
...
...
@@ -512,6 +511,10 @@ static void fbcon_init(struct vc_data *conp, int init)
/* on which frame buffer will we open this console? */
info
=
registered_fb
[(
int
)
con2fb_map
[
unit
]];
/* We trust the mode the driver supplies. */
if
(
info
->
fbops
->
fb_set_par
)
info
->
fbops
->
fb_set_par
(
info
);
gen_set_disp
(
unit
,
info
);
DPRINTK
(
"mode: %s
\n
"
,
info
->
modename
);
DPRINTK
(
"visual: %d
\n
"
,
info
->
fix
.
visual
);
...
...
@@ -991,7 +994,7 @@ static __inline__ void ywrap_up(int unit, struct vc_data *conp,
info
->
var
.
xoffset
=
0
;
info
->
var
.
yoffset
=
p
->
yscroll
*
fontheight
(
p
);
info
->
var
.
vmode
|=
FB_VMODE_YWRAP
;
info
->
update
var
(
unit
,
info
);
gen_update_
var
(
unit
,
info
);
scrollback_max
+=
count
;
if
(
scrollback_max
>
scrollback_phys_max
)
scrollback_max
=
scrollback_phys_max
;
...
...
@@ -1009,7 +1012,7 @@ static __inline__ void ywrap_down(int unit, struct vc_data *conp,
info
->
var
.
xoffset
=
0
;
info
->
var
.
yoffset
=
p
->
yscroll
*
fontheight
(
p
);
info
->
var
.
vmode
|=
FB_VMODE_YWRAP
;
info
->
update
var
(
unit
,
info
);
gen_update_
var
(
unit
,
info
);
scrollback_max
-=
count
;
if
(
scrollback_max
<
0
)
scrollback_max
=
0
;
...
...
@@ -1030,7 +1033,7 @@ static __inline__ void ypan_up(int unit, struct vc_data *conp,
info
->
var
.
xoffset
=
0
;
info
->
var
.
yoffset
=
p
->
yscroll
*
fontheight
(
p
);
info
->
var
.
vmode
&=
~
FB_VMODE_YWRAP
;
info
->
update
var
(
unit
,
info
);
gen_update_
var
(
unit
,
info
);
if
(
p
->
dispsw
->
clear_margins
)
p
->
dispsw
->
clear_margins
(
conp
,
p
,
1
);
scrollback_max
+=
count
;
...
...
@@ -1054,7 +1057,7 @@ static __inline__ void ypan_down(int unit, struct vc_data *conp,
info
->
var
.
xoffset
=
0
;
info
->
var
.
yoffset
=
p
->
yscroll
*
fontheight
(
p
);
info
->
var
.
vmode
&=
~
FB_VMODE_YWRAP
;
info
->
update
var
(
unit
,
info
);
gen_update_
var
(
unit
,
info
);
if
(
p
->
dispsw
->
clear_margins
)
p
->
dispsw
->
clear_margins
(
conp
,
p
,
1
);
scrollback_max
-=
count
;
...
...
@@ -2145,7 +2148,7 @@ static int fbcon_scrolldelta(struct vc_data *conp, int lines)
offset
-=
limit
;
info
->
var
.
xoffset
=
0
;
info
->
var
.
yoffset
=
offset
*
fontheight
(
p
);
info
->
update
var
(
unit
,
info
);
gen_update_
var
(
unit
,
info
);
if
(
!
scrollback_current
)
fbcon_cursor
(
conp
,
CM_DRAW
);
return
0
;
...
...
@@ -2268,154 +2271,6 @@ static int __init fbcon_show_logo( void )
image
.
dx
=
x
;
info
->
fbops
->
fb_imageblit
(
info
,
&
image
);
done
=
1
;
#else
#if defined(CONFIG_FBCON_CFB16) || defined(CONFIG_FBCON_CFB24) || \
defined(CONFIG_FBCON_CFB32) || defined(CONFIG_FB_SBUS)
if
(
info
->
fix
.
visual
==
FB_VISUAL_DIRECTCOLOR
)
{
unsigned
int
val
;
/* max. depth 32! */
int
bdepth
;
int
redshift
,
greenshift
,
blueshift
;
/* Bug: Doesn't obey msb_right ... (who needs that?) */
redshift
=
info
->
var
.
red
.
offset
;
greenshift
=
info
->
var
.
green
.
offset
;
blueshift
=
info
->
var
.
blue
.
offset
;
if
(
depth
>=
24
&&
(
depth
%
8
)
==
0
)
{
/* have at least 8 bits per color */
src
=
logo
;
bdepth
=
depth
/
8
;
for
(
y1
=
0
;
y1
<
LOGO_H
;
y1
++
)
{
dst
=
fb
+
y1
*
line
+
x
*
bdepth
;
for
(
x1
=
0
;
x1
<
LOGO_W
;
x1
++
,
src
++
)
{
val
=
(
*
src
<<
redshift
)
|
(
*
src
<<
greenshift
)
|
(
*
src
<<
blueshift
);
if
(
bdepth
==
4
&&
!
((
long
)
dst
&
3
))
{
/* Some cards require 32bit access */
fb_writel
(
val
,
dst
);
dst
+=
4
;
}
else
if
(
bdepth
==
2
&&
!
((
long
)
dst
&
1
))
{
/* others require 16bit access */
fb_writew
(
val
,
dst
);
dst
+=
2
;
}
else
{
#ifdef __LITTLE_ENDIAN
for
(
i
=
0
;
i
<
bdepth
;
++
i
)
#else
for
(
i
=
bdepth
-
1
;
i
>=
0
;
--
i
)
#endif
fb_writeb
(
val
>>
(
i
*
8
),
dst
++
);
}
}
}
}
else
if
(
depth
>=
12
&&
depth
<=
23
)
{
/* have 4..7 bits per color, using 16 color image */
unsigned
int
pix
;
src
=
linux_logo16
;
bdepth
=
(
depth
+
7
)
/
8
;
for
(
y1
=
0
;
y1
<
LOGO_H
;
y1
++
)
{
dst
=
fb
+
y1
*
line
+
x
*
bdepth
;
for
(
x1
=
0
;
x1
<
LOGO_W
/
2
;
x1
++
,
src
++
)
{
pix
=
*
src
>>
4
;
/* upper nibble */
val
=
(
pix
<<
redshift
)
|
(
pix
<<
greenshift
)
|
(
pix
<<
blueshift
);
#ifdef __LITTLE_ENDIAN
for
(
i
=
0
;
i
<
bdepth
;
++
i
)
#else
for
(
i
=
bdepth
-
1
;
i
>=
0
;
--
i
)
#endif
fb_writeb
(
val
>>
(
i
*
8
),
dst
++
);
pix
=
*
src
&
0x0f
;
/* lower nibble */
val
=
(
pix
<<
redshift
)
|
(
pix
<<
greenshift
)
|
(
pix
<<
blueshift
);
#ifdef __LITTLE_ENDIAN
for
(
i
=
0
;
i
<
bdepth
;
++
i
)
#else
for
(
i
=
bdepth
-
1
;
i
>=
0
;
--
i
)
#endif
fb_writeb
(
val
>>
(
i
*
8
),
dst
++
);
}
}
}
done
=
1
;
}
#endif
#if defined(CONFIG_FBCON_CFB16) || defined(CONFIG_FBCON_CFB24) || \
defined(CONFIG_FBCON_CFB32) || defined(CONFIG_FB_SBUS)
if
((
depth
%
8
==
0
)
&&
(
info
->
fix
.
visual
==
FB_VISUAL_TRUECOLOR
))
{
/* Modes without color mapping, needs special data transformation... */
unsigned
int
val
;
/* max. depth 32! */
int
bdepth
=
depth
/
8
;
unsigned
char
mask
[
9
]
=
{
0
,
0x80
,
0xc0
,
0xe0
,
0xf0
,
0xf8
,
0xfc
,
0xfe
,
0xff
};
unsigned
char
redmask
,
greenmask
,
bluemask
;
int
redshift
,
greenshift
,
blueshift
;
/* Bug: Doesn't obey msb_right ... (who needs that?) */
redmask
=
mask
[
info
->
var
.
red
.
length
<
8
?
info
->
var
.
red
.
length
:
8
];
greenmask
=
mask
[
info
->
var
.
green
.
length
<
8
?
info
->
var
.
green
.
length
:
8
];
bluemask
=
mask
[
info
->
var
.
blue
.
length
<
8
?
info
->
var
.
blue
.
length
:
8
];
redshift
=
info
->
var
.
red
.
offset
-
(
8
-
info
->
var
.
red
.
length
);
greenshift
=
info
->
var
.
green
.
offset
-
(
8
-
info
->
var
.
green
.
length
);
blueshift
=
info
->
var
.
blue
.
offset
-
(
8
-
info
->
var
.
blue
.
length
);
src
=
logo
;
for
(
y1
=
0
;
y1
<
LOGO_H
;
y1
++
)
{
dst
=
fb
+
y1
*
line
+
x
*
bdepth
;
for
(
x1
=
0
;
x1
<
LOGO_W
;
x1
++
,
src
++
)
{
val
=
safe_shift
((
linux_logo_red
[
*
src
-
32
]
&
redmask
),
redshift
)
|
safe_shift
((
linux_logo_green
[
*
src
-
32
]
&
greenmask
),
greenshift
)
|
safe_shift
((
linux_logo_blue
[
*
src
-
32
]
&
bluemask
),
blueshift
);
if
(
bdepth
==
4
&&
!
((
long
)
dst
&
3
))
{
/* Some cards require 32bit access */
fb_writel
(
val
,
dst
);
dst
+=
4
;
}
else
if
(
bdepth
==
2
&&
!
((
long
)
dst
&
1
))
{
/* others require 16bit access */
fb_writew
(
val
,
dst
);
dst
+=
2
;
}
else
{
#ifdef __LITTLE_ENDIAN
for
(
i
=
0
;
i
<
bdepth
;
++
i
)
#else
for
(
i
=
bdepth
-
1
;
i
>=
0
;
--
i
)
#endif
fb_writeb
(
val
>>
(
i
*
8
),
dst
++
);
}
}
}
done
=
1
;
}
#endif
#if defined(CONFIG_FBCON_CFB4)
if
(
depth
==
4
&&
info
->
fix
.
type
==
FB_TYPE_PACKED_PIXELS
)
{
src
=
logo
;
for
(
y1
=
0
;
y1
<
LOGO_H
;
y1
++
)
{
dst
=
fb
+
y1
*
line
+
x
/
2
;
for
(
x1
=
0
;
x1
<
LOGO_W
/
2
;
x1
++
)
{
u8
q
=
*
src
++
;
q
=
(
q
<<
4
)
|
(
q
>>
4
);
fb_writeb
(
q
,
dst
++
);
}
}
done
=
1
;
}
#endif
#if defined(CONFIG_FBCON_CFB8) || defined(CONFIG_FB_SBUS)
if
(
depth
==
8
&&
info
->
fix
.
type
==
FB_TYPE_PACKED_PIXELS
)
{
/* depth 8 or more, packed, with color registers */
src
=
logo
;
for
(
y1
=
0
;
y1
<
LOGO_H
;
y1
++
)
{
dst
=
fb
+
y1
*
line
+
x
;
for
(
x1
=
0
;
x1
<
LOGO_W
;
x1
++
)
fb_writeb
(
*
src
++
,
dst
++
);
}
done
=
1
;
}
#endif
#if defined(CONFIG_FBCON_AFB) || defined(CONFIG_FBCON_ILBM) || \
defined(CONFIG_FBCON_IPLAN2P2) || defined(CONFIG_FBCON_IPLAN2P4) || \
...
...
@@ -2526,7 +2381,6 @@ static int __init fbcon_show_logo( void )
done
=
1
;
}
#endif
#endif
/* CONFIG_FBCON_ACCEL */
}
if
(
info
->
fbops
->
fb_rasterimg
)
...
...
drivers/video/fbgen.c
View file @
3c7f4c76
...
...
@@ -43,7 +43,7 @@ int gen_set_var(struct fb_var_screeninfo *var, int con, struct fb_info *info)
info
->
fbops
->
fb_set_par
(
info
);
if
(
info
->
fbops
->
fb_pan_display
)
info
->
fbops
->
fb_pan_display
(
&
info
->
var
,
con
,
info
);
info
->
fbops
->
fb_pan_display
(
&
info
->
var
,
info
);
fb_set_cmap
(
&
info
->
cmap
,
1
,
info
);
}
}
...
...
@@ -51,8 +51,7 @@ int gen_set_var(struct fb_var_screeninfo *var, int con, struct fb_info *info)
return
0
;
}
int
fbgen_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
)
int
fbgen_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
int
xoffset
=
var
->
xoffset
;
int
yoffset
=
var
->
yoffset
;
...
...
@@ -62,12 +61,11 @@ int fbgen_pan_display(struct fb_var_screeninfo *var, int con,
xoffset
+
info
->
var
.
xres
>
info
->
var
.
xres_virtual
||
yoffset
+
info
->
var
.
yres
>
info
->
var
.
yres_virtual
)
return
-
EINVAL
;
if
(
con
==
info
->
currcon
)
{
if
(
info
->
fbops
->
fb_pan_display
)
{
if
((
err
=
info
->
fbops
->
fb_pan_display
(
var
,
con
,
info
)))
if
(
info
->
fbops
->
fb_pan_display
)
{
if
((
err
=
info
->
fbops
->
fb_pan_display
(
var
,
info
)))
return
err
;
}
else
return
-
EINVAL
;
else
return
-
EINVAL
;
}
info
->
var
.
xoffset
=
var
->
xoffset
;
info
->
var
.
yoffset
=
var
->
yoffset
;
...
...
@@ -87,7 +85,7 @@ int gen_update_var(int con, struct fb_info *info)
if
(
con
==
info
->
currcon
)
{
if
(
info
->
fbops
->
fb_pan_display
)
{
if
((
err
=
info
->
fbops
->
fb_pan_display
(
&
info
->
var
,
con
,
info
)))
if
((
err
=
info
->
fbops
->
fb_pan_display
(
&
info
->
var
,
info
)))
return
err
;
}
}
...
...
drivers/video/fbmem.c
View file @
3c7f4c76
...
...
@@ -377,7 +377,7 @@ static int fbmem_read_proc(char *buf, char **start, off_t offset,
if
(
*
fi
)
clen
+=
sprintf
(
buf
+
clen
,
"%d %s
\n
"
,
GET_FB_IDX
((
*
fi
)
->
node
),
(
*
fi
)
->
modename
);
(
*
fi
)
->
fix
.
id
);
*
start
=
buf
+
offset
;
if
(
clen
>
offset
)
clen
-=
offset
;
...
...
@@ -485,7 +485,7 @@ fb_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
i
=
set_all_vcs
(
fbidx
,
fb
,
&
var
,
info
);
if
(
i
)
return
i
;
}
else
{
i
=
fb
->
fb
_set_var
(
&
var
,
PROC_CONSOLE
(
info
),
info
);
i
=
gen
_set_var
(
&
var
,
PROC_CONSOLE
(
info
),
info
);
if
(
i
)
return
i
;
gen_set_disp
(
PROC_CONSOLE
(
info
),
info
);
}
...
...
@@ -507,7 +507,7 @@ fb_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
return
-
EFAULT
;
if
(
fb
->
fb_pan_display
==
NULL
)
return
(
var
.
xoffset
||
var
.
yoffset
)
?
-
EINVAL
:
0
;
if
((
i
=
fb
->
fb_pan_display
(
&
var
,
PROC_CONSOLE
(
info
),
info
)))
if
((
i
=
fb
->
fb_pan_display
(
&
var
,
info
)))
return
i
;
if
(
copy_to_user
((
void
*
)
arg
,
&
var
,
sizeof
(
var
)))
return
-
EFAULT
;
...
...
@@ -547,8 +547,7 @@ fb_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
default:
if
(
fb
->
fb_ioctl
==
NULL
)
return
-
EINVAL
;
return
fb
->
fb_ioctl
(
inode
,
file
,
cmd
,
arg
,
PROC_CONSOLE
(
info
),
info
);
return
fb
->
fb_ioctl
(
inode
,
file
,
cmd
,
arg
,
info
);
}
}
...
...
drivers/video/fm2fb.c
View file @
3c7f4c76
...
...
@@ -173,7 +173,6 @@ static int fm2fb_blank(int blank, struct fb_info *info);
static
struct
fb_ops
fm2fb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
fm2fb_setcolreg
,
.
fb_blank
=
fm2fb_blank
,
.
fb_fillrect
=
cfb_fillrect
,
...
...
drivers/video/g364fb.c
View file @
3c7f4c76
...
...
@@ -31,8 +31,6 @@
#include <asm/io.h>
#include <asm/jazz.h>
#include <video/fbcon.h>
/*
* Various defines for the G364
*/
...
...
@@ -108,7 +106,7 @@ static struct fb_var_screeninfo fb_var __initdata = {
*/
int
g364fb_init
(
void
);
static
int
g364fb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
g364fb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
);
static
int
g364fb_setcolreg
(
u_int
regno
,
u_int
red
,
u_int
green
,
u_int
blue
,
u_int
transp
,
...
...
@@ -117,7 +115,6 @@ static int g364fb_blank(int blank, struct fb_info *info);
static
struct
fb_ops
g364fb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
g364fb_setcolreg
,
.
fb_pan_display
=
g364fb_pan_display
,
.
fb_blank
=
g364fb_blank
,
...
...
@@ -148,7 +145,7 @@ void fbcon_g364fb_cursor(struct display *p, int mode, int x, int y)
*
* This call looks only at xoffset, yoffset and the FB_VMODE_YWRAP flag
*/
static
int
g364fb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
g364fb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
if
(
var
->
xoffset
||
var
->
yoffset
+
var
->
yres
>
var
->
yres_virtual
)
...
...
drivers/video/hitfb.c
View file @
3c7f4c76
...
...
@@ -122,7 +122,6 @@ static int hitfb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
hitfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_check_var
=
hitfb_check_var
,
.
fb_set_par
=
hitfb_set_par
,
.
fb_setcolreg
=
hitfb_setcolreg
,
...
...
@@ -167,8 +166,6 @@ int __init hitfb_init(void)
size
=
(
fb_info
.
var
.
bits_per_pixel
==
8
)
?
256
:
16
;
fb_alloc_cmap
(
&
fb_info
.
cmap
,
size
,
0
);
gen_set_var
(
&
fb_info
.
var
,
-
1
,
&
fb_info
);
if
(
register_framebuffer
(
&
fb_info
)
<
0
)
return
-
EINVAL
;
...
...
drivers/video/hpfb.c
View file @
3c7f4c76
...
...
@@ -101,7 +101,6 @@ void hpfb_copyarea(struct fb_info *info, struct fb_copyarea *area)
static
struct
fb_ops
hpfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
hpfb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
hpfb_copyarea
,
...
...
drivers/video/macfb.c
View file @
3c7f4c76
...
...
@@ -222,7 +222,7 @@ static int dafb_setpalette (unsigned int regno, unsigned int red,
local_irq_save
(
flags
);
/* fb
con
will set an entire colourmap, but X won't. Hopefully
/* fb
dev
will set an entire colourmap, but X won't. Hopefully
this should accomodate both of them */
if
(
regno
!=
lastreg
+
1
)
{
int
i
;
...
...
@@ -585,7 +585,6 @@ static int macfb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
macfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
macfb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
@@ -951,8 +950,6 @@ void __init macfb_init(void)
fb_info
.
fbops
=
&
macfb_ops
;
fb_info
.
var
=
macfb_defined
;
fb_info
.
fix
=
macfb_fix
;
fb_info
.
currcon
=
-
1
;
fb_info
.
updatevar
=
gen_update_var
;
fb_info
.
pseudo_palette
=
pseudo_palette
;
fb_info
.
flags
=
FBINFO_FLAG_DEFAULT
;
...
...
drivers/video/maxinefb.c
View file @
3c7f4c76
...
...
@@ -111,7 +111,6 @@ static int maxinefb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
maxinefb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
maxinefb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
@@ -158,8 +157,6 @@ int __init maxinefb_init(void)
fb_info
.
screen_base
=
(
char
*
)
maxinefb_fix
.
smem_start
;
fb_info
.
var
=
maxinefb_defined
;
fb_info
.
fix
=
maxinefb_fix
;
fb_info
.
currcon
=
-
1
;
fb_info
.
updatevar
=
gen_update_var
;
fb_info
.
flags
=
FBINFO_FLAG_DEFAULT
;
fb_alloc_cmap
(
&
fb_info
.
cmap
,
256
,
0
);
...
...
drivers/video/modedb.c
View file @
3c7f4c76
...
...
@@ -16,8 +16,6 @@
#include <linux/fb.h>
#include <linux/sched.h>
#include <video/fbcon.h>
#undef DEBUG
#define name_matches(v, s, l) \
...
...
@@ -277,7 +275,7 @@ static int __init my_atoi(const char *name)
int
__fb_try_mode
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
,
const
struct
fb_videomode
*
mode
,
unsigned
int
bpp
)
{
int
err
;
int
err
=
1
;
DPRINTK
(
"Trying mode %s %dx%d-%d@%d
\n
"
,
mode
->
name
?
mode
->
name
:
"noname"
,
mode
->
xres
,
mode
->
yres
,
bpp
,
mode
->
refresh
);
...
...
@@ -298,9 +296,9 @@ int __fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
var
->
vsync_len
=
mode
->
vsync_len
;
var
->
sync
=
mode
->
sync
;
var
->
vmode
=
mode
->
vmode
;
err
=
info
->
fbops
->
fb_set_var
(
var
,
PROC_CONSOLE
(
info
),
info
);
if
(
info
->
fbops
->
fb_check_var
)
err
=
info
->
fbops
->
fb_check_var
(
var
,
info
);
var
->
activate
&=
~
FB_ACTIVATE_TEST
;
gen_set_disp
(
PROC_CONSOLE
(
info
),
info
);
return
!
err
;
}
...
...
drivers/video/neofb.c
View file @
3c7f4c76
...
...
@@ -1164,10 +1164,9 @@ static void neofb_update_start(struct fb_info *info,
/*
* Pan or Wrap the Display
*/
static
int
neofb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
fb
)
static
int
neofb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
struct
fb_info
*
info
=
(
struct
fb_info
*
)
fb
;
u_int
y_bottom
;
y_bottom
=
var
->
yoffset
;
...
...
@@ -1388,7 +1387,6 @@ static struct fb_ops neofb_ops = {
.
owner
=
THIS_MODULE
,
.
fb_check_var
=
neofb_check_var
,
.
fb_set_par
=
neofb_set_par
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
neofb_setcolreg
,
.
fb_pan_display
=
neofb_pan_display
,
.
fb_blank
=
neofb_blank
,
...
...
@@ -1758,7 +1756,6 @@ static struct fb_info *__devinit neo_alloc_fb_info(struct pci_dev *dev, const st
par
=
&
default_par
;
memset
(
par
,
0
,
sizeof
(
struct
neofb_par
));
info
->
currcon
=
-
1
;
info
->
fix
.
accel
=
id
->
driver_data
;
par
->
pci_burst
=
!
nopciburst
;
...
...
drivers/video/offb.c
View file @
3c7f4c76
...
...
@@ -24,7 +24,6 @@
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/fb.h>
#include <linux/selection.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <asm/io.h>
...
...
@@ -82,7 +81,6 @@ static void offb_init_fb(const char *name, const char *full_name,
static
struct
fb_ops
offb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
offb_setcolreg
,
.
fb_blank
=
offb_blank
,
.
fb_fillrect
=
cfb_fillrect
,
...
...
drivers/video/pmag-ba-fb.c
View file @
3c7f4c76
...
...
@@ -108,7 +108,6 @@ static int pmagbafb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
pmagbafb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
pmagbafb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
@@ -140,8 +139,6 @@ int __init pmagbafb_init_one(int slot)
info
->
var
=
pmagbafb_defined
;
info
->
fix
=
pmagbafb_fix
;
info
->
screen_base
=
pmagbafb_fix
.
smem_start
;
info
->
currcon
=
-
1
;
info
->
updatevar
=
gen_update_var
;
info
->
flags
=
FBINFO_FLAG_DEFAULT
;
fb_alloc_cmap
(
&
fb_info
.
cmap
,
256
,
0
);
...
...
drivers/video/pmagb-b-fb.c
View file @
3c7f4c76
...
...
@@ -111,7 +111,6 @@ static int pmagbbfb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
pmagbbfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
pmagbbfb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
@@ -143,8 +142,6 @@ int __init pmagbbfb_init_one(int slot)
info
->
var
=
pmagbbfb_defined
;
info
->
fix
=
pmagbbfb_fix
;
info
->
screen_base
=
pmagbbfb_fix
.
smem_start
;
info
->
currcon
=
-
1
;
info
->
updatevar
=
gen_update_var
;
info
->
flags
=
FBINFO_FLAG_DEFAULT
;
fb_alloc_cmap
(
&
fb_info
.
cmap
,
256
,
0
);
...
...
drivers/video/q40fb.c
View file @
3c7f4c76
...
...
@@ -66,7 +66,6 @@ static int q40fb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
q40fb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
q40fb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
drivers/video/sgivwfb.c
View file @
3c7f4c76
...
...
@@ -729,8 +729,7 @@ int __init sgivwfb_init(void)
goto
fail_ioremap_fbmem
;
}
/* turn on default video mode */
gen_set_var
(
&
fb_info
->
var
,
-
1
,
&
fb_info
);
fb_alloc_cmap
(
&
fb_info
.
cmap
,
256
,
0
);
if
(
register_framebuffer
(
&
fb_info
)
<
0
)
{
printk
(
KERN_ERR
...
...
drivers/video/skeletonfb.c
View file @
3c7f4c76
...
...
@@ -295,7 +295,7 @@ static int xxxfb_setcolreg(unsigned regno, unsigned red, unsigned green,
* Returns negative errno on error, or zero on success.
*
*/
static
int
xxxfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
xxxfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
const
struct
fb_info
*
info
)
{
/* ... */
...
...
@@ -497,9 +497,6 @@ static struct fb_ops xxxfb_ops = {
.
owner
=
THIS_MODULE
,
.
fb_open
=
xxxfb_open
,
/* only if you need it to do something */
.
fb_release
=
xxxfb_release
,
/* only if you need it to do something */
/* Stuff to go away. Use generic functions for now */
.
fb_set_var
=
gen_set_var
,
.
fb_check_var
=
xxxfb_check_var
,
.
fb_set_par
=
xxxfb_set_par
,
/* optional */
.
fb_setcolreg
=
xxxfb_setcolreg
,
...
...
drivers/video/tdfxfb.c
View file @
3c7f4c76
This diff is collapsed.
Click to expand it.
drivers/video/tx3912fb.c
View file @
3c7f4c76
...
...
@@ -94,7 +94,6 @@ static int tx3912fb_setcolreg(u_int regno, u_int red, u_int green,
*/
static
struct
fb_ops
tx3912fb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
tx3912fb_setcolreg
,
.
fb_fillrect
=
cfb_fillrect
,
.
fb_copyarea
=
cfb_copyarea
,
...
...
@@ -211,6 +210,7 @@ static int tx3912fb_setcolreg(u_int regno, u_int red, u_int green,
int
__init
tx3912fb_init
(
void
)
{
u_long
tx3912fb_paddr
=
0
;
int
size
=
(
info
->
var
.
bits_per_pixel
==
8
)
?
256
:
16
;
/* Disable the video logic */
outl
(
inl
(
TX3912_VIDEO_CTRL1
)
&
...
...
drivers/video/vesafb.c
View file @
3c7f4c76
...
...
@@ -59,7 +59,7 @@ static void (*pmi_pal)(void);
/* --------------------------------------------------------------------- */
static
int
vesafb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
vesafb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
int
offset
;
...
...
@@ -170,7 +170,6 @@ static int vesafb_setcolreg(unsigned regno, unsigned red, unsigned green,
static
struct
fb_ops
vesafb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_set_var
=
gen_set_var
,
.
fb_setcolreg
=
vesafb_setcolreg
,
.
fb_pan_display
=
vesafb_pan_display
,
.
fb_fillrect
=
cfb_fillrect
,
...
...
@@ -348,7 +347,6 @@ int __init vesafb_init(void)
fb_info
.
fbops
=
&
vesafb_ops
;
fb_info
.
var
=
vesafb_defined
;
fb_info
.
fix
=
vesafb_fix
;
fb_info
.
updatevar
=
gen_update_var
;
fb_info
.
pseudo_palette
=
pseudo_palette
;
fb_info
.
flags
=
FBINFO_FLAG_DEFAULT
;
...
...
drivers/video/vfb.c
View file @
3c7f4c76
...
...
@@ -87,13 +87,12 @@ static int vfb_check_var(struct fb_var_screeninfo *var,
static
int
vfb_set_par
(
struct
fb_info
*
info
);
static
int
vfb_setcolreg
(
u_int
regno
,
u_int
red
,
u_int
green
,
u_int
blue
,
u_int
transp
,
struct
fb_info
*
info
);
static
int
vfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
vfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
);
static
int
vfb_mmap
(
struct
fb_info
*
info
,
struct
file
*
file
,
struct
vm_area_struct
*
vma
);
static
struct
fb_ops
vfb_ops
=
{
.
fb_set_var
gen_set_var
,
.
fb_check_var
vfb_check_var
,
.
fb_set_par
vfb_set_par
,
.
fb_setcolreg
vfb_setcolreg
,
...
...
@@ -351,7 +350,7 @@ static int vfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue,
* This call looks only at xoffset, yoffset and the FB_VMODE_YWRAP flag
*/
static
int
vfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
static
int
vfb_pan_display
(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
)
{
if
(
var
->
vmode
&
FB_VMODE_YWRAP
)
{
...
...
include/linux/fb.h
View file @
3c7f4c76
...
...
@@ -317,9 +317,6 @@ struct fb_ops {
struct
module
*
owner
;
int
(
*
fb_open
)(
struct
fb_info
*
info
,
int
user
);
int
(
*
fb_release
)(
struct
fb_info
*
info
,
int
user
);
/* set settable parameters */
int
(
*
fb_set_var
)(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
/* checks var and creates a par based on it */
int
(
*
fb_check_var
)(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
);
/* set the video mode according to par */
...
...
@@ -330,7 +327,7 @@ struct fb_ops {
/* blank display */
int
(
*
fb_blank
)(
int
blank
,
struct
fb_info
*
info
);
/* pan display */
int
(
*
fb_pan_display
)(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
int
(
*
fb_pan_display
)(
struct
fb_var_screeninfo
*
var
,
struct
fb_info
*
info
);
/* draws a rectangle */
void
(
*
fb_fillrect
)(
struct
fb_info
*
info
,
struct
fb_fillrect
*
rect
);
/* Copy data from area to another */
...
...
@@ -341,7 +338,7 @@ struct fb_ops {
int
(
*
fb_poll
)(
struct
fb_info
*
info
,
poll_table
*
wait
);
/* perform fb specific ioctl (optional) */
int
(
*
fb_ioctl
)(
struct
inode
*
inode
,
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
,
int
con
,
struct
fb_info
*
info
);
unsigned
long
arg
,
struct
fb_info
*
info
);
/* perform fb specific mmap */
int
(
*
fb_mmap
)(
struct
fb_info
*
info
,
struct
file
*
file
,
struct
vm_area_struct
*
vma
);
/* switch to/from raster image mode */
...
...
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