Commit Graph

32 Commits

Author SHA1 Message Date
Jonathan Lim 1627af5449 Call linuxPciOpenFile() for r/w access if applicable.
Currently, the call to linuxPciOpenFile() is always made for read
only access which causes the subsequent mmap call to fail when the
memory is mapped read/write.

Xorg #9692
2007-01-26 13:00:45 +01:00
Bjorn Helgaas ae3c9ad4ab Bug 9041: Check the return code in xf86MapDomainMemory(). 2006-11-16 17:29:06 +01:00
Bjorn Helgaas bd0c829654 Do not map full 0-1MB legacy range
If we're mapping something in the "legacy range" (0-1Mb), we shouldn't
expand the requested range to the entire 0-1Mb range.  Typically this
is for mapping the VGA frame buffer, and some platforms support mmap of
the frame buffer but not the entire 0-1Mb range.

For example, HP sx1000 and sx2000 ia64 platforms can have memory from
0-0x9ffff, VGA frame buffer from 0xa0000-0xbffff, and memory from
0xc0000-0xfffff.  On these platforms, we can't map the entire 0-1Mb
range with the same attribute because the memory only supports WB,
while the frame buffer supports only UC.  But an mmap of just the
frame buffer should work fine.
2006-11-03 18:59:52 +01:00
Egbert Eich c1828a8ff5 Fixing mach64 driver bailing out on ia64
Mach64 driver bails out on ia64 because it cannot map device
memory. It turns out that some bogus and unneeded code attempts
to find the root bridge of the device and fails to do so proberly
as there this host-to-pci bridge is not existant. This code has
been around for years although it completely unclear what it had
been intended for. Fixing this by eliminating the bogus code.
2006-11-03 18:59:52 +01:00
Matthias Hopf 1d731fc54a Add domain support to linuxPciOpenFile().
Loosely based on patch from David S. Miller <davem@davemloft.net>
See also bug #2368.
2006-11-03 18:59:51 +01:00
Matthias Hopf caaa113acf Fixing domain support for ia64
ia64 specific functions + defines.
Still uses /proc interface for some scaning code.
Based on code from Egbert Eich <eich@freedesktop.org>.
2006-11-03 18:59:51 +01:00
Matthias Hopf f4dd2665b0 Added missing domain stripping in already domain aware code. 2006-11-03 18:59:51 +01:00
Matthias Hopf 1b94c117e0 Fixing probably long-standing bug in domain support. 2006-10-10 19:37:22 +02:00
Donnie Berkholz d812f486a0 Really fix sparc on 64-bit kernel/32-bit userland.
Commit b3a3020fd0 used a sparc64 ifdef instead of
sparc. But for 32-bit userland, __sparc64__ is not defined so the wrong code is
used.
2006-09-20 15:39:39 -07:00
Jesse Barnes b3a3020fd0 the new PCI mapping routines are broken on sparc64 (in fact they look
broken for any 32 bit X server running on a 64 bit kernel) so #ifdef
them out for now.  the PCI rework tree will make all this crap go away,
so I think we can tolerate the extra #ifdef for the next release.
2006-09-10 11:13:18 -07:00
Adam Jackson 0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Ian Romanick 8d07ee070e Refactor linuxGetIOSize and linuxGetSizes. Eliminate the unnecessary
optimization in the search loop.
2006-07-06 12:48:51 -07:00
Daniel Stone 8444bb77c9 When we can, bound the maximum number of PCI devices to attempt to scan, by
the number found on the system. Only implemented for Linux right now.
2006-06-05 20:22:06 +00:00
Daniel Stone 56f21bda1c Bug #6583: Only open /proc/bus/pci/devices once. (Bill Nottingham) 2006-06-01 22:30:52 +00:00
Dave Airlie 26fa45b642 Bug #6751: Use the Linux PCI ROM interface on Linux properly. The old
domain code, still modified BARs not a good idea, Just talk to sysfs,
    if 0 read, fallback to old methods.
2006-04-26 11:40:58 +00:00
Adam Jackson a68c11bb1d Mark everything in xf86sym.c as _X_EXPORT. 2006-03-25 19:52:05 +00:00
Dave Airlie fc69a2e729 Remove PowerMAX_OS define it never worked , it'll never work again,
finishes running joke of OLS2005
2005-12-29 08:42:49 +00:00
Kristian Høgsberg f8430a1b86 Bug #2880, add functions for byte and word level access to pci config
space.
Fix broken utf8 again.
2005-11-08 19:04:56 +00:00
Adam Jackson af211a9bc1 Fix PCI bus scan on ia64 E8870 chipsets. 2005-10-19 22:30:09 +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
Adam Jackson 16c2499b8f Bug #2373: SGI Altix platform support. (Shrijeet Mukherjee, Jesse Barnes,
Bjorn Helgaas, Egbert Eich.)
2005-04-22 16:49:22 +00:00
Egbert Eich e7369daba5 Added PCI2Host bus translations for linux PPC and fixed fixed bugs in
macros that apply these functions (Bill Randle Bugzilla #325 and #327).
2005-02-09 11:12:54 +00:00
Egbert Eich d23c46dd3e Modifying X.Org Xserver DDX to allow to run X with ordinary user
permissions when no access to HW registers is required. For API changes
    which mostly involve the modifications to make the RRFunc (introduced
    with 6.8) more flexible please check Bugzilla #2407. NOTE: This patch
    applies changes to OS specific files for other OSes which I cannot
    test.
2005-01-28 16:13:00 +00:00
Egbert Eich af717ae57d Make Xorg the default server to install.
Avoid PIO access on IA64. Some IA64 machine check if legacy ports outside
    the VGA range are accessed. The ATi driver however does this to probe
    for ISA Mach8/32/64. Since no IA64 has ISA slots this restriction
    should not be relevant to the user.
Avoid recursive calls of xf86scanpci(). This function normally detects that
    it has been called before by checking if the PCI structure is filled
    out. So far if this was not the case (because PCI probing has failed
    for some reason) the function is traversed again. With the chipset
    specific PCI bus probing this can lead to an endless recursive loop as
    the post-probing code calls xf86scanpci() from within this function.
The OS specific PCI code for Linux worked only if bus 0 was populated as it
    checked for the presence of /proc/bus/pci/00. Fixed to check for
    /proc/bus/pci/<bus_to_look_for> instead.
2004-11-30 08:38:44 +00:00
Egbert Eich df2b55a25b Separated Intel drivers from default DriDrivers to avoid building them on
IA64 (Egbert Eich).
Fixed wrong function prototype (Egbert Eich).
Don't test for generic VGA on IA64 (Egbert Eich).
Fixed a segfault when accessing a structure before verifying the pointer
    exists (Egbert Eich).
Added a showcache option for debugging (Egbert Eich).
Increase default video RAM size to 16MB when DRI is enabled and more than
    128MB are available (Egbert Eich). Fixed lockups during mode switch.
    Problem was introduced when attempting to copy the behavior during
    LeaveVT()/EnterVT() but but forgetting to call I810DRILeave() before
    I810DRIEnter(). The entire DRILeave()/Enter() scenario has been
    commented out as it didn't seem to be necessary (Egbert Eich).
Fix TweakMemorySize() (tested with i855/i865) (Egbert Eich).
increased MAX_DEVICES to 128 (Egbert Eich).
Use OS provided PCI config space access as default method (Egbert Eich).
Added support for Linux 2.6 proc file format.
Fixed unaligned accesses to pieces of the VBE info block. VESA did not
    align elements to size (Egbert Eich).
2004-07-06 14:37:48 +00:00
Eric Anholt 22bad9474b DRI XFree86-4_3_99_12-merge import 2004-06-16 09:22:17 +00:00
Egbert Eich 2fb5886200 Merging XORG-CURRENT into trunk 2004-04-23 19:54:30 +00:00
Egbert Eich dae90c3af9 Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004 2004-03-14 08:34:49 +00:00
Egbert Eich 867451f1ab Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004 2004-03-03 12:12:50 +00:00
Egbert Eich df0313d35b readding XFree86's cvs IDs 2004-02-26 13:36:15 +00:00
Egbert Eich 147aae87fd Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004 2004-02-26 09:23:53 +00:00
Kaleb Keithley 9508a382f8 Initial revision 2003-11-14 16:48:57 +00:00