From: "Antonino A. Daplas" <adaplas@gmail.com>
To: James Simmons <jsimmons@infradead.org>, Jon Smirl <jonsmirl@gmail.com>
Cc: Linux Fbdev development list <linux-fbdev-devel@lists.sourceforge.net>
Subject: Move softcursor out of fbdev to fbcon
Date: Wed, 27 Jul 2005 15:49:02 +0800 [thread overview]
Message-ID: <42E73C6E.1090205@gmail.com> (raw)
The changelog says it all. This is a modification of Jon's patch, but
I have moved softcursor.c to the console directory. Also I removed
the "select FB_SOFTCURSOR" from video/Kconfig and made the compilation
of softcursor unconditional, if framebuffer console is enabled.
I don't think the fb_cursor hook is usable by other programs, so we
should just restrict this hook for fbcon use only. For userspace cursor
support, we need a new one. But instead of one function, I believe
it's better to provide several. Ie, something like below:
fbcursor_show()
fbcursor_move()
fbcursor_loadimage()
fbcursor_loadpalette()
fbcursor_start()
fbcursor_stop()
No need to pass all variables to just, say, move the cursor to x,y.
And the next step is to eliminate all fbcon-specific fields from
fb_info to another structure, such as fb_imageblit, fb_fillrect,
fb_cursor, fb_copyarea. We'll have a smaller kernel size for
if fbcon is not enabled.
Comments?
Tony
Patch follows:
fbcon/fbdev: Move softcursor out of fbdev to fbcon
According to Jon Smirl, filling in the field fb_cursor with soft_cursor for
drivers that do not support hardware cursors is redundant. The soft_cursor
function is usable by all drivers because it is just a wrapper around
fb_imageblit. And because soft_cursor is an fbcon-specific hook, the file
is moved to the console directory.
Thus, drivers that do not support hardware cursors can leave the fb_cursor
field blank. For drivers that do, they can fill up this field with their
own version.
The end result is a smaller code size. And if the framebuffer console is
not loaded, module/kernel size is also reduced because the soft_cursor
module will also not be loaded.
From: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
---
67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/console/softcursor.c | 72 +++++++++
86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/softcursor.c | 72 ---------
drivers/video/68328fb.c | 1
drivers/video/Kconfig | 79 ----------
drivers/video/Makefile | 1
drivers/video/acornfb.c | 1
drivers/video/amba-clcd.c | 1
drivers/video/amifb.c | 1
drivers/video/arcfb.c | 1
drivers/video/asiliantfb.c | 1
drivers/video/aty/aty128fb.c | 1
drivers/video/aty/atyfb_base.c | 1
drivers/video/aty/radeon_base.c | 1
drivers/video/bw2.c | 1
drivers/video/cg14.c | 1
drivers/video/cg3.c | 1
drivers/video/cg6.c | 1
drivers/video/chipsfb.c | 1
drivers/video/cirrusfb.c | 1
drivers/video/clps711xfb.c | 1
drivers/video/console/Makefile | 2
drivers/video/console/bitblit.c | 7
drivers/video/console/fbcon.h | 2
drivers/video/controlfb.c | 1
drivers/video/cyber2000fb.c | 1
drivers/video/dnfb.c | 1
drivers/video/epson1355fb.c | 1
drivers/video/ffb.c | 3
drivers/video/fm2fb.c | 1
drivers/video/gbefb.c | 1
drivers/video/geode/Kconfig | 1
drivers/video/geode/gx1fb_core.c | 1
drivers/video/hitfb.c | 1
drivers/video/hpfb.c | 1
drivers/video/i810/i810_main.c | 2
drivers/video/imsttfb.c | 1
drivers/video/imxfb.c | 1
drivers/video/intelfb/intelfbdrv.c | 2
drivers/video/kyro/fbdev.c | 1
drivers/video/leo.c | 1
drivers/video/macfb.c | 1
drivers/video/matrox/matroxfb_accel.c | 2
drivers/video/matrox/matroxfb_crtc2.c | 1
drivers/video/maxinefb.c | 1
drivers/video/neofb.c | 1
drivers/video/nvidia/nvidia.c | 2
drivers/video/offb.c | 1
drivers/video/p9100.c | 1
drivers/video/platinumfb.c | 1
drivers/video/pm2fb.c | 1
drivers/video/pmag-ba-fb.c | 1
drivers/video/pmagb-b-fb.c | 1
drivers/video/pvr2fb.c | 1
drivers/video/pxafb.c | 1
drivers/video/q40fb.c | 1
drivers/video/radeonfb.c | 1
drivers/video/s1d13xxxfb.c | 1
drivers/video/sa1100fb.c | 1
drivers/video/savage/savagefb_driver.c | 1
drivers/video/sgivwfb.c | 1
drivers/video/sis/sis_main.c | 2
drivers/video/skeletonfb.c | 9 -
drivers/video/sstfb.c | 1
drivers/video/stifb.c | 1
drivers/video/tcx.c | 1
drivers/video/tdfxfb.c | 1
drivers/video/tgafb.c | 1
drivers/video/tridentfb.c | 1
drivers/video/tx3912fb.c | 1
drivers/video/valkyriefb.c | 1
drivers/video/vesafb.c | 1
drivers/video/vfb.c | 1
drivers/video/vga16fb.c | 1
drivers/video/w100fb.c | 1
include/linux/fb.h | 1
75 files changed, 89 insertions(+), 229 deletions(-)
Index: drivers/video/68328fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/68328fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/68328fb.c (mode:100644)
@@ -113,7 +113,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_mmap = mc68x328fb_mmap,
};
Index: drivers/video/Kconfig
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/Kconfig (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/Kconfig (mode:100644)
@@ -65,15 +65,6 @@
blitting. This is used by drivers that don't provide their own
(accelerated) version.
-config FB_SOFT_CURSOR
- tristate
- depends on FB
- default n
- ---help---
- Include the soft_cursor function for generic software cursor support.
- This is used by drivers that don't provide their own (accelerated)
- version.
-
config FB_MACMODES
tristate
depends on FB
@@ -114,7 +105,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
This enables support for Cirrus Logic GD542x/543x based boards on
Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum.
@@ -133,7 +123,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Permedia2 AGP frame
buffer card from ASK, aka `Graphic Blaster Exxtreme'. There is a
@@ -152,7 +141,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This framebuffer device driver is for the ARM PrimeCell PL110
Colour LCD controller. ARM PrimeCells provide the building
@@ -169,7 +157,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Acorn VIDC graphics
hardware found in Acorn RISC PCs and other ARM-based machines. If
@@ -181,7 +168,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
config FB_SA1100
bool "SA-1100 LCD support"
@@ -189,7 +175,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is a framebuffer device for the SA-1100 LCD Controller.
See <http://www.linux-fbdev.org/> for information on framebuffer
@@ -204,7 +189,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
config FB_CYBER2000
tristate "CyberPro 2000/2010/5000 support"
@@ -212,7 +196,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This enables support for the Integraphics CyberPro 20x0 and 5000
VGA chips used in the Rebel.com Netwinder and other machines.
@@ -225,7 +208,6 @@
default y
select FB_CFB_FILLRECT
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
config FB_Q40
bool
@@ -234,12 +216,10 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
config FB_AMIGA
tristate "Amiga native chipset support"
depends on FB && AMIGA
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the builtin graphics
chipset found in Amigas.
@@ -279,7 +259,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This enables support for the Cybervision 64 graphics card from
Phase5. Please note that its use is not all that intuitive (i.e. if
@@ -294,7 +273,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This enables support for the Cybervision 64/3D graphics card from
Phase5. Please note that its use is not all that intuitive (i.e. if
@@ -317,7 +295,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Amiga FrameMaster
card from BSC (exhibited 1992 but not shipped as a CBM product).
@@ -328,7 +305,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This enables support for the Arc Monochrome LCD board. The board
is based on the KS-108 lcd controller and is typically a matrix
@@ -351,7 +327,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES
help
Say Y if you want support with Open Firmware for your graphics
@@ -363,7 +338,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES
help
This driver supports a frame buffer for the graphics adapter in the
@@ -375,7 +349,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES
help
This driver supports a frame buffer for the "platinum" graphics
@@ -387,7 +360,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES
help
This driver supports a frame buffer for the "valkyrie" graphics
@@ -399,7 +371,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Chips & Technologies
65550 graphics chip in PowerBooks.
@@ -410,13 +381,11 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
config FB_IMSTT
bool "IMS Twin Turbo display support"
depends on (FB = y) && PCI
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES if PPC
help
The IMS Twin Turbo is a PCI-based frame buffer card bundled with
@@ -434,7 +403,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for VGA 16 color graphic
cards. Say Y if you have such a card.
@@ -448,7 +416,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
default y
---help---
STI refers to the HP "Standard Text Interface" which is a set of
@@ -469,7 +436,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES
# bool ' Apple DAFB display support' CONFIG_FB_DAFB
@@ -478,7 +444,6 @@
depends on (FB = y) && HP300
select FB_CFB_FILLRECT
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
default y
config FB_TGA
@@ -487,7 +452,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for generic TGA graphic
cards. Say Y if you have one of those.
@@ -498,7 +462,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for generic VESA 2.0
compliant graphic cards. The older VESA 1.2 cards are not supported.
@@ -516,7 +479,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Say Y here if you have a Hercules mono graphics card.
@@ -545,7 +507,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
SGI Visual Workstation support for framebuffer graphics.
@@ -555,7 +516,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for SGI Graphics Backend.
This chip is used in SGI O2 and Visual Workstation 320/540.
@@ -583,7 +543,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the BWtwo frame buffer.
@@ -592,7 +551,6 @@
depends on (FB = y) && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the CGthree frame buffer.
@@ -601,7 +559,6 @@
depends on (FB = y) && ((SPARC32 || SPARC64) && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the CGsix (GX, TurboGX)
frame buffer.
@@ -612,7 +569,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
Say Y here if you have a PowerVR 2 card in your box. If you plan to
run linux on your Dreamcast, you will have to say Y here.
@@ -634,7 +590,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Build in support for the SED1355 Epson Research Embedded RAMDAC
LCD/CRT Controller (since redesignated as the S1D13505) as a
@@ -650,7 +605,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports graphics boards with the nVidia chips, TNT
and newer. For very old chipsets, such as the RIVA128, then use
@@ -681,7 +635,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports graphics boards with the nVidia Riva/Geforce
chips.
@@ -720,7 +673,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports the on-board graphics built in to the Intel 810
and 815 chipsets. Say Y if you have and plan to use such a board.
@@ -763,7 +715,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports the on-board graphics built in to the Intel
830M/845G/852GM/855GM/865G chipsets.
@@ -786,7 +737,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_TILEBLITTING
select FB_MACMODES if PPC_PMAC
---help---
@@ -927,7 +877,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES if PPC
help
Choose this option if you want to use an ATI Radeon graphics card as
@@ -945,7 +894,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES if PPC_OF
help
Choose this option if you want to use an ATI Radeon graphics card as
@@ -984,7 +932,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES if PPC_PMAC
help
This driver supports graphics boards with the ATI Rage128 chips.
@@ -1000,7 +947,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
select FB_MACMODES if PPC
help
This driver supports graphics boards with the ATI Mach64 chips.
@@ -1052,7 +998,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports notebooks and computers with S3 Savage PCI/AGP
chips.
@@ -1089,7 +1034,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the SiS 300, 315 and
330 series VGA chipsets. Specs available at <http://www.sis.com>
@@ -1117,7 +1061,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This driver supports notebooks with NeoMagic PCI chips.
Say Y if you have such a graphics card.
@@ -1131,7 +1074,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
graphics board.
@@ -1145,7 +1087,6 @@
select FB_CFB_IMAGEBLIT
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
- select FB_SOFT_CURSOR
help
This driver supports graphics boards with the 3Dfx Banshee/Voodoo3
chips. Say Y if you have such a graphics board.
@@ -1167,7 +1108,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
Voodoo2 (cvg) based graphics card.
@@ -1186,7 +1126,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
This driver is supposed to support graphics boards with the
Trident CyberXXXX/Image/CyberBlade chips mostly found in laptops
@@ -1264,7 +1203,6 @@
depends on FB_SBUS && SPARC64
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Creator, Creator3D,
and Elite3D graphics boards.
@@ -1275,7 +1213,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the TCX 24/8bit frame
buffer.
@@ -1286,7 +1223,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the CGfourteen frame
buffer on Desktop SPARCsystems with the SX graphics option.
@@ -1297,7 +1233,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the P9100 card
supported on Sparcbook 3 machines.
@@ -1308,7 +1243,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the SBUS-based Sun ZX
(leo) frame buffer cards.
@@ -1323,7 +1257,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the framebuffer device for the INTERGRAPHICS 1680 and
successor frame buffer cards.
@@ -1334,7 +1267,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
This is the frame buffer device driver for the Hitachi HD64461 LCD
frame buffer card.
@@ -1345,7 +1277,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
used mainly in the MIPS-based DECstation series.
@@ -1356,7 +1287,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
used mainly in the MIPS-based DECstation series.
@@ -1367,7 +1297,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Support for the PMAGB-B TURBOchannel framebuffer card used mainly
in the MIPS-based DECstation series. The card is currently only
@@ -1379,7 +1308,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Support for the onboard framebuffer (1024x768x8) in the Personal
DECstation series (Personal DECstation 5000/20, /25, /33, /50,
@@ -1391,7 +1319,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
The TX3912 is a Toshiba RISC processor based on the MIPS 3900 core
see <http://www.toshiba.com/taec/components/Generic/risc/tx3912.htm>.
@@ -1404,7 +1331,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
The G364 driver is the framebuffer used in MIPS Magnum 4000 and
Olivetti M700-10 systems.
@@ -1415,7 +1341,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Say Y here if you want to support the built-in frame buffer of
the Motorola 68328 CPU family.
@@ -1426,7 +1351,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
Frame buffer driver for the built-in LCD controller in the Intel
PXA2x0 processor.
@@ -1444,7 +1368,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
Frame buffer driver for the w100 as found on the Sharp SL-Cxx series.
@@ -1478,7 +1401,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
help
Support for S1D13XXX framebuffer device family (currently only
working with S1D13806). Product specs at
@@ -1490,7 +1412,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
This is a `virtual' frame buffer device. It operates on a chunk of
unswappable kernel memory instead of on the memory of a graphics
Index: drivers/video/Makefile
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/Makefile (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/Makefile (mode:100644)
@@ -15,7 +15,6 @@
obj-$(CONFIG_FB_CFB_FILLRECT) += cfbfillrect.o
obj-$(CONFIG_FB_CFB_COPYAREA) += cfbcopyarea.o
obj-$(CONFIG_FB_CFB_IMAGEBLIT) += cfbimgblt.o
-obj-$(CONFIG_FB_SOFT_CURSOR) += softcursor.o
obj-$(CONFIG_FB_MACMODES) += macmodes.o
# Hardware specific drivers go first
Index: drivers/video/acornfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/acornfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/acornfb.c (mode:100644)
@@ -926,7 +926,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
.fb_mmap = acornfb_mmap,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/amba-clcd.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/amba-clcd.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/amba-clcd.c (mode:100644)
@@ -332,7 +332,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_mmap = clcdfb_mmap,
};
Index: drivers/video/amifb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/amifb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/amifb.c (mode:100644)
@@ -1185,7 +1185,6 @@
.fb_fillrect = amifb_fillrect,
.fb_copyarea = amifb_copyarea,
.fb_imageblit = amifb_imageblit,
- .fb_cursor = soft_cursor,
.fb_ioctl = amifb_ioctl,
};
Index: drivers/video/arcfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/arcfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/arcfb.c (mode:100644)
@@ -514,7 +514,6 @@
.fb_fillrect = arcfb_fillrect,
.fb_copyarea = arcfb_copyarea,
.fb_imageblit = arcfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_ioctl = arcfb_ioctl,
};
Index: drivers/video/asiliantfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/asiliantfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/asiliantfb.c (mode:100644)
@@ -106,7 +106,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/* Calculate the ratios for the dot clocks without using a single long long
Index: drivers/video/aty/aty128fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/aty/aty128fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/aty/aty128fb.c (mode:100644)
@@ -478,7 +478,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
#ifdef CONFIG_PMAC_BACKLIGHT
Index: drivers/video/aty/atyfb_base.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/aty/atyfb_base.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/aty/atyfb_base.c (mode:100644)
@@ -292,7 +292,6 @@
.fb_fillrect = atyfb_fillrect,
.fb_copyarea = atyfb_copyarea,
.fb_imageblit = atyfb_imageblit,
- .fb_cursor = soft_cursor,
#ifdef __sparc__
.fb_mmap = atyfb_mmap,
#endif
Index: drivers/video/aty/radeon_base.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/aty/radeon_base.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/aty/radeon_base.c (mode:100644)
@@ -1873,7 +1873,6 @@
.fb_fillrect = radeonfb_fillrect,
.fb_copyarea = radeonfb_copyarea,
.fb_imageblit = radeonfb_imageblit,
- .fb_cursor = soft_cursor,
};
Index: drivers/video/bw2.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/bw2.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/bw2.c (mode:100644)
@@ -51,7 +51,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = bw2_mmap,
.fb_ioctl = bw2_ioctl,
- .fb_cursor = soft_cursor,
};
/* OBio addresses for the bwtwo registers */
Index: drivers/video/cg14.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/cg14.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/cg14.c (mode:100644)
@@ -49,7 +49,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = cg14_mmap,
.fb_ioctl = cg14_ioctl,
- .fb_cursor = soft_cursor,
};
#define CG14_MCR_INTENABLE_SHIFT 7
Index: drivers/video/cg3.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/cg3.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/cg3.c (mode:100644)
@@ -50,7 +50,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = cg3_mmap,
.fb_ioctl = cg3_ioctl,
- .fb_cursor = soft_cursor,
};
Index: drivers/video/cg6.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/cg6.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/cg6.c (mode:100644)
@@ -54,7 +54,6 @@
.fb_sync = cg6_sync,
.fb_mmap = cg6_mmap,
.fb_ioctl = cg6_ioctl,
- .fb_cursor = soft_cursor,
};
/* Offset of interesting structures in the OBIO space */
Index: drivers/video/chipsfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/chipsfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/chipsfb.c (mode:100644)
@@ -91,7 +91,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int chipsfb_check_var(struct fb_var_screeninfo *var,
Index: drivers/video/cirrusfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/cirrusfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/cirrusfb.c (mode:100644)
@@ -548,7 +548,6 @@
.fb_fillrect = cirrusfb_fillrect,
.fb_copyarea = cirrusfb_copyarea,
.fb_imageblit = cirrusfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*--- Hardware Specific Routines -------------------------------------------*/
Index: drivers/video/clps711xfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/clps711xfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/clps711xfb.c (mode:100644)
@@ -219,7 +219,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int
Index: drivers/video/console/Makefile
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/console/Makefile (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/console/Makefile (mode:100644)
@@ -26,7 +26,7 @@
obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o font.o
obj-$(CONFIG_VGA_CONSOLE) += vgacon.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 softcursor.o
ifeq ($(CONFIG_FB_TILEBLITTING),y)
obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += tileblit.o
endif
Index: drivers/video/console/bitblit.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/console/bitblit.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/console/bitblit.c (mode:100644)
@@ -232,6 +232,7 @@
int w = (vc->vc_font.width + 7) >> 3, c;
int y = real_y(p, vc->vc_y);
int attribute, use_sw = (vc->vc_cursor_type & 0x10);
+ int err = 1;
char *src;
cursor.set = 0;
@@ -368,7 +369,11 @@
cursor.image.depth = 1;
cursor.rop = ROP_XOR;
- info->fbops->fb_cursor(info, &cursor);
+ if (info->fbops->fb_cursor)
+ err = info->fbops->fb_cursor(info, &cursor);
+
+ if (err)
+ soft_cursor(info, &cursor);
ops->cursor_reset = 0;
}
Index: drivers/video/console/fbcon.h
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/console/fbcon.h (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/console/fbcon.h (mode:100644)
@@ -166,5 +166,5 @@
struct display *p, struct fbcon_ops *ops);
#endif
extern void fbcon_set_bitops(struct fbcon_ops *ops);
-
+extern int soft_cursor(struct fb_info *info, struct fb_cursor *cursor);
#endif /* _VIDEO_FBCON_H */
Index: drivers/video/console/softcursor.c
===================================================================
--- /dev/null (tree:86b5df80031a3c68459cc684c4ee9e00e9e38873)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/console/softcursor.c (mode:100644)
@@ -0,0 +1,72 @@
+/*
+ * linux/drivers/video/softcursor.c -- Generic software cursor for frame buffer devices
+ *
+ * Created 14 Nov 2002 by James Simmons
+ *
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file COPYING in the main directory of this archive
+ * for more details.
+ */
+
+#include <linux/module.h>
+#include <linux/string.h>
+#include <linux/tty.h>
+#include <linux/fb.h>
+#include <linux/slab.h>
+
+#include <asm/uaccess.h>
+#include <asm/io.h>
+
+int soft_cursor(struct fb_info *info, struct fb_cursor *cursor)
+{
+ unsigned int scan_align = info->pixmap.scan_align - 1;
+ unsigned int buf_align = info->pixmap.buf_align - 1;
+ unsigned int i, size, dsize, s_pitch, d_pitch;
+ struct fb_image *image;
+ u8 *dst, *src;
+
+ if (info->state != FBINFO_STATE_RUNNING)
+ return 0;
+
+ s_pitch = (cursor->image.width + 7) >> 3;
+ dsize = s_pitch * cursor->image.height;
+
+ src = kmalloc(dsize + sizeof(struct fb_image), GFP_ATOMIC);
+ if (!src)
+ return -ENOMEM;
+
+ image = (struct fb_image *) (src + dsize);
+ *image = cursor->image;
+ d_pitch = (s_pitch + scan_align) & ~scan_align;
+
+ size = d_pitch * image->height + buf_align;
+ size &= ~buf_align;
+ dst = fb_get_buffer_offset(info, &info->pixmap, size);
+
+ if (cursor->enable) {
+ switch (cursor->rop) {
+ case ROP_XOR:
+ for (i = 0; i < dsize; i++)
+ src[i] = image->data[i] ^ cursor->mask[i];
+ break;
+ case ROP_COPY:
+ default:
+ for (i = 0; i < dsize; i++)
+ src[i] = image->data[i] & cursor->mask[i];
+ break;
+ }
+ } else
+ memcpy(src, image->data, dsize);
+
+ fb_pad_aligned_buffer(dst, d_pitch, src, s_pitch, image->height);
+ image->data = dst;
+ info->fbops->fb_imageblit(info, image);
+ kfree(src);
+ return 0;
+}
+
+EXPORT_SYMBOL(soft_cursor);
+
+MODULE_AUTHOR("James Simmons <jsimmons@users.sf.net>");
+MODULE_DESCRIPTION("Generic software cursor");
+MODULE_LICENSE("GPL");
Index: drivers/video/controlfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/controlfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/controlfb.c (mode:100644)
@@ -176,7 +176,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
Index: drivers/video/cyber2000fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/cyber2000fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/cyber2000fb.c (mode:100644)
@@ -1064,7 +1064,6 @@
.fb_fillrect = cyber2000fb_fillrect,
.fb_copyarea = cyber2000fb_copyarea,
.fb_imageblit = cyber2000fb_imageblit,
- .fb_cursor = soft_cursor,
.fb_sync = cyber2000fb_sync,
};
Index: drivers/video/dnfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/dnfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/dnfb.c (mode:100644)
@@ -114,7 +114,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = dnfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
struct fb_var_screeninfo dnfb_var __devinitdata = {
Index: drivers/video/epson1355fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/epson1355fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/epson1355fb.c (mode:100644)
@@ -482,7 +482,6 @@
.fb_imageblit = cfb_imageblit,
.fb_read = epson1355fb_read,
.fb_write = epson1355fb_write,
- .fb_cursor = soft_cursor,
};
/* ------------------------------------------------------------------------- */
Index: drivers/video/ffb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/ffb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/ffb.c (mode:100644)
@@ -57,9 +57,6 @@
.fb_sync = ffb_sync,
.fb_mmap = ffb_mmap,
.fb_ioctl = ffb_ioctl,
-
- /* XXX Use FFB hw cursor once fb cursor API is better understood... */
- .fb_cursor = soft_cursor,
};
/* Register layout and definitions */
Index: drivers/video/fm2fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/fm2fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/fm2fb.c (mode:100644)
@@ -172,7 +172,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/gbefb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/gbefb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/gbefb.c (mode:100644)
@@ -1038,7 +1038,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/geode/Kconfig
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/geode/Kconfig (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/geode/Kconfig (mode:100644)
@@ -16,7 +16,6 @@
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FB_SOFT_CURSOR
---help---
Framebuffer driver for the display controller integrated into the
AMD Geode GX1 processor.
Index: drivers/video/geode/gx1fb_core.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/geode/gx1fb_core.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/geode/gx1fb_core.c (mode:100644)
@@ -213,7 +213,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static struct fb_info * __init gx1fb_init_fbinfo(void)
Index: drivers/video/hitfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/hitfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/hitfb.c (mode:100644)
@@ -262,7 +262,6 @@
.fb_fillrect = hitfb_fillrect,
.fb_copyarea = hitfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
int __init hitfb_init(void)
Index: drivers/video/hpfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/hpfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/hpfb.c (mode:100644)
@@ -193,7 +193,6 @@
.fb_fillrect = hpfb_fillrect,
.fb_copyarea = hpfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_sync = hpfb_sync,
};
Index: drivers/video/i810/i810_main.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/i810/i810_main.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/i810/i810_main.c (mode:100644)
@@ -1420,7 +1420,7 @@
if (!(par->dev_flags & USE_HWCUR) || !info->var.accel_flags ||
par->dev_flags & LOCKUP)
- return soft_cursor(info, cursor);
+ return -ENODEV;
if (cursor->image.width > 64 || cursor->image.height > 64)
return -ENXIO;
Index: drivers/video/imsttfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/imsttfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/imsttfb.c (mode:100644)
@@ -1344,7 +1344,6 @@
.fb_fillrect = imsttfb_fillrect,
.fb_copyarea = imsttfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_ioctl = imsttfb_ioctl,
};
Index: drivers/video/imxfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/imxfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/imxfb.c (mode:100644)
@@ -302,7 +302,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
.fb_blank = imxfb_blank,
- .fb_cursor = soft_cursor, /* FIXME: i.MX can do hardware cursor */
};
/*
Index: drivers/video/intelfb/intelfbdrv.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/intelfb/intelfbdrv.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/intelfb/intelfbdrv.c (mode:100644)
@@ -1494,7 +1494,7 @@
#endif
if (!dinfo->hwcursor)
- return soft_cursor(info, cursor);
+ return -ENODEV;
intelfbhw_cursor_hide(dinfo);
Index: drivers/video/kyro/fbdev.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/kyro/fbdev.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/kyro/fbdev.c (mode:100644)
@@ -669,7 +669,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int __devinit kyrofb_probe(struct pci_dev *pdev,
Index: drivers/video/leo.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/leo.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/leo.c (mode:100644)
@@ -51,7 +51,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = leo_mmap,
.fb_ioctl = leo_ioctl,
- .fb_cursor = soft_cursor,
};
#define LEO_OFF_LC_SS0_KRN 0x00200000UL
Index: drivers/video/macfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/macfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/macfb.c (mode:100644)
@@ -589,7 +589,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
void __init macfb_setup(char *options)
Index: drivers/video/matrox/matroxfb_accel.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/matrox/matroxfb_accel.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/matrox/matroxfb_accel.c (mode:100644)
@@ -122,7 +122,7 @@
ACCESS_FBINFO(fbops).fb_copyarea = cfb_copyarea;
ACCESS_FBINFO(fbops).fb_fillrect = cfb_fillrect;
ACCESS_FBINFO(fbops).fb_imageblit = cfb_imageblit;
- ACCESS_FBINFO(fbops).fb_cursor = soft_cursor;
+ ACCESS_FBINFO(fbops).fb_cursor = NULL;
accel = (ACCESS_FBINFO(fbcon).var.accel_flags & FB_ACCELF_TEXT) == FB_ACCELF_TEXT;
Index: drivers/video/matrox/matroxfb_crtc2.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/matrox/matroxfb_crtc2.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/matrox/matroxfb_crtc2.c (mode:100644)
@@ -576,7 +576,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static struct fb_var_screeninfo matroxfb_dh_defined = {
Index: drivers/video/maxinefb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/maxinefb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/maxinefb.c (mode:100644)
@@ -113,7 +113,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
int __init maxinefb_init(void)
Index: drivers/video/neofb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/neofb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/neofb.c (mode:100644)
@@ -1665,7 +1665,6 @@
.fb_fillrect = neofb_fillrect,
.fb_copyarea = neofb_copyarea,
.fb_imageblit = neofb_imageblit,
- .fb_cursor = soft_cursor,
};
/* --------------------------------------------------------------------- */
Index: drivers/video/nvidia/nvidia.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/nvidia/nvidia.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/nvidia/nvidia.c (mode:100644)
@@ -1350,7 +1350,7 @@
info->pixmap.flags = FB_PIXMAP_SYSTEM;
if (!hwcur)
- info->fbops->fb_cursor = soft_cursor;
+ info->fbops->fb_cursor = NULL;
info->var.accel_flags = (!noaccel);
switch (par->Architecture) {
Index: drivers/video/offb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/offb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/offb.c (mode:100644)
@@ -85,7 +85,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/p9100.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/p9100.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/p9100.c (mode:100644)
@@ -48,7 +48,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = p9100_mmap,
.fb_ioctl = p9100_ioctl,
- .fb_cursor = soft_cursor,
};
/* P9100 control registers */
Index: drivers/video/platinumfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/platinumfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/platinumfb.c (mode:100644)
@@ -109,7 +109,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/pm2fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/pm2fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/pm2fb.c (mode:100644)
@@ -1034,7 +1034,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/pmag-ba-fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/pmag-ba-fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/pmag-ba-fb.c (mode:100644)
@@ -117,7 +117,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
int __init pmagbafb_init_one(int slot)
Index: drivers/video/pmagb-b-fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/pmagb-b-fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/pmagb-b-fb.c (mode:100644)
@@ -118,7 +118,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
int __init pmagbbfb_init_one(int slot)
Index: drivers/video/pvr2fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/pvr2fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/pvr2fb.c (mode:100644)
@@ -230,7 +230,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static struct fb_videomode pvr2_modedb[] __initdata = {
Index: drivers/video/pxafb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/pxafb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/pxafb.c (mode:100644)
@@ -418,7 +418,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
.fb_blank = pxafb_blank,
- .fb_cursor = soft_cursor,
.fb_mmap = pxafb_mmap,
};
Index: drivers/video/q40fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/q40fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/q40fb.c (mode:100644)
@@ -84,7 +84,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int __init q40fb_probe(struct device *device)
Index: drivers/video/radeonfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/radeonfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/radeonfb.c (mode:100644)
@@ -2218,7 +2218,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
#endif
- .fb_cursor = soft_cursor,
};
Index: drivers/video/s1d13xxxfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/s1d13xxxfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/s1d13xxxfb.c (mode:100644)
@@ -388,7 +388,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor
};
static int s1d13xxxfb_width_tab[2][4] __devinitdata = {
Index: drivers/video/sa1100fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/sa1100fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/sa1100fb.c (mode:100644)
@@ -851,7 +851,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
.fb_blank = sa1100fb_blank,
- .fb_cursor = soft_cursor,
.fb_mmap = sa1100fb_mmap,
};
Index: drivers/video/savage/savagefb_driver.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/savage/savagefb_driver.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/savage/savagefb_driver.c (mode:100644)
@@ -1417,7 +1417,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
#endif
- .fb_cursor = soft_cursor,
};
/* --------------------------------------------------------------------- */
Index: drivers/video/sgivwfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/sgivwfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/sgivwfb.c (mode:100644)
@@ -124,7 +124,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_mmap = sgivwfb_mmap,
};
Index: drivers/video/sis/sis_main.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/sis/sis_main.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/sis/sis_main.c (mode:100644)
@@ -2270,7 +2270,9 @@
.fb_fillrect = fbcon_sis_fillrect,
.fb_copyarea = fbcon_sis_copyarea,
.fb_imageblit = cfb_imageblit,
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)
.fb_cursor = soft_cursor,
+#endif
.fb_sync = fbcon_sis_sync,
.fb_ioctl = sisfb_ioctl,
#ifdef CONFIG_COMPAT
Index: drivers/video/skeletonfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/skeletonfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/skeletonfb.c (mode:100644)
@@ -457,11 +457,8 @@
}
/**
- * xxxfb_cursor - REQUIRED function. If your hardware lacks support
- * for a cursor you can use the default cursor whose
- * function is called soft_cursor. It will always
- * work since it uses xxxfb_imageblit function which
- * is required.
+ * xxxfb_cursor - OPTIONAL. If your hardware lacks support
+ * for a cursor, leave this field NULL.
*
* @info: frame buffer structure that represents a single frame buffer
* @cursor: structure defining the cursor to draw.
@@ -663,7 +660,7 @@
.fb_fillrect = xxxfb_fillrect, /* Needed !!! */
.fb_copyarea = xxxfb_copyarea, /* Needed !!! */
.fb_imageblit = xxxfb_imageblit, /* Needed !!! */
- .fb_cursor = xxxfb_cursor, /* Needed !!! */
+ .fb_cursor = xxxfb_cursor, /* Optional !!! */
.fb_rotate = xxxfb_rotate,
.fb_poll = xxxfb_poll,
.fb_sync = xxxfb_sync,
Index: drivers/video/softcursor.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/softcursor.c (mode:100644)
+++ /dev/null (tree:67f1f768d5c715e7bd5fcd8fa71f946e883869ea)
@@ -1,72 +0,0 @@
-/*
- * linux/drivers/video/softcursor.c -- Generic software cursor for frame buffer devices
- *
- * Created 14 Nov 2002 by James Simmons
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive
- * for more details.
- */
-
-#include <linux/module.h>
-#include <linux/string.h>
-#include <linux/tty.h>
-#include <linux/fb.h>
-#include <linux/slab.h>
-
-#include <asm/uaccess.h>
-#include <asm/io.h>
-
-int soft_cursor(struct fb_info *info, struct fb_cursor *cursor)
-{
- unsigned int scan_align = info->pixmap.scan_align - 1;
- unsigned int buf_align = info->pixmap.buf_align - 1;
- unsigned int i, size, dsize, s_pitch, d_pitch;
- struct fb_image *image;
- u8 *dst, *src;
-
- if (info->state != FBINFO_STATE_RUNNING)
- return 0;
-
- s_pitch = (cursor->image.width + 7) >> 3;
- dsize = s_pitch * cursor->image.height;
-
- src = kmalloc(dsize + sizeof(struct fb_image), GFP_ATOMIC);
- if (!src)
- return -ENOMEM;
-
- image = (struct fb_image *) (src + dsize);
- *image = cursor->image;
- d_pitch = (s_pitch + scan_align) & ~scan_align;
-
- size = d_pitch * image->height + buf_align;
- size &= ~buf_align;
- dst = fb_get_buffer_offset(info, &info->pixmap, size);
-
- if (cursor->enable) {
- switch (cursor->rop) {
- case ROP_XOR:
- for (i = 0; i < dsize; i++)
- src[i] = image->data[i] ^ cursor->mask[i];
- break;
- case ROP_COPY:
- default:
- for (i = 0; i < dsize; i++)
- src[i] = image->data[i] & cursor->mask[i];
- break;
- }
- } else
- memcpy(src, image->data, dsize);
-
- fb_pad_aligned_buffer(dst, d_pitch, src, s_pitch, image->height);
- image->data = dst;
- info->fbops->fb_imageblit(info, image);
- kfree(src);
- return 0;
-}
-
-EXPORT_SYMBOL(soft_cursor);
-
-MODULE_AUTHOR("James Simmons <jsimmons@users.sf.net>");
-MODULE_DESCRIPTION("Generic software cursor");
-MODULE_LICENSE("GPL");
Index: drivers/video/sstfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/sstfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/sstfb.c (mode:100644)
@@ -1382,7 +1382,6 @@
.fb_fillrect = cfb_fillrect, /* sstfb_fillrect */
.fb_copyarea = cfb_copyarea, /* sstfb_copyarea */
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_ioctl = sstfb_ioctl,
};
Index: drivers/video/stifb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/stifb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/stifb.c (mode:100644)
@@ -1147,7 +1147,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
Index: drivers/video/tcx.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/tcx.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/tcx.c (mode:100644)
@@ -52,7 +52,6 @@
.fb_imageblit = cfb_imageblit,
.fb_mmap = tcx_mmap,
.fb_ioctl = tcx_ioctl,
- .fb_cursor = soft_cursor,
};
/* THC definitions */
Index: drivers/video/tdfxfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/tdfxfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/tdfxfb.c (mode:100644)
@@ -184,7 +184,6 @@
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
#endif
- .fb_cursor = soft_cursor,
};
/*
Index: drivers/video/tgafb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/tgafb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/tgafb.c (mode:100644)
@@ -63,7 +63,6 @@
.fb_fillrect = tgafb_fillrect,
.fb_copyarea = tgafb_copyarea,
.fb_imageblit = tgafb_imageblit,
- .fb_cursor = soft_cursor,
};
Index: drivers/video/tridentfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/tridentfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/tridentfb.c (mode:100644)
@@ -1282,7 +1282,6 @@
.fb_fillrect = tridentfb_fillrect,
.fb_copyarea= tridentfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
module_init(tridentfb_init);
Index: drivers/video/tx3912fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/tx3912fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/tx3912fb.c (mode:100644)
@@ -89,7 +89,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int tx3912fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
Index: drivers/video/valkyriefb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/valkyriefb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/valkyriefb.c (mode:100644)
@@ -135,7 +135,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
/* Sets the video mode according to info->var */
Index: drivers/video/vesafb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/vesafb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/vesafb.c (mode:100644)
@@ -213,7 +213,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
static int __init vesafb_setup(char *options)
Index: drivers/video/vfb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/vfb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/vfb.c (mode:100644)
@@ -90,7 +90,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
.fb_mmap = vfb_mmap,
};
Index: drivers/video/vga16fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/vga16fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/vga16fb.c (mode:100644)
@@ -1326,7 +1326,6 @@
.fb_fillrect = vga16fb_fillrect,
.fb_copyarea = vga16fb_copyarea,
.fb_imageblit = vga16fb_imageblit,
- .fb_cursor = soft_cursor,
};
#ifndef MODULE
Index: drivers/video/w100fb.c
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/drivers/video/w100fb.c (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/drivers/video/w100fb.c (mode:100644)
@@ -473,7 +473,6 @@
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
- .fb_cursor = soft_cursor,
};
Index: include/linux/fb.h
===================================================================
--- 86b5df80031a3c68459cc684c4ee9e00e9e38873/include/linux/fb.h (mode:100644)
+++ 67f1f768d5c715e7bd5fcd8fa71f946e883869ea/include/linux/fb.h (mode:100644)
@@ -808,7 +808,6 @@
extern int fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var);
extern int fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var);
extern int fb_blank(struct fb_info *info, int blank);
-extern int soft_cursor(struct fb_info *info, struct fb_cursor *cursor);
extern void cfb_fillrect(struct fb_info *info, const struct fb_fillrect *rect);
extern void cfb_copyarea(struct fb_info *info, const struct fb_copyarea *area);
extern void cfb_imageblit(struct fb_info *info, const struct fb_image *image);
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
next reply other threads:[~2005-07-27 7:54 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-27 7:49 Antonino A. Daplas [this message]
2005-07-27 14:32 ` Move softcursor out of fbdev to fbcon Jon Smirl
2005-07-27 18:50 ` Antonino A. Daplas
2005-07-27 19:05 ` Jon Smirl
2005-07-27 22:17 ` James Simmons
2005-07-28 0:42 ` Jon Smirl
2005-07-28 2:12 ` Antonino A. Daplas
2005-07-28 18:39 ` James Simmons
2005-07-28 22:22 ` Antonino A. Daplas
2005-07-27 22:04 ` James Simmons
2005-07-28 2:12 ` Antonino A. Daplas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=42E73C6E.1090205@gmail.com \
--to=adaplas@gmail.com \
--cc=jonsmirl@gmail.com \
--cc=jsimmons@infradead.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).