summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2015-02-12Add missing guards around config.h inclusionChih-Wei Huang
In some cases the header may not exist, leading to compilation issues. Add the ifdef HAVE_CONFIG_H, as it is those in other parts of the project. [Emil Velikov: Split out from a larger commit, rework commit message] Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2015-02-12Include the POSIX fcntl.h instead of sys/fcntl.hEmil Velikov
The former is part of the POSIX standard, and (unlike the latter) is more widely available. v2: Drop gracious d in header name. Spotted by Alan. Cc: Adam Jackson <ajax@redhat.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-12-21Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2014-09-29Use PCIOCREADMASK on OpenBSD.Mark Kettenis
If the machdep.allowaperture sysctl(8) variable is set to 0, writing to PCI config space is not allowed. So instead of writing 0xffffffff to the BARs in order to determine their size, use the PCIOCREADMASK ioctl(2) which returns the mask of changeable bits that was saved by the kernel when the devices was initially probed. Reviewed-by: Matthieu Herrb <matthieu@herbb.eu> Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
2014-08-30Implement the kernel_has_driver() method for NetBSD.Matthew Green
This has the benefit of stopping the "vesa" driver from loading on hardware that has been claimed by a kernel driver and thus shouldn't be using "vesa". Reviewed-by: Matthieu Herrb <matthieu@herrb.eu> Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
2014-08-03Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2014-07-03Solaris: Fix fd leak in pci_device_solx_devfs_map_range()Alan Coopersmith
Caching fd's for reuse is most effective when you actually stick the newly opened fd in the cache, instead of letting it leak at the end of the function. Regression introduced by yours truly in commit 9f2d95e61896f41adb. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Randy Fishel <randy.fishel@oracle.com>
2014-03-15Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2014-02-11Fix IO access functions on linux+sysfs.Marcin Ko?cielnicki
The offsets on the resourceX files are relative to BAR base - don't add the base address ourselves. Reviewed-by: Adam Jackson <ajax@redhat.com>
2014-01-31Fix a compilation error on GNU Hurd platforms.Samuel Pitoiset
This fixes a typo (unAMp instead of unMAp) introduced in the Windows/Cygwin support patch. Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2014-01-27Windows/Cygwin: Add support through the WinIo librarySamuel Pitoiset
V2: - Add support for unmapping - Add a README.cygwin Reviewed-by: Martin Peres <martin.peres@free.fr> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2013-08-04Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2013-07-06pci_device_solx_devfs_probe: implicit conversion changes signedness warningsAlan Coopersmith
solx_devfs.c:615:32: warning: implicit conversion changes signedness: 'unsigned long' to 'int' [-Wsign-conversion] for (i = 0; i < len; i = i + CELL_NUMS_1275) { ~ ~~^~~~~~~~~~~~~~~~ solx_devfs.c:615:30: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion] for (i = 0; i < len; i = i + CELL_NUMS_1275) { ^ ~ Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-07-06Solaris: Remove #defines for Ultra 45 southbridge device idsAlan Coopersmith
Workaround for these chipsets was removed in commit d76fb36d9c28be0f7c with the switch of probing methods from the PCI address poking that upset them to using the already collected data from the kernel via devinfo, but the #define to identify them was left behind unused - remove it too. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-07-06pci_device_solx_devfs_read: fix sign conversion/comparison warningsAlan Coopersmith
Fixes: solx_devfs.c:824:19: warning: comparison of integers of different signs: 'int' and 'pciaddr_t' (aka 'unsigned long') [-Wsign-compare] for (i = 0; i < size; i += PCITOOL_ACC_ATTR_SIZE(PCITOOL_ACC_ATTR_SIZE_1)) ~ ^ ~~~~ solx_devfs.c:826:28: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion] cfg_prg.offset = offset + i; ~ ^ solx_devfs.c:844:19: warning: implicit conversion changes signedness: 'int' to 'pciaddr_t' (aka 'unsigned long') [-Wsign-conversion] *bytes_read = i; ~ ^ Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-07-06Support more pci functions on NetBSD.Thomas Klausner
Signed-off-by: Thomas Klausner <wiz@NetBSD.org> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-07-06Fix build on NetBSD-4.Thomas Klausner
Signed-off-by: Thomas Klausner <wiz@NetBSD.org> Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-07-06Enable boot_vga support only if WSDISPLAYIO_GET_BUSID is defined.Thomas Klausner
Fixes build on NetBSD-5. Signed-off-by: Thomas Klausner <wiz@NetBSD.org> Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-06-24pci_id_file_open: move variable inside the #ifndef that uses itAlan Coopersmith
Clears up gcc warning on Solaris: common_device_name.c: In function 'pci_id_file_open': common_device_name.c:83:17: warning: unused variable 'result' [-Wunused-variable] Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-06-11Update NetBSD support.Thomas Klausner
Signed-off-by: Michael Lorenz <macallan@NetBSD.org> Signed-off-by: Thomas Klausner <wiz@NetBSD.org> Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-06-11Move 'const' to correct place, so it has meaning.Thomas Klausner
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-06-07Protect config.h like usual.Thomas Klausner
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-06-07Bug 63583 - add legacy IO routines for FreeBSDAlan Coopersmith
https://bugs.freedesktop.org/show_bug.cgi?id=63583 Reviewed-by: Mark Kettenis <kettenis@openbsd.org> Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-04-27Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2013-03-09Solaris: probe improvementHenry Zhao
Remove pcitool dependency in probing phase. Use the data collected from devinfo tree instead in creating pci file system. Signed-off-by: Henry Zhao <henzhao@glory3.(none)> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-02-16Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2013-01-15Solaris: Add domain support for sparc platformHenry Zhao
As a result the code of finding nexus node for a device in sparc is simplified and made the same as x86. Signed-off-by: Henry Zhao <henry.zhao@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-01-13Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2013-01-03PCI: set correct mask value when matching for bridges.Egbert Eich
The mask must not be zero otherwise the matching condition will never be true: ((val & mask) == set). Signed-off-by: Egbert Eich <eich@freedesktop.org> Reviewed-by: Guillem Jover <guillem@hadrons.org>
2012-11-16Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2012-10-21libpciaccess: sparc rom read fixHenry Zhao
Get rom address and size from device's "assigned-addresses" property if they exist. Signed-off-by: Henry Zhao <henry.zhao@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-10-21libpciaccess: implementation of boot_vga in SolarisHenry Zhao
Signed-off-by: Henry Zhao <henry.zhao@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-10-12libpciaccess: fix memory usage errorsMark Logan
This patch fixes memory usage errors that only occur on large SPARC machines with more than 256 PCI devices. In this case, memory is being used after it has been freed by calls to both free() and realloc(). This error was introduced by a previous patch: 2011-03-30 Solaris support for multiple PCI segments (domains) Signed-off-by: Mark Logan <mark.logan@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-08-12Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2012-05-31Implement legacy io & map for x86 backendSamuel Thibault
Add the legacy io and map methods for the x86 backend, using ioperm, in/out, and the existing mmap method. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2012-04-28Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2012-04-23Solaris: refactor pci_device_solx_devfs_map_range to reduce code duplicationAlan Coopersmith
The sparc & x86 cases were doing essentially the same things with different paths, so make the path setup be inside the platform specific #ifdefs, make the open, mmap, & error handling common code. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-04-23Solaris: Implement map_legacy & legacy_io functionsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Jay Cotton <jay.cotton@oracle.com>
2012-04-09Merge remote-tracking branch 'origin/master' into obsdMatthieu Herrb
2012-04-09Bump to 0.13.1libpciaccess-0.13.1Julien Cristau
Signed-off-by: Julien Cristau <jcristau@debian.org>
2012-04-04Fix pci_io_handle allocation routines.Matthieu Herrb
The previous version of new_io_handle() would invalidate all previous allocations when realloc moves the base pointer of the ios array. Since I cannot figure out where this array is useful, just get rid of it, providing sound stable memory allocation. Fixes vgaHWSaveFonts() in 1.12 xserver on OpenBSD, but other sub-systems relaying on pci_io could be affected too. Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr> Tested-by: Tormod Volden <debian.tormod@gmail.com>
2012-04-02Gross hack for privilege separation support.Matthieu Herrb
I/O access has already been granted early by the X server, so just skip this here. XXX I don't see a way to allow the unprivileged process to temporarly revoque IO access with the current API.
2012-03-14Fix openbsd_pci.c:pci_device_vgaarb_set_target();Thordur Bjornsson
A return (0) got lost, add it back. Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr> Reviewed-by: Mark Kettenis <mark.kettenis@xs4all.nl>
2012-03-05linux: Fix out[bwl] macros on non-I/O architecturesAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-02-27Use O_CLOEXEC for internal file descriptorsAdam Jackson
Well, almost all of them. zlib doesn't support "e" in the mode string in gzopen() though it will silently accept and ignore it, and Solaris appears not to support "e" in the mode string at all. Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-02-27linux: Don't use /dev/portAdam Jackson
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-02-24Use correct type for pci_id file accessor functionsMathias Krause
This fixes the compiler warning of using the wrong type for gzgets() and gzclose() as they want a gzFile argument, not a pointer to gzFile. The abstraction layer pci_id_file should just abstract the full type. Signed-off-by: Mathias Krause <mathias.krause@secunet.com> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-02-08solx_devfs.c: fix gcc warnings about casting away const when reading dataAlan Coopersmith
solx_devfs.c: In function `pci_device_solx_devfs_write': solx_devfs.c:1085: warning: cast discards qualifiers from pointer target type solx_devfs.c:1089: warning: cast discards qualifiers from pointer target type solx_devfs.c:1093: warning: cast discards qualifiers from pointer target type solx_devfs.c:1097: warning: cast discards qualifiers from pointer target type Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-02-08Close pci.ids file when bailing out because realloc failedAlan Coopersmith
Error: File Leak Leaked File f at line 272 of src/common_device_name.c in function 'populate_vendor'. f initialized at line 204 with fopen("/usr/share/hwdata/pci.ids", "r"). [ This bug was found by the Parfait 0.5.0 bug checking tool. For more information see http://labs.oracle.com/projects/parfait/ ] Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-02-08Solaris: reorder functions to remove need for lots of static prototypesAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>