summaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorzeising <zeising@058c260c-8361-11dd-a0ac-aa2bafec7d09>2013-08-14 18:55:05 +0800
committerzeising <zeising@058c260c-8361-11dd-a0ac-aa2bafec7d09>2013-08-14 18:55:05 +0800
commit335fa5b4530a308a5c14904454c6dcead05912c6 (patch)
tree9a6ce3f3cd4c3f0f78f1cffe4a1baba406ad89b5 /devel
parent465e9b48ea49f8e9310aa5b62b2f3077602d6aac (diff)
downloadxorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar.gz
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar.bz2
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar.lz
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar.xz
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.tar.zst
xorg-devel-ports-335fa5b4530a308a5c14904454c6dcead05912c6.zip
Update to 0.13.2
git-svn-id: https://trillian.chruetertee.ch/svn/ports/trunk@1057 058c260c-8361-11dd-a0ac-aa2bafec7d09
Diffstat (limited to 'devel')
-rw-r--r--devel/libpciaccess/Makefile3
-rw-r--r--devel/libpciaccess/distinfo4
-rw-r--r--devel/libpciaccess/files/patch-src-freebsd_pci.c250
3 files changed, 157 insertions, 100 deletions
diff --git a/devel/libpciaccess/Makefile b/devel/libpciaccess/Makefile
index 7c5f05e..76019e1 100644
--- a/devel/libpciaccess/Makefile
+++ b/devel/libpciaccess/Makefile
@@ -1,8 +1,7 @@
# $FreeBSD: head/devel/libpciaccess/Makefile 321224 2013-06-18 23:36:00Z jkim $
PORTNAME= libpciaccess
-PORTVERSION= 0.13.1
-PORTREVISION= 3
+PORTVERSION= 0.13.2
CATEGORIES= devel
MAINTAINER= x11@FreeBSD.org
diff --git a/devel/libpciaccess/distinfo b/devel/libpciaccess/distinfo
index b6ce660..fe63f3a 100644
--- a/devel/libpciaccess/distinfo
+++ b/devel/libpciaccess/distinfo
@@ -1,2 +1,2 @@
-SHA256 (xorg/lib/libpciaccess-0.13.1.tar.bz2) = 27ab68f645691a4ca258dcc9d131040586e134f9233ce079794496f6264da084
-SIZE (xorg/lib/libpciaccess-0.13.1.tar.bz2) = 352351
+SHA256 (xorg/lib/libpciaccess-0.13.2.tar.bz2) = abab8c2b050afb89bc29280e9c6b50ec5867174960d88bfb81a01036ec20de19
+SIZE (xorg/lib/libpciaccess-0.13.2.tar.bz2) = 359231
diff --git a/devel/libpciaccess/files/patch-src-freebsd_pci.c b/devel/libpciaccess/files/patch-src-freebsd_pci.c
index a72ec24..e2fd846 100644
--- a/devel/libpciaccess/files/patch-src-freebsd_pci.c
+++ b/devel/libpciaccess/files/patch-src-freebsd_pci.c
@@ -1,15 +1,6 @@
---- src/freebsd_pci.c.orig 2012-04-09 13:02:57.000000000 -0400
-+++ src/freebsd_pci.c 2013-06-18 19:29:20.000000000 -0400
-@@ -1,6 +1,8 @@
- /*
- * (C) Copyright Eric Anholt 2006
- * (C) Copyright IBM Corporation 2006
-+ * (C) Copyright Mark Kettenis 2011
-+ * (C) Copyright Robert Millan 2012
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
-@@ -37,6 +39,11 @@
+--- src/freebsd_pci.c.orig 2013-08-14 12:31:57.519923558 +0200
++++ src/freebsd_pci.c 2013-08-14 12:31:36.809923955 +0200
+@@ -39,6 +39,11 @@
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
@@ -21,7 +12,7 @@
#include <sys/types.h>
#include <sys/param.h>
#include <sys/pciio.h>
-@@ -72,6 +79,10 @@
+@@ -74,6 +79,10 @@
#define PCIM_BAR_MEM_SPACE 0
#define PCIM_BAR_IO_SPACE 1
@@ -32,7 +23,7 @@
/**
* FreeBSD private pci_system structure that extends the base pci_system
* structure.
-@@ -103,12 +114,18 @@
+@@ -105,12 +114,18 @@
{
const int prot = ((map->flags & PCI_DEV_MAP_FLAG_WRITABLE) != 0)
? (PROT_READ | PROT_WRITE) : PROT_READ;
@@ -51,7 +42,7 @@
if (fd == -1)
return errno;
-@@ -118,6 +135,7 @@
+@@ -120,6 +135,7 @@
err = errno;
}
@@ -59,7 +50,7 @@
mrd.mr_base = map->base;
mrd.mr_len = map->size;
strncpy(mrd.mr_owner, "pciaccess", sizeof(mrd.mr_owner));
-@@ -138,6 +156,7 @@
+@@ -140,6 +156,7 @@
}
close(fd);
@@ -67,7 +58,7 @@
return err;
}
-@@ -146,6 +165,7 @@
+@@ -148,6 +165,7 @@
pci_device_freebsd_unmap_range( struct pci_device *dev,
struct pci_device_mapping *map )
{
@@ -75,7 +66,7 @@
struct mem_range_desc mrd;
struct mem_range_op mro;
int fd;
-@@ -171,6 +191,7 @@
+@@ -173,6 +191,7 @@
fprintf(stderr, "Failed to open /dev/mem\n");
}
}
@@ -83,7 +74,7 @@
return pci_device_generic_unmap_range(dev, map);
}
-@@ -293,7 +314,11 @@
+@@ -295,7 +314,11 @@
}
printf("Using rom_base = 0x%lx\n", (long)rom_base);
@@ -95,7 +86,7 @@
if ( memfd == -1 )
return errno;
-@@ -306,7 +331,9 @@
+@@ -308,7 +331,9 @@
memcpy( buffer, bios, dev->rom_size );
munmap( bios, dev->rom_size );
@@ -105,7 +96,7 @@
if (pci_rom) {
pci_device_cfg_write_u32( dev, PCIR_BIOS, rom );
-@@ -341,7 +368,6 @@
+@@ -343,7 +368,6 @@
static int
pci_device_freebsd_probe( struct pci_device * dev )
{
@@ -113,11 +104,36 @@
struct pci_bar_io bar;
uint8_t irq;
int err, i;
-@@ -561,6 +587,154 @@
+@@ -563,136 +587,152 @@
freebsd_pci_sys = NULL;
}
-+static struct pci_io_handle *
+-#if defined(__i386__) || defined(__amd64__)
+-#include <machine/cpufunc.h>
+-#endif
+-
+ static struct pci_io_handle *
+-pci_device_freebsd_open_legacy_io(struct pci_io_handle *ret,
+- struct pci_device *dev, pciaddr_t base, pciaddr_t size)
+-{
+-#if defined(__i386__) || defined(__amd64__)
+- ret->fd = open("/dev/io", O_RDWR | O_CLOEXEC);
+-
+- if (ret->fd < 0)
+- return NULL;
+-
+- ret->base = base;
+- ret->size = size;
+- return ret;
+-#elif defined(PCI_MAGIC_IO_RANGE)
+- ret->memory = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED,
+- aperturefd, PCI_MAGIC_IO_RANGE + base);
+- if (ret->memory == MAP_FAILED)
+- return NULL;
+-
+- ret->base = base;
+- ret->size = size;
+- return ret;
+pci_device_freebsd_open_legacy_io( struct pci_io_handle *ret,
+ struct pci_device *dev, pciaddr_t base,
+ pciaddr_t size )
@@ -127,123 +143,167 @@
+ screenfd, base );
+ if ( ret->memory == MAP_FAILED )
+ return NULL;
-+#else
+ #else
+ ret->fd = open( "/dev/io", O_RDWR | O_CLOEXEC );
+ if ( ret->fd < 0 )
-+ return NULL;
-+#endif
+ return NULL;
+ #endif
+ ret->base = base;
+ ret->size = size;
+ return ret;
-+}
-+
-+static void
+ }
+
+-#if defined(__i386__) || defined(__amd64__)
+ static void
+-pci_device_freebsd_close_io(struct pci_device *dev, struct pci_io_handle *handle)
+pci_device_freebsd_close_io( struct pci_device *dev,
+ struct pci_io_handle *handle )
-+{
+ {
+- if (handle->fd > -1)
+- close(handle->fd);
+-}
+#if !defined(__sparc64__)
+ if ( handle->fd > -1 )
+ close( handle->fd );
-+#endif
+ #endif
+}
-+
-+static uint32_t
+
+ static uint32_t
+-pci_device_freebsd_read32(struct pci_io_handle *handle, uint32_t reg)
+pci_device_freebsd_read32( struct pci_io_handle *handle, uint32_t reg )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- return inl(handle->base + reg);
+#if defined(__sparc64__)
+ return *(uint32_t *)((uintptr_t)handle->memory + reg);
+#elif defined(__i386__) || defined(__amd64__)
+ return inl( handle->base + reg );
-+#else
+ #else
+- return *(uint32_t *)((uintptr_t)handle->memory + reg);
+ struct iodev_pio_req req = { IODEV_PIO_READ, handle->base + reg, 4, 0 };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
+ return req.val;
-+#endif
-+}
-+
-+static uint16_t
+ #endif
+ }
+
+ static uint16_t
+-pci_device_freebsd_read16(struct pci_io_handle *handle, uint32_t reg)
+pci_device_freebsd_read16( struct pci_io_handle *handle, uint32_t reg )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- return inw(handle->base + reg);
+#if defined(__sparc64__)
+ return *(uint16_t *)((uintptr_t)handle->memory + reg);
+#elif defined(__i386__) || defined(__amd64__)
+ return inw( handle->base + reg );
-+#else
+ #else
+- return *(uint16_t *)((uintptr_t)handle->memory + reg);
+ struct iodev_pio_req req = { IODEV_PIO_READ, handle->base + reg, 2, 0 };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
+ return req.val;
-+#endif
-+}
-+
-+static uint8_t
+ #endif
+ }
+
+ static uint8_t
+-pci_device_freebsd_read8(struct pci_io_handle *handle, uint32_t reg)
+pci_device_freebsd_read8( struct pci_io_handle *handle, uint32_t reg )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- return inb(handle->base + reg);
+#if defined(__sparc64__)
+ return *(uint8_t *)((uintptr_t)handle->memory + reg);
+#elif defined(__i386__) || defined(__amd64__)
+ return inb( handle->base + reg );
-+#else
+ #else
+- return *(uint8_t *)((uintptr_t)handle->memory + reg);
+ struct iodev_pio_req req = { IODEV_PIO_READ, handle->base + reg, 1, 0 };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
+ return req.val;
-+#endif
-+}
-+
-+static void
+ #endif
+ }
+
+ static void
+-pci_device_freebsd_write32(struct pci_io_handle *handle, uint32_t reg,
+- uint32_t data)
+pci_device_freebsd_write32( struct pci_io_handle *handle, uint32_t reg,
+ uint32_t data )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- outl(handle->base + reg, data);
+#if defined(__sparc64__)
+ *(uint32_t *)((uintptr_t)handle->memory + reg) = data;
+#elif defined(__i386__) || defined(__amd64__)
+ outl( handle->base + reg, data );
-+#else
+ #else
+- *(uint16_t *)((uintptr_t)handle->memory + reg) = data;
+ struct iodev_pio_req req = { IODEV_PIO_WRITE, handle->base + reg, 4, data };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
-+#endif
-+}
-+
-+static void
+ #endif
+ }
+
+ static void
+-pci_device_freebsd_write16(struct pci_io_handle *handle, uint32_t reg,
+- uint16_t data)
+pci_device_freebsd_write16( struct pci_io_handle *handle, uint32_t reg,
+ uint16_t data )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- outw(handle->base + reg, data);
+#if defined(__sparc64__)
+ *(uint16_t *)((uintptr_t)handle->memory + reg) = data;
+#elif defined(__i386__) || defined(__amd64__)
+ outw( handle->base + reg, data );
-+#else
+ #else
+- *(uint8_t *)((uintptr_t)handle->memory + reg) = data;
+ struct iodev_pio_req req = { IODEV_PIO_WRITE, handle->base + reg, 2, data };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
-+#endif
-+}
-+
-+static void
+ #endif
+ }
+
+ static void
+-pci_device_freebsd_write8(struct pci_io_handle *handle, uint32_t reg,
+- uint8_t data)
+pci_device_freebsd_write8( struct pci_io_handle *handle, uint32_t reg,
+ uint8_t data )
-+{
+ {
+-#if defined(__i386__) || defined(__amd64__)
+- outb(handle->base + reg, data);
+#if defined(__sparc64__)
+ *(uint8_t *)((uintptr_t)handle->memory + reg) = data;
+#elif defined(__i386__) || defined(__amd64__)
+ outb(handle->base + reg, data);
-+#else
+ #else
+- *(uint32_t *)((uintptr_t)handle->memory + reg) = data;
+ struct iodev_pio_req req = { IODEV_PIO_WRITE, handle->base + reg, 1, data };
+ if ( handle->fd > -1 )
+ ioctl( handle->fd, IODEV_PIO, &req );
-+#endif
-+}
-+
-+static int
+ #endif
+ }
+
+ static int
+-pci_device_freebsd_map_legacy(struct pci_device *dev, pciaddr_t base,
+- pciaddr_t size, unsigned map_flags, void **addr)
+pci_device_freebsd_map_legacy( struct pci_device *dev, pciaddr_t base,
+ pciaddr_t size, unsigned map_flags, void **addr )
-+{
+ {
+- struct pci_device_mapping map;
+- int err;
+-
+- map.base = base;
+- map.size = size;
+- map.flags = map_flags;
+- map.memory = NULL;
+- err = pci_device_freebsd_map_range(dev, &map);
+- *addr = map.memory;
+ struct pci_device_mapping map;
+ int err;
-+
+
+- return err;
+ map.base = base;
+ map.size = size;
+ map.flags = map_flags;
@@ -251,41 +311,39 @@
+ err = pci_device_freebsd_map_range( dev, &map );
+ *addr = map.memory;
+ return err;
-+}
-+
-+static int
+ }
+
+ static int
+-pci_device_freebsd_unmap_legacy(struct pci_device *dev, void *addr,
+- pciaddr_t size)
+pci_device_freebsd_unmap_legacy( struct pci_device *dev, void *addr,
+ pciaddr_t size)
-+{
+ {
+- struct pci_device_mapping map;
+ struct pci_device_mapping map;
-+
+
+- map.memory = addr;
+- map.size = size;
+- map.flags = 0;
+- return pci_device_freebsd_unmap_range(dev, &map);
+ map.memory = addr;
+ map.size = size;
+ map.flags = 0;
+ return pci_device_freebsd_unmap_range( dev, &map );
-+}
-+
+ }
+
static const struct pci_system_methods freebsd_pci_methods = {
- .destroy = pci_system_freebsd_destroy,
- .destroy_device = NULL, /* nothing to do for this */
-@@ -571,6 +745,16 @@
- .read = pci_device_freebsd_read,
+@@ -706,9 +746,7 @@
.write = pci_device_freebsd_write,
.fill_capabilities = pci_fill_capabilities_generic,
-+ .open_legacy_io = pci_device_freebsd_open_legacy_io,
-+ .close_io = pci_device_freebsd_close_io,
-+ .read32 = pci_device_freebsd_read32,
-+ .read16 = pci_device_freebsd_read16,
-+ .read8 = pci_device_freebsd_read8,
-+ .write32 = pci_device_freebsd_write32,
-+ .write16 = pci_device_freebsd_write16,
-+ .write8 = pci_device_freebsd_write8,
-+ .map_legacy = pci_device_freebsd_map_legacy,
-+ .unmap_legacy = pci_device_freebsd_unmap_legacy,
- };
-
- /**
-@@ -644,3 +828,11 @@
+ .open_legacy_io = pci_device_freebsd_open_legacy_io,
+-#if defined(__i386__) || defined(__amd64__)
+ .close_io = pci_device_freebsd_close_io,
+-#endif
+ .read32 = pci_device_freebsd_read32,
+ .read16 = pci_device_freebsd_read16,
+ .read8 = pci_device_freebsd_read8,
+@@ -790,3 +828,11 @@
return 0;
}