Commit Graph

61 Commits

Author SHA1 Message Date
Tomas Carnecky
7a3ddef3bc fbdevHWGetRec() doesn't return the private data
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-04 09:53:03 +10:00
Daniel Stone
55c4ec0a1e XFree86: fbdevhw: Add helper function to get fd
Most devices need to do custom weird ioctls, so let them know what the
fd is.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-01-05 11:24:24 +02:00
Paulo Cesar Pereira de Andrade
49f77fff14 Rework symbol visibility for easier maintenance
Save in a few special cases, _X_EXPORT should not be used in C source
files. Instead, it should be used in headers, and the proper C source
include that header. Some special cases are symbols that need to be
shared between modules, but not expected to be used by external drivers,
and symbols that are accessible via LoaderSymbol/dlopen.

  This patch also adds conditionally some new sdk header files, depending
on extensions enabled. These files were added to match pattern for
other extensions/modules, that is, have the headers "deciding" symbol
visibility in the sdk. These headers are:
o Xext/panoramiXsrv.h, Xext/panoramiX.h
o fbpict.h (unconditionally)
o vidmodeproc.h
o mioverlay.h (unconditionally, used only by xaa)
o xfixes.h (unconditionally, symbols required by dri2)

  LoaderSymbol and similar functions now don't have different prototypes,
in loaderProcs.h and xf86Module.h, so that both headers can be included,
without the need of defining IN_LOADER.

  xf86NewInputDevice() device prototype readded to xf86Xinput.h, but
not exported (and with a comment about it).
2008-12-03 05:43:34 -02:00
Paulo Cesar Pereira de Andrade
d6cbd4511e Export symbols defined in the sdk.
This is the biggest "visibility" patch. Instead of doing a "export"
symbol on demand, export everything in the sdk, so that if some module
fails due to an unresolved symbol, it is because it is using a symbol
not in the sdk.

  Most exported symbols shouldn't really be made visible, neither
advertised in the sdk, as they are only used by a single shared object.

  Symbols in the sdk (or referenced in sdk macros), but not defined
anywhere include:
XkbBuildCoreState()
XkbInitialMap
XkbXIUnsupported
XkbCheckActionVMods()
XkbSendCompatNotify()
XkbDDXFakePointerButton()
XkbDDXApplyConfig()
_XkbStrCaseCmp()
_XkbErrMessages[]
_XkbErrCode
_XkbErrLocation
_XkbErrData
XkbAccessXDetailText()
XkbNKNDetailMaskText()
XkbLookupGroupAndLevel()
XkbInitAtoms()
XkbGetOrderedDrawables()
XkbFreeOrderedDrawables()
XkbConvertXkbComponents()
XkbWriteXKBSemantics()
XkbWriteXKBLayout()
XkbWriteXKBKeymap()
XkbWriteXKBFile()
XkbWriteCFile()
XkbWriteXKMFile()
XkbWriteToServer()
XkbMergeFile()
XkmFindTOCEntry()
XkmReadFileSection()
XkmReadFileSectionName()
InitExtInput()
xf86CheckButton()
xf86SwitchCoreDevice()
RamDacSetGamma()
RamDacRestoreDACValues()
xf86Bpp
xf86ConfigPix24
xf86MouseCflags[]
xf86SupportedMouseTypes[]
xf86NumMouseTypes
xf86ChangeBusIndex()
xf86EntityEnter()
xf86EntityLeave()
xf86WrapperInit()
xf86RingBell()
xf86findOptionBoolean()
xf86debugListOptions()
LoadSubModuleLocal()
LoaderSymbolLocal()
getInt10Rec()
xf86CurrentScreen
xf86ReallocatePciResources()
xf86NewSerialNumber()
xf86RandRSetInitialMode()
fbCompositeSolidMask_nx1xn
fbCompositeSolidMask_nx8888x0565C
fbCompositeSolidMask_nx8888x8888C
fbCompositeSolidMask_nx8x0565
fbCompositeSolidMask_nx8x0888
fbCompositeSolidMask_nx8x8888
fbCompositeSrc_0565x0565
fbCompositeSrc_8888x0565
fbCompositeSrc_8888x0888
fbCompositeSrc_8888x8888
fbCompositeSrcAdd_1000x1000
fbCompositeSrcAdd_8000x8000
fbCompositeSrcAdd_8888x8888
fbGeneration
fbIn
fbOver
fbOver24
fbOverlayGeneration
fbRasterizeEdges
fbRestoreAreas
fbSaveAreas
composeFunctions
VBEBuildVbeModeList()
VBECalcVbeModeIndex()
TIramdac3030CalculateMNPForClock()
shadowBufPtr
shadowFindBuf()
miRRGetScreenInfo()
RRSetScreenConfig()
RRModePruneUnused()
PixmanImageFromPicture()
extern int miPointerGetMotionEvents()
miClipPicture()
miRasterizeTriangle()
fbPush1toN()
fbInitializeBackingStore()
ddxBeforeReset()
SetupSprite()
InitSprite()
DGADeliverEvent()

  SPECIAL CASES
o defined as _X_INTERNAL
	xf86NewInputDevice()
o defined as static
	fbGCPrivateKey
	fbOverlayScreenPrivateKey
	fbScreenPrivateKey
	fbWinPrivateKey
o defined in libXfont.so, but declared in xorg/dixfont.h
	GetGlyphs()
	QueryGlyphExtents()
	QueryTextExtents()
	ParseGlyphCachingMode()
	InitGlyphCaching()
	SetGlyphCachingMode()
2008-11-29 23:56:06 -02:00
Paulo Cesar Pereira de Andrade
31285d063e Make visible symbols required by xorg modules.
This patch exports all symbols required by the compilable
(in a x86 linux computer) xorg/driver/* modules.
  Still missing symbols worth mentioning are:

sunleo
	miFindMaxBand no longer available

intel	(uxa/uxa-accel.c)
	fbShmPutImage no longer available (and should have been static)

mga
	MGAGetClientPointer (should come from matrox's libhal)

  This is not a definitive "visibility" patch, as all it does is to
export missing symbols, but the modules that current don't compile,
may require more symbols once fixed, and third party drivers should
also require more symbols exported.
  A "definitive" patch should export symbols defined in the sdk.
2008-11-28 01:55:11 -02:00
Paulo Cesar Pereira de Andrade
74bc792e18 Export symbols required by the vesa and fbdev drivers.
This is a minimal set of patches, to have an usable X Server when
compiling it with symbols hidden by default.
2008-11-27 05:34:14 -02:00
John Tapsell
bf333c2f98 fbdevhw: Remove pixclock check.
The check can fail because the output from FBIOGET_VSCREENINFO is used to set
Clock in fbdev2xfree_timing().  Then in fbdevHWSetMode(), xfree2fbdev_timing()
is called which sets the pixclock based on Clock.  The resulting circle results
in slight rounding errors, causing the comparision check in fbdev_modes_equal
to fail.
2008-09-04 13:08:06 +02:00
Adam Jackson
86678e7cc2 Fix fbdevhw initialization for PCI drivers.
graphics/fb%d, not graphics:fb%d.  Thanks sysfs.  Thysfs.
2008-05-12 14:53:37 -04:00
Adam Jackson
6828d8fc2b Clean up DisplayModeRec handling in many places.
Use xf86DuplicateMode() instead of rolling our own, and change
malloc+memset to calloc.
2008-02-29 16:01:14 -05:00
Adam Jackson
c095da04fe Fix magic number in fbdevhw
The transformation between fbdev and xfree86 mode timings needs to be
invertible, otherwise Xen and other framebuffers that don't have real
pixel clocks won't initialize.
2007-11-02 12:05:41 -04:00
Alan Hourihane
87495fc706 Allow yres_virtual to be greater for some kernel fbdev drivers.
(temporary fix for older fbdev drivers)
2007-08-30 21:57:41 +01:00
Eric Anholt
801c359574 Fix fbdevhwstub for pci-rework. 2007-08-27 15:46:05 -07:00
Ian Romanick
c279d5fdc5 Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/xorg/xserver into pci-rework 2007-01-19 12:59:54 -08:00
Michel Dänzer
14d6a9b327 fbdevhw: Only deal with RGB weight if default visual is True- or DirectColor. 2007-01-19 18:30:21 +01:00
Michel Dänzer
27a01e100b fbdevhw: Consider mode set equal to mode requested if virtual width is larger. 2007-01-19 18:28:05 +01:00
Ian Romanick
da09964a93 Merge branch 'origin' into pci-rework
Conflicts:

	hw/xfree86/int10/generic.c
2007-01-09 15:27:34 -08:00
Michel Dänzer
dc5eb45232 fbdevhw: Override RGB offsets and masks after setting initial mode.
This is a hack, but it should be a NOP for all the setups that worked before
and actually seems to fix some others...

Based on a patch by Peter Teichmann from
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338241 .
2006-12-31 17:59:44 +01:00
Michel Dänzer
d077c0da47 fbdevhw: Use displayWidth for fbdev virtual width when appropriate.
The fbdev API doesn't allow setting the pitch explicitly, so we have to set
the virtual width to the pitch we're using for drawing. This fixes corruption
after changing the virtual width with RandR.
2006-12-31 17:23:31 +01:00
Michel Dänzer
c385bcf0bd fbdevhw: Fix some issues with the previous commit.
Fix a TRACE_ENTER typo and only update the internal fbdev mode state cache
after actually setting a mode.
2006-12-30 16:44:31 +01:00
Michel Dänzer
f6815cb68b fbdevhw: Consolidate modeset ioctl calling, report failure if it modifies mode.
The fbdev API allows the driver to 'accept' modes it doesn't really support by
modifying it to the nearest supported mode. Without this check, e.g. vesafb
would appear to accept all modes, even though it actually can't set any modes
other than the bootup mode at all.
2006-12-30 12:35:16 +01:00
Ian Romanick
e1f73d2208 Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86Configure.c
	hw/xfree86/common/xf86Helper.c
	hw/xfree86/common/xf86pciBus.c
	hw/xfree86/int10/helper_exec.c
	hw/xfree86/os-support/bus/Pci.c
	hw/xfree86/os-support/bus/linuxPci.c
	hw/xfree86/os-support/linux/lnx_pci.c
	hw/xfree86/scanpci/Makefile.am
	hw/xfree86/utils/pcitweak/Makefile.am
	hw/xfree86/utils/scanpci/Makefile.am
2006-12-08 17:24:15 -08:00
Keith Packard
2be1ac15ae Remove smashing of CFLAGS from server build.
CFLAGS is a user variable, extracted from the environment at configure time
and settable by the user at build time. We must not override this variable.
2006-09-18 12:11:18 -07:00
Ian Romanick
380b51d605 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86Init.c
	hw/xfree86/int10/pci.c
	hw/xfree86/scanpci/xf86PciData.h
	hw/xfree86/scanpci/xf86PciStdIds.h
	hw/xfree86/scanpci/xf86PciStr.h
	hw/xfree86/scanpci/xf86ScanPci.h
	hw/xfree86/utils/pcitweak/pcitweak.c
	hw/xfree86/utils/scanpci/scanpci.c

Re-removed most of the conflicting files.
2006-07-25 11:30:04 -07:00
Ian Romanick
07ad92d2c4 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86DoScanPci.c
	hw/xfree86/common/xf86Init.c
	hw/xfree86/common/xf86pciBus.c
2006-07-21 15:25:35 -07:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Daniel Stone
84683f19b4 get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
Get rid of almost all uses of these definitions.  They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build.  As well as
for miinitext.c.  But largely gone.
2006-07-18 18:17:38 -04:00
Ian Romanick
75398cff82 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver
Conflicts:

	hw/xfree86/loader/Makefile.am
	hw/xfree86/loader/xf86sym.c
2006-06-20 15:49:47 -07:00
Eric Anholt
21ef7e17ef Add some missing .gitignore stuff for Mesa symlinks and other generated files. 2006-06-18 19:47:51 -07:00
Ian Romanick
46f55f5dea Initial batch of changes for PCI rework. All future changes will be
tracked individually.
2006-06-07 14:09:02 -07:00
Adam Jackson
52fc7c8dc7 Ensure all *ModuleData symbols are marked _X_EXPORT. Start removing
XFree86LOADER ifdefs, non-loadable hasn't been supported for a while
    now. Remove completely gratuitious REMOVE_LOADER_CHECK_MODULE_INFO
    ifdefs surrounding a call to a function added in XFree86 4.1 (!).
    Miscellaneous static markings.
2006-06-05 03:00:24 +00:00
Adam Jackson
ff6f88348c More warning cleanup. 2006-03-29 01:05:09 +00:00
Benjamin Herrenschmidt
1a4f20541a Fix linux build without libc wrappers (From Fredrik Höglund) 2006-02-13 04:56:27 +00:00
Eric Anholt
c3d1403672 Remove libcwrapper usage from xorg server modules. The libcwrapper is only
of (marginal) use in the drivers, and that usage remains.
2006-02-10 22:00:30 +00:00
Kevin E Martin
7c00afd0ec Define XFree86Server only where it is required. 2005-12-02 06:02:45 +00:00
Kevin E Martin
da5d66f2ff Fix usage of XFree86LOADER/XFree86Module/IN_MODULE and update loadable
module builds to reflect this change.
2005-11-29 16:39:33 +00:00
Alan Coopersmith
51a721a6db Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
2005-11-28 22:05:09 +00:00
Kevin E Martin
1f9b6dc1cc Clean up generated files to pass distcheck
Clean up generated files to pass distcheck Distribute getconfig.man.pre,
    not getconfig.man
2005-10-06 00:34:29 +00:00
Alan Coopersmith
abc6aa50fb Oops - fix build/install of fbdevhw.man 2005-10-01 06:27:12 +00:00
Alan Coopersmith
13e0db19d8 Adding more doc files & fbdevhw man page 2005-10-01 06:19:02 +00:00
Daniel Stone
b8f0d4c3eb Spit out an error when there is no valid FB device, instead of just failing
silently. (Debian #070)
2005-08-26 06:29:15 +00:00
Daniel Stone
825a95a1fa Remove use of dix-config and xorg-config.h from public headers. 2005-08-24 11:18:35 +00:00
Alan Coopersmith
4f38526566 - Use fbdevhwstub.c if <linux/fb.h> is not found
- Use x86emu on Solaris instead of vm86
- Better per-OS control over which xf86Kbd*.c and *Pci.c files to build
- Set various #defines to be defined or not on Solaris as needed
2005-07-13 22:54:02 +00:00
Adam Jackson
4f9e76ed6a Dear libtool: Loadable modules do not need version numbers. kthnxbye. 2005-07-13 22:09:52 +00:00
Daniel Stone
e03198972c Add Xtrans definitions (FONT_t, TRANS_CLIENT) to clean up warnings.
Add XSERV_t, TRANS_SERVER, TRANS_REOPEN to quash warnings.
Add #include <dix-config.h> or <xorg-config.h>, as appropriate, to all
    source files in the xserver/xorg tree, predicated on defines of
    HAVE_{DIX,XORG}_CONFIG_H. Change all Xfont includes to
    <X11/fonts/foo.h>.
2005-07-03 07:02:09 +00:00
Daniel Stone
826a6f029f Continuing Makefile cleanup; add DIX_CFLAGS and XORG_CFLAGS everywhere. 2005-07-02 18:59:44 +00:00
Daniel Stone
ded56b1a74 Adding initial build system. 2005-07-01 20:29:53 +00:00
Lars Knoll
b6c7afe0b9 compile 2005-06-29 15:19:14 +00:00
Adam Jackson
ce0e11aeac Bug #2447: Fix argument order to xf86DrvMsgVerb. (Luc Verhaegen) 2005-06-28 21:05:31 +00:00
Daniel Stone
292c4cff26 Fix includes right throughout the Xserver tree:
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
    <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Egbert Eich
d240c41a3a Optimization of CJK rendering when using versions of freetype prior to
2.1.8 (Chisato Yamauchi).
A small backward compatibility fix to make the freetype module build with
    freetype version < 2.1.7.
Fixed/added some debugging code.
2004-08-04 12:21:48 +00:00