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
928c6224
Commit
928c6224
authored
Jul 23, 2002
by
James Simmons
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed all old fbgen code. Small cleanups.
parent
5dde0bf6
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
34 additions
and
96 deletions
+34
-96
drivers/video/Config.help
drivers/video/Config.help
+7
-7
drivers/video/Config.in
drivers/video/Config.in
+11
-13
drivers/video/Makefile
drivers/video/Makefile
+1
-1
drivers/video/aty128fb.c
drivers/video/aty128fb.c
+1
-1
drivers/video/fbgen.c
drivers/video/fbgen.c
+12
-18
include/linux/fb.h
include/linux/fb.h
+2
-56
No files found.
drivers/video/Config.help
View file @
928c6224
...
...
@@ -68,12 +68,6 @@ CONFIG_FB_PM2_CVPPC
Say Y to enable support for the Amiga Phase 5 CVisionPPC BVisionPPC
framebuffer cards. Phase 5 is no longer with us, alas.
CONFIG_FB_PM3
This is the frame buffer device driver for the 3DLabs Permedia3
chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
and maybe other boards.
CONFIG_FB_AMIGA
This is the frame buffer device driver for the builtin graphics
chipset found in Amigas.
...
...
@@ -83,6 +77,12 @@ CONFIG_FB_AMIGA
module will be called amifb.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
CONFIG_FB_PM3
This is the frame buffer device driver for the 3DLabs Permedia3
chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
and maybe other boards.
CONFIG_FB_AMIGA_OCS
This enables support for the original Agnus and Denise video chips,
found in the Amiga 1000 and most A500's and A2000's. If you intend
...
...
@@ -594,7 +594,7 @@ CONFIG_FB_IMSTT
many Macintosh and compatible computers.
CONFIG_FB_TX3912
The TX3912 is a Toshiba RISC processor based on the MIPS 3900 core
;
The TX3912 is a Toshiba RISC processor based on the MIPS 3900 core
see <http://www.toshiba.com/taec/components/Generic/risc/tx3912.htm>.
Say Y here to enable kernel support for the on-board framebuffer.
...
...
drivers/video/Config.in
View file @
928c6224
...
...
@@ -244,11 +244,11 @@ if [ "$CONFIG_FB" = "y" ]; then
define_tristate CONFIG_FBCON_MFB m
fi
fi
if [ "$CONFIG_FB_ACORN" = "y" ]; then
if [ "$CONFIG_FB_ACORN" = "y"
-o "$CONFIG_FB_SA1100" = "y"
]; then
define_tristate CONFIG_FBCON_CFB2 y
define_tristate CONFIG_FBCON_CFB4 y
else
if [ "$CONFIG_FB_ACORN" = "m" ]; then
if [ "$CONFIG_FB_ACORN" = "m"
-o "$CONFIG_FB_SA1100" = "m"
]; then
define_tristate CONFIG_FBCON_CFB2 m
define_tristate CONFIG_FBCON_CFB4 m
fi
...
...
@@ -264,7 +264,7 @@ if [ "$CONFIG_FB" = "y" ]; then
"$CONFIG_FB_VALKYRIE" = "y" -o "$CONFIG_FB_PLATINUM" = "y" -o \
"$CONFIG_FB_IGA" = "y" -o "$CONFIG_FB_MATROX" = "y" -o \
"$CONFIG_FB_CT65550" = "y" -o "$CONFIG_FB_PM2" = "y" -o \
"$CONFIG_FB_ATY" = "y" ]; then
"$CONFIG_FB_ATY" = "y"
-o "$CONFIG_FB_SA1100" = "y"
]; then
define_tristate CONFIG_FBCON_CFB8 y
else
if [ "$CONFIG_FB_ACORN" = "m" -o "$CONFIG_FB_ATARI" = "m" -o \
...
...
@@ -277,7 +277,8 @@ if [ "$CONFIG_FB" = "y" ]; then
"$CONFIG_FB_VIRGE" = "m" -o "$CONFIG_FB_CYBER" = "m" -o \
"$CONFIG_FB_VALKYRIE" = "m" -o "$CONFIG_FB_PLATINUM" = "m" -o \
"$CONFIG_FB_IGA" = "m" -o "$CONFIG_FB_MATROX" = "m" -o \
"$CONFIG_FB_CT65550" = "m" -o "$CONFIG_FB_PM2" = "m" ]; then
"$CONFIG_FB_CT65550" = "m" -o "$CONFIG_FB_PM2" = "m"-o \
"$CONFIG_FB_SA1100" = "m" ]; then
define_tristate CONFIG_FBCON_CFB8 m
fi
fi
...
...
@@ -290,7 +291,7 @@ if [ "$CONFIG_FB" = "y" ]; then
"$CONFIG_FB_VALKYRIE" = "y" -o "$CONFIG_FB_PLATINUM" = "y" -o \
"$CONFIG_FB_CT65550" = "y" -o "$CONFIG_FB_MATROX" = "y" -o \
"$CONFIG_FB_PM2" = "y" -o "$CONFIG_FB_CYBER2000" = "y" -o \
"$CONFIG_FB_ATY" = "y" ]; then
"$CONFIG_FB_ATY" = "y"
-o "$CONFIG_FB_SA1100" = "y"
]; then
define_tristate CONFIG_FBCON_CFB16 y
else
if [ "$CONFIG_FB_ATARI" = "m" -o "$CONFIG_FB_SIS" = "m" -o \
...
...
@@ -301,7 +302,8 @@ if [ "$CONFIG_FB" = "y" ]; then
"$CONFIG_FB_VIRGE" = "m" -o "$CONFIG_FB_CYBER" = "m" -o \
"$CONFIG_FB_VALKYRIE" = "m" -o "$CONFIG_FB_PLATINUM" = "m" -o \
"$CONFIG_FB_CT65550" = "m" -o "$CONFIG_FB_MATROX" = "m" -o \
"$CONFIG_FB_PM2" = "m" -o "$CONFIG_FB_CYBER2000" = "m" ]; then
"$CONFIG_FB_PM2" = "m" -o "$CONFIG_FB_CYBER2000" = "m" -o \
"$CONFIG_FB_SA1100" = "y" ]; then
define_tristate CONFIG_FBCON_CFB16 m
fi
fi
...
...
@@ -350,16 +352,14 @@ if [ "$CONFIG_FB" = "y" ]; then
"$CONFIG_FB_3DFX" = "y" -o "$CONFIG_FB_TX3912" = "y" -o \
"$CONFIG_FB_MAXINE" = "y" -o "$CONFIG_FB_APOLLO" = "y" -o \
"$CONFIG_FB_ATY128" = "y" -o "$CONFIG_FB_MAC" = "y" -o \
"$CONFIG_FB_RIVA" = "y" -o "$CONFIG_FB_SA1100" = "y" -o \
"$CONFIG_FB_OF" = "y" -o "$CONFIG_FB_SGIVW" = "y" -o \
"$CONFIG_FB_ATY" = "y" ]; then
"$CONFIG_FB_RIVA" = "y" -o "$CONFIG_FB_OF" = "y" -o \
"$CONFIG_FB_SGIVW" = "y" ]; then
define_tristate CONFIG_FBCON_ACCEL y
else
if [ "$CONFIG_FB_NEOMAGIC" = "m" -o "$CONFIG_FB_HIT" = "m" -o \
"$CONFIG_FB_G364" = "m" -o "$CONFIG_FB_VIRTUAL" = "m" -o \
"$CONFIG_FB_CLPS711X" = "m" -o "$CONFIG_FB_3DFX" = "m" -o \
"$CONFIG_FB_RIVA" = "m" -o "$CONFIG_FB_ATY128" = "m" -o \
"$CONFIG_FB_SGIVW" = "m" -o "$CONFIG_FB_ATY" = "m" ]; then
"$CONFIG_FB_RIVA" = "m" -o "$CONFIG_FB_SGIVW" = "m" ]; then
define_tristate CONFIG_FBCON_ACCEL m
fi
fi
...
...
@@ -376,13 +376,11 @@ if [ "$CONFIG_FB" = "y" ]; then
define_tristate CONFIG_FBCON_IPLAN2P2 y
define_tristate CONFIG_FBCON_IPLAN2P4 y
define_tristate CONFIG_FBCON_IPLAN2P8 y
# define_tristate CONFIG_FBCON_IPLAN2P16 y
else
if [ "$CONFIG_FB_ATARI" = "m" ]; then
define_tristate CONFIG_FBCON_IPLAN2P2 m
define_tristate CONFIG_FBCON_IPLAN2P4 m
define_tristate CONFIG_FBCON_IPLAN2P8 m
# define_tristate CONFIG_FBCON_IPLAN2P16 m
fi
fi
if [ "$CONFIG_FB_VGA16" = "y" ]; then
...
...
drivers/video/Makefile
View file @
928c6224
...
...
@@ -94,7 +94,7 @@ obj-$(CONFIG_FB_ATY) += aty/
obj-$(CONFIG_FB_SUN3)
+=
sun3fb.o
obj-$(CONFIG_FB_BWTWO)
+=
bwtwofb.o
obj-$(CONFIG_FB_HGA)
+=
hgafb.o
obj-$(CONFIG_FB_SA1100)
+=
sa1100fb.o
cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_SA1100)
+=
sa1100fb.o
obj-$(CONFIG_FB_VIRTUAL)
+=
vfb.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_HIT)
+=
hitfb.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_E1355)
+=
epson1355fb.o
...
...
drivers/video/aty128fb.c
View file @
928c6224
...
...
@@ -1748,7 +1748,7 @@ aty128_init(struct fb_info_aty128 *info, const char *name)
board_list
=
aty128_board_list_add
(
board_list
,
info
);
size
=
(
fb_display
[
con
].
var
.
bits_per_pixel
<=
8
)
?
256
:
32
;
size
=
(
var
.
bits_per_pixel
<=
8
)
?
256
:
32
;
fb_alloc_cmap
(
info
->
fb_info
.
cmap
,
size
,
0
);
if
(
register_framebuffer
(
&
info
->
fb_info
)
<
0
)
...
...
drivers/video/fbgen.c
View file @
928c6224
...
...
@@ -110,31 +110,27 @@ int gen_set_cmap(struct fb_cmap *cmap, int kspc, int con,
int
fbgen_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
)
{
struct
fb_info_gen
*
info2
=
(
struct
fb_info_gen
*
)
info
;
struct
fbgen_hwswitch
*
fbhw
=
info2
->
fbhw
;
int
xoffset
=
var
->
xoffset
;
int
yoffset
=
var
->
yoffset
;
int
err
;
if
(
xoffset
<
0
||
xoffset
+
fb_display
[
con
].
var
.
xres
>
fb_display
[
con
].
var
.
xres_virtual
||
yoffset
<
0
||
yoffset
+
fb_display
[
con
].
var
.
yres
>
fb_display
[
con
].
var
.
yres_virtual
)
if
(
xoffset
<
0
||
yoffset
<
0
||
xoffset
+
info
->
var
.
xres
>
info
->
var
.
xres_virtual
||
yoffset
+
info
->
var
.
yres
>
info
->
var
.
yres_virtual
)
return
-
EINVAL
;
if
(
con
==
info
->
currcon
)
{
if
(
fbhw
->
pan_display
)
{
if
((
err
=
fbhw
->
pan_display
(
var
,
info2
)))
if
(
info
->
fbops
->
fb_
pan_display
)
{
if
((
err
=
info
->
fbops
->
fb_pan_display
(
var
,
con
,
info
)))
return
err
;
}
else
return
-
EINVAL
;
}
fb_display
[
con
].
var
.
xoffset
=
var
->
xoffset
;
fb_display
[
con
].
var
.
yoffset
=
var
->
yoffset
;
info
->
var
.
xoffset
=
var
->
xoffset
;
info
->
var
.
yoffset
=
var
->
yoffset
;
if
(
var
->
vmode
&
FB_VMODE_YWRAP
)
fb_display
[
con
].
var
.
vmode
|=
FB_VMODE_YWRAP
;
info
->
var
.
vmode
|=
FB_VMODE_YWRAP
;
else
fb_display
[
con
].
var
.
vmode
&=
~
FB_VMODE_YWRAP
;
info
->
var
.
vmode
&=
~
FB_VMODE_YWRAP
;
return
0
;
}
...
...
@@ -273,12 +269,10 @@ int gen_switch(int con, struct fb_info *info)
int
fbgen_blank
(
int
blank
,
struct
fb_info
*
info
)
{
struct
fb_info_gen
*
info2
=
(
struct
fb_info_gen
*
)
info
;
struct
fbgen_hwswitch
*
fbhw
=
info2
->
fbhw
;
u16
black
[
16
];
struct
fb_cmap
cmap
;
if
(
fbhw
->
blank
&&
!
fbhw
->
blank
(
blank
,
info2
))
u16
black
[
16
];
if
(
info
->
fbops
->
fb_blank
&&
!
info
->
fbops
->
fb_blank
(
blank
,
info
))
return
0
;
if
(
blank
)
{
memset
(
black
,
0
,
16
*
sizeof
(
u16
));
...
...
include/linux/fb.h
View file @
928c6224
...
...
@@ -304,7 +304,6 @@ extern int GET_FB_IDX(kdev_t rdev);
#include <linux/devfs_fs_kernel.h>
struct
fb_info
;
struct
fb_info_gen
;
struct
vm_area_struct
;
struct
file
;
...
...
@@ -396,67 +395,21 @@ struct fb_info {
#define FBINFO_FLAG_DEFAULT 0
#endif
/*
* This structure abstracts from the underlying hardware. It is not
* mandatory but used by the `generic' frame buffer operations.
* Read drivers/video/skeletonfb.c for more information.
*/
struct
fbgen_hwswitch
{
void
(
*
detect
)(
void
);
int
(
*
encode_fix
)(
struct
fb_fix_screeninfo
*
fix
,
const
void
*
par
,
struct
fb_info_gen
*
info
);
int
(
*
decode_var
)(
const
struct
fb_var_screeninfo
*
var
,
void
*
par
,
struct
fb_info_gen
*
info
);
int
(
*
encode_var
)(
struct
fb_var_screeninfo
*
var
,
const
void
*
par
,
struct
fb_info_gen
*
info
);
void
(
*
get_par
)(
void
*
par
,
struct
fb_info_gen
*
info
);
void
(
*
set_par
)(
const
void
*
par
,
struct
fb_info_gen
*
info
);
int
(
*
getcolreg
)(
unsigned
regno
,
unsigned
*
red
,
unsigned
*
green
,
unsigned
*
blue
,
unsigned
*
transp
,
struct
fb_info
*
info
);
int
(
*
pan_display
)(
const
struct
fb_var_screeninfo
*
var
,
struct
fb_info_gen
*
info
);
int
(
*
blank
)(
int
blank_mode
,
struct
fb_info_gen
*
info
);
void
(
*
set_disp
)(
const
void
*
par
,
struct
display
*
disp
,
struct
fb_info_gen
*
info
);
};
struct
fb_info_gen
{
struct
fb_info
info
;
/* Entries for a generic frame buffer device */
/* Yes, this starts looking like C++ */
u_int
parsize
;
struct
fbgen_hwswitch
*
fbhw
;
/* From here on everything is device dependent */
};
/*
* `Generic' versions of the frame buffer device operations
*/
extern
int
fbgen_get_fix
(
struct
fb_fix_screeninfo
*
fix
,
int
con
,
struct
fb_info
*
info
);
extern
int
gen_get_fix
(
struct
fb_fix_screeninfo
*
fix
,
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_get_var
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
extern
int
gen_get_var
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_set_var
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
extern
int
gen_set_var
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_get_cmap
(
struct
fb_cmap
*
cmap
,
int
kspc
,
int
con
,
struct
fb_info
*
info
);
extern
int
gen_get_cmap
(
struct
fb_cmap
*
cmap
,
int
kspc
,
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_set_cmap
(
struct
fb_cmap
*
cmap
,
int
kspc
,
int
con
,
struct
fb_info
*
info
);
extern
int
gen_set_cmap
(
struct
fb_cmap
*
cmap
,
int
kspc
,
int
con
,
struct
fb_info
*
info
);
extern
int
fb
gen
_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
extern
int
fb_pan_display
(
struct
fb_var_screeninfo
*
var
,
int
con
,
struct
fb_info
*
info
);
extern
void
cfb_fillrect
(
struct
fb_info
*
info
,
struct
fb_fillrect
*
rect
);
extern
void
cfb_copyarea
(
struct
fb_info
*
info
,
struct
fb_copyarea
*
region
);
...
...
@@ -466,16 +419,9 @@ extern void cfb_imageblit(struct fb_info *info, struct fb_image *image);
* Helper functions
*/
extern
int
fbgen_do_set_var
(
struct
fb_var_screeninfo
*
var
,
int
isactive
,
struct
fb_info_gen
*
info
);
extern
void
fbgen_set_disp
(
int
con
,
struct
fb_info_gen
*
info
);
extern
void
do_install_cmap
(
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_update_var
(
int
con
,
struct
fb_info
*
info
);
extern
int
gen_update_var
(
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_switch
(
int
con
,
struct
fb_info
*
info
);
extern
int
fbgen_blank
(
int
blank
,
struct
fb_info
*
info
);
extern
int
fb_blank
(
int
blank
,
struct
fb_info
*
info
);
extern
int
gen_switch
(
int
con
,
struct
fb_info
*
info
);
extern
void
gen_set_disp
(
int
con
,
struct
fb_info
*
info
);
/* drivers/video/fbmem.c */
...
...
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