Commit 06b051b9 authored by Jon Smirl's avatar Jon Smirl Committed by Linus Torvalds

[PATCH] fbdev: Allow core fb to be built as a module

Allow the framebuffer core to be built as a module to ease debugging.
Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent bd7ff3fa
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
menu "Graphics support" menu "Graphics support"
config FB config FB
bool "Support for frame buffer devices" tristate "Support for frame buffer devices"
---help--- ---help---
The frame buffer device provides an abstraction for the graphics The frame buffer device provides an abstraction for the graphics
hardware. It represents the frame buffer of some video hardware and hardware. It represents the frame buffer of some video hardware and
...@@ -160,7 +160,7 @@ config FB_ARMCLCD ...@@ -160,7 +160,7 @@ config FB_ARMCLCD
config FB_ACORN config FB_ACORN
bool "Acorn VIDC support" bool "Acorn VIDC support"
depends on FB && ARM && ARCH_ACORN depends on (FB = y) && ARM && ARCH_ACORN
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -172,7 +172,7 @@ config FB_ACORN ...@@ -172,7 +172,7 @@ config FB_ACORN
config FB_CLPS711X config FB_CLPS711X
bool "CLPS711X LCD support" bool "CLPS711X LCD support"
depends on FB && ARM && ARCH_CLPS711X depends on (FB = y) && ARM && ARCH_CLPS711X
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -180,7 +180,7 @@ config FB_CLPS711X ...@@ -180,7 +180,7 @@ config FB_CLPS711X
config FB_SA1100 config FB_SA1100
bool "SA-1100 LCD support" bool "SA-1100 LCD support"
depends on FB && ARM && ARCH_SA1100 depends on (FB = y) && ARM && ARCH_SA1100
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -208,7 +208,7 @@ config FB_CYBER2000 ...@@ -208,7 +208,7 @@ config FB_CYBER2000
config FB_APOLLO config FB_APOLLO
bool bool
depends on FB && APOLLO depends on (FB = y) && APOLLO
default y default y
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -216,7 +216,7 @@ config FB_APOLLO ...@@ -216,7 +216,7 @@ config FB_APOLLO
config FB_Q40 config FB_Q40
bool bool
depends on FB && Q40 depends on (FB = y) && Q40
default y default y
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
...@@ -277,7 +277,7 @@ config FB_CYBER ...@@ -277,7 +277,7 @@ config FB_CYBER
config FB_VIRGE config FB_VIRGE
bool "Amiga CyberVision 64/3D support " bool "Amiga CyberVision 64/3D support "
depends on FB && ZORRO && BROKEN depends on (FB = y) && ZORRO && BROKEN
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -292,7 +292,7 @@ config FB_VIRGE ...@@ -292,7 +292,7 @@ config FB_VIRGE
config FB_RETINAZ3 config FB_RETINAZ3
tristate "Amiga Retina Z3 support" tristate "Amiga Retina Z3 support"
depends on FB && ZORRO && BROKEN depends on (FB = y) && ZORRO && BROKEN
help help
This enables support for the Retina Z3 graphics card. Say N unless This enables support for the Retina Z3 graphics card. Say N unless
you have a Retina Z3 or plan to get one before you next recompile you have a Retina Z3 or plan to get one before you next recompile
...@@ -300,7 +300,7 @@ config FB_RETINAZ3 ...@@ -300,7 +300,7 @@ config FB_RETINAZ3
config FB_FM2 config FB_FM2
bool "Amiga FrameMaster II/Rainbow II support" bool "Amiga FrameMaster II/Rainbow II support"
depends on FB && ZORRO depends on (FB = y) && ZORRO
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -311,14 +311,14 @@ config FB_FM2 ...@@ -311,14 +311,14 @@ config FB_FM2
config FB_ATARI config FB_ATARI
bool "Atari native chipset support" bool "Atari native chipset support"
depends on FB && ATARI && BROKEN depends on (FB = y) && ATARI && BROKEN
help help
This is the frame buffer device driver for the builtin graphics This is the frame buffer device driver for the builtin graphics
chipset found in Ataris. chipset found in Ataris.
config FB_OF config FB_OF
bool "Open Firmware frame buffer device support" bool "Open Firmware frame buffer device support"
depends on FB && (PPC64 || PPC_OF) depends on (FB = y) && (PPC64 || PPC_OF)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -329,7 +329,7 @@ config FB_OF ...@@ -329,7 +329,7 @@ config FB_OF
config FB_CONTROL config FB_CONTROL
bool "Apple \"control\" display support" bool "Apple \"control\" display support"
depends on FB && PPC_PMAC depends on (FB = y) && PPC_PMAC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -340,7 +340,7 @@ config FB_CONTROL ...@@ -340,7 +340,7 @@ config FB_CONTROL
config FB_PLATINUM config FB_PLATINUM
bool "Apple \"platinum\" display support" bool "Apple \"platinum\" display support"
depends on FB && PPC_PMAC depends on (FB = y) && PPC_PMAC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -351,7 +351,7 @@ config FB_PLATINUM ...@@ -351,7 +351,7 @@ config FB_PLATINUM
config FB_VALKYRIE config FB_VALKYRIE
bool "Apple \"valkyrie\" display support" bool "Apple \"valkyrie\" display support"
depends on FB && (MAC || PPC_PMAC) depends on (FB = y) && (MAC || PPC_PMAC)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -362,7 +362,7 @@ config FB_VALKYRIE ...@@ -362,7 +362,7 @@ config FB_VALKYRIE
config FB_CT65550 config FB_CT65550
bool "Chips 65550 display support" bool "Chips 65550 display support"
depends on FB && PPC depends on (FB = y) && PPC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -373,7 +373,7 @@ config FB_CT65550 ...@@ -373,7 +373,7 @@ config FB_CT65550
config FB_ASILIANT config FB_ASILIANT
bool "Chips 69000 display support" bool "Chips 69000 display support"
depends on FB && PCI depends on (FB = y) && PCI
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -381,7 +381,7 @@ config FB_ASILIANT ...@@ -381,7 +381,7 @@ config FB_ASILIANT
config FB_IMSTT config FB_IMSTT
bool "IMS Twin Turbo display support" bool "IMS Twin Turbo display support"
depends on FB && PCI depends on (FB = y) && PCI
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
select FB_SOFT_CURSOR select FB_SOFT_CURSOR
help help
...@@ -390,7 +390,7 @@ config FB_IMSTT ...@@ -390,7 +390,7 @@ config FB_IMSTT
config FB_S3TRIO config FB_S3TRIO
bool "S3 Trio display support" bool "S3 Trio display support"
depends on FB && PPC && BROKEN depends on (FB = y) && PPC && BROKEN
help help
If you have a S3 Trio say Y. Say N for S3 Virge. If you have a S3 Trio say Y. Say N for S3 Virge.
...@@ -431,7 +431,7 @@ config FB_STI ...@@ -431,7 +431,7 @@ config FB_STI
config FB_MAC config FB_MAC
bool "Generic Macintosh display support" bool "Generic Macintosh display support"
depends on FB && MAC depends on (FB = y) && MAC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -440,7 +440,7 @@ config FB_MAC ...@@ -440,7 +440,7 @@ config FB_MAC
# bool ' Apple DAFB display support' CONFIG_FB_DAFB # bool ' Apple DAFB display support' CONFIG_FB_DAFB
config FB_HP300 config FB_HP300
bool bool
depends on FB && HP300 depends on (FB = y) && HP300
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
select FB_SOFT_CURSOR select FB_SOFT_CURSOR
...@@ -459,7 +459,7 @@ config FB_TGA ...@@ -459,7 +459,7 @@ config FB_TGA
config FB_VESA config FB_VESA
bool "VESA VGA graphics support" bool "VESA VGA graphics support"
depends on FB && (X86 || X86_64) depends on (FB = y) && (X86 || X86_64)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -501,7 +501,7 @@ config FB_HGA_ACCEL ...@@ -501,7 +501,7 @@ config FB_HGA_ACCEL
config VIDEO_SELECT config VIDEO_SELECT
bool bool
depends on FB && X86 depends on (FB = y) && X86
default y default y
config FB_SGIVW config FB_SGIVW
...@@ -516,7 +516,7 @@ config FB_SGIVW ...@@ -516,7 +516,7 @@ config FB_SGIVW
config FB_GBE config FB_GBE
bool "SGI Graphics Backend frame buffer support" bool "SGI Graphics Backend frame buffer support"
depends on FB && (SGI_IP32 || X86_VISWS) depends on (FB = y) && (SGI_IP32 || X86_VISWS)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -535,16 +535,16 @@ config FB_GBE_MEM ...@@ -535,16 +535,16 @@ config FB_GBE_MEM
config BUS_I2C config BUS_I2C
bool bool
depends on FB && VISWS depends on (FB = y) && VISWS
default y default y
config FB_SUN3 config FB_SUN3
bool "Sun3 framebuffer support" bool "Sun3 framebuffer support"
depends on FB && (SUN3 || SUN3X) && BROKEN depends on (FB = y) && (SUN3 || SUN3X) && BROKEN
config FB_BW2 config FB_BW2
bool "BWtwo support" bool "BWtwo support"
depends on FB && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3) depends on (FB = y) && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -554,7 +554,7 @@ config FB_BW2 ...@@ -554,7 +554,7 @@ config FB_BW2
config FB_CG3 config FB_CG3
bool "CGthree support" bool "CGthree support"
depends on FB && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3) depends on (FB = y) && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
select FB_SOFT_CURSOR select FB_SOFT_CURSOR
...@@ -563,7 +563,7 @@ config FB_CG3 ...@@ -563,7 +563,7 @@ config FB_CG3
config FB_CG6 config FB_CG6
bool "CGsix (GX,TurboGX) support" bool "CGsix (GX,TurboGX) support"
depends on FB && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3) depends on (FB = y) && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
select FB_SOFT_CURSOR select FB_SOFT_CURSOR
...@@ -595,7 +595,7 @@ config FB_PVR2 ...@@ -595,7 +595,7 @@ config FB_PVR2
config FB_EPSON1355 config FB_EPSON1355
bool "Epson 1355 framebuffer support" bool "Epson 1355 framebuffer support"
depends on FB && (SUPERH || ARCH_CEIVA) depends on (FB = y) && (SUPERH || ARCH_CEIVA)
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -753,6 +753,7 @@ config FB_MATROX ...@@ -753,6 +753,7 @@ config FB_MATROX
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
select FB_SOFT_CURSOR select FB_SOFT_CURSOR
select FB_TILEBLITTING
---help--- ---help---
Say Y here if you have a Matrox Millennium, Matrox Millennium II, Say Y here if you have a Matrox Millennium, Matrox Millennium II,
Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
...@@ -1209,13 +1210,13 @@ config PB1500_TFT ...@@ -1209,13 +1210,13 @@ config PB1500_TFT
config FB_AU1100 config FB_AU1100
bool "Au1100 LCD Driver" bool "Au1100 LCD Driver"
depends on FB && EXPERIMENTAL && PCI && MIPS && MIPS_PB1100=y depends on (FB = y) && EXPERIMENTAL && PCI && MIPS && MIPS_PB1100=y
source "drivers/video/geode/Kconfig" source "drivers/video/geode/Kconfig"
config FB_SBUS config FB_SBUS
bool "SBUS and UPA framebuffers" bool "SBUS and UPA framebuffers"
depends on FB && (SPARC32 || SPARC64) depends on (FB = y) && (SPARC32 || SPARC64)
help help
Say Y if you want support for SBUS or UPA based frame buffer device. Say Y if you want support for SBUS or UPA based frame buffer device.
...@@ -1275,7 +1276,7 @@ config FB_LEO ...@@ -1275,7 +1276,7 @@ config FB_LEO
config FB_PCI config FB_PCI
bool "PCI framebuffers" bool "PCI framebuffers"
depends on FB && PCI && (SPARC64 || SPARC32) depends on (FB = y) && PCI && (SPARC64 || SPARC32)
config FB_IGA config FB_IGA
bool "IGA 168x display support" bool "IGA 168x display support"
...@@ -1301,7 +1302,7 @@ config FB_HIT ...@@ -1301,7 +1302,7 @@ config FB_HIT
config FB_PMAG_AA config FB_PMAG_AA
bool "PMAG-AA TURBOchannel framebuffer support" bool "PMAG-AA TURBOchannel framebuffer support"
depends on FB && MACH_DECSTATION && TC depends on (FB = y) && MACH_DECSTATION && TC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -1312,7 +1313,7 @@ config FB_PMAG_AA ...@@ -1312,7 +1313,7 @@ config FB_PMAG_AA
config FB_PMAG_BA config FB_PMAG_BA
bool "PMAG-BA TURBOchannel framebuffer support" bool "PMAG-BA TURBOchannel framebuffer support"
depends on FB && MACH_DECSTATION && TC depends on (FB = y) && MACH_DECSTATION && TC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -1323,7 +1324,7 @@ config FB_PMAG_BA ...@@ -1323,7 +1324,7 @@ config FB_PMAG_BA
config FB_PMAGB_B config FB_PMAGB_B
bool "PMAGB-B TURBOchannel framebuffer support" bool "PMAGB-B TURBOchannel framebuffer support"
depends on FB && MACH_DECSTATION && TC depends on (FB = y) && MACH_DECSTATION && TC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -1335,7 +1336,7 @@ config FB_PMAGB_B ...@@ -1335,7 +1336,7 @@ config FB_PMAGB_B
config FB_MAXINE config FB_MAXINE
bool "Maxine (Personal DECstation) onboard framebuffer support" bool "Maxine (Personal DECstation) onboard framebuffer support"
depends on FB && MACH_DECSTATION && TC depends on (FB = y) && MACH_DECSTATION && TC
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
...@@ -1347,7 +1348,7 @@ config FB_MAXINE ...@@ -1347,7 +1348,7 @@ config FB_MAXINE
config FB_TX3912 config FB_TX3912
bool "TMPTX3912/PR31700 frame buffer support" bool "TMPTX3912/PR31700 frame buffer support"
depends on FB && NINO depends on (FB = y) && NINO
select FB_CFB_FILLRECT select FB_CFB_FILLRECT
select FB_CFB_COPYAREA select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT select FB_CFB_IMAGEBLIT
......
...@@ -8,11 +8,9 @@ obj-$(CONFIG_VT) += console/ ...@@ -8,11 +8,9 @@ obj-$(CONFIG_VT) += console/
obj-$(CONFIG_LOGO) += logo/ obj-$(CONFIG_LOGO) += logo/
obj-$(CONFIG_SYSFS) += backlight/ obj-$(CONFIG_SYSFS) += backlight/
obj-$(CONFIG_FB) += fbmem.o fbmon.o fbcmap.o fbsysfs.o modedb.o obj-$(CONFIG_FB) += fb.o
# Only include macmodes.o if we have FB support and are PPC fb-y := fbmem.o fbmon.o fbcmap.o fbsysfs.o modedb.o
ifeq ($(CONFIG_FB),y) fb-objs := $(fb-y)
obj-$(CONFIG_PPC) += macmodes.o
endif
obj-$(CONFIG_FB_CFB_FILLRECT) += cfbfillrect.o obj-$(CONFIG_FB_CFB_FILLRECT) += cfbfillrect.o
obj-$(CONFIG_FB_CFB_COPYAREA) += cfbcopyarea.o obj-$(CONFIG_FB_CFB_COPYAREA) += cfbcopyarea.o
......
...@@ -25,7 +25,9 @@ obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o ...@@ -25,7 +25,9 @@ obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o
obj-$(CONFIG_VGA_CONSOLE) += vgacon.o obj-$(CONFIG_VGA_CONSOLE) += vgacon.o
obj-$(CONFIG_MDA_CONSOLE) += mdacon.o obj-$(CONFIG_MDA_CONSOLE) += mdacon.o
obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o
obj-$(CONFIG_FB_TILEBLITTING) += tileblit.o ifeq ($(CONFIG_FB_TILEBLITTING),y)
obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += tileblit.o
endif
obj-$(CONFIG_FB_STI) += sticore.o obj-$(CONFIG_FB_STI) += sticore.o
......
...@@ -1205,7 +1205,22 @@ fbmem_init(void) ...@@ -1205,7 +1205,22 @@ fbmem_init(void)
} }
return 0; return 0;
} }
void __exit
fbmem_exit(void)
{
class_simple_destroy(fb_class);
}
#ifdef MODULE
module_init(fbmem_init);
module_exit(fbmem_exit);
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Framebuffer base");
#else
subsys_initcall(fbmem_init); subsys_initcall(fbmem_init);
subsys_exitcall(fbmem_exit);
#endif
int fb_new_modelist(struct fb_info *info) int fb_new_modelist(struct fb_info *info)
{ {
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/linux_logo.h> #include <linux/linux_logo.h>
#include <linux/stddef.h> #include <linux/stddef.h>
#include <linux/module.h>
#ifdef CONFIG_M68K #ifdef CONFIG_M68K
#include <asm/setup.h> #include <asm/setup.h>
...@@ -99,4 +100,4 @@ const struct linux_logo *fb_find_logo(int depth) ...@@ -99,4 +100,4 @@ const struct linux_logo *fb_find_logo(int depth)
} }
return logo; return logo;
} }
EXPORT_SYMBOL_GPL(fb_find_logo);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment