Import of pkgsrc-2013Q2

This commit is contained in:
2013-09-26 17:14:40 +02:00
commit 785076ae39
74991 changed files with 4380255 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
Control the External CRT and LCD display on 810/855/865/915 Intel
graphics chips.

View File

@@ -0,0 +1,16 @@
# $NetBSD: Makefile,v 1.3 2012/10/23 19:51:07 asau Exp $
#
DISTNAME= i810switch-0.6.5
CATEGORIES= sysutils
MASTER_SITES= http://www16.plala.or.jp/mano-a-mano/i810switch/
MAINTAINER= christos@NetBSD.org
HOMEPAGE= http://www16.plala.or.jp/mano-a-mano/i810switch/
COMMENT= Switch LCD/CRT 855/865/915 Intel chips
ONLY_FOR_PLATFORM= NetBSD-*-i386 NetBSD-*-x86_64 Linux-*-i386
.include "../../mk/bsd.prefs.mk"
.include "../../mk/bsd.pkg.mk"

View File

@@ -0,0 +1,5 @@
@comment $NetBSD: PLIST,v 1.1 2006/12/04 04:42:03 christos Exp $
sbin/i810switch
sbin/i810rotate
man/man1/i810switch.1
man/man1/i810rotate.1

View File

@@ -0,0 +1,8 @@
$NetBSD: distinfo,v 1.4 2011/10/01 22:32:11 dholland Exp $
SHA1 (i810switch-0.6.5.tar.gz) = 437adeb38f6530b5e68810fc5ee65fb5adaafd97
RMD160 (i810switch-0.6.5.tar.gz) = 4acaea0c7c4197cdff30885a51f65cda3d3a6df9
Size (i810switch-0.6.5.tar.gz) = 24287 bytes
SHA1 (patch-aa) = 3ce603e429331362679a3becd2c7bfa71d5a8ac2
SHA1 (patch-ab) = 6257493b9b399d1c2a4ebce29a51f8e5f2fd193f
SHA1 (patch-ac) = f54352d697787feded8af74043a0f97eabb131f3

View File

@@ -0,0 +1,42 @@
$NetBSD: patch-aa,v 1.4 2011/10/01 22:32:11 dholland Exp $
--- Makefile.orig 2003-12-31 09:51:40.000000000 -0500
+++ Makefile 2006-12-03 23:40:16.000000000 -0500
@@ -1,7 +1,5 @@
-OBJECTS = i810switch.o
-
-%.o: %.c
- $(CC) $(CFLAGS) -c -o $@ $<
+OBJECTS = i810switch.o getline.o
+MANMODE?=644
all: i810switch
@@ -9,16 +7,20 @@
$(CC) $(CFLAGS) -o $@ $(OBJECTS)
install: i810switch
- install -d $(DESTDIR)/usr/bin
- install -d $(DESTDIR)/usr/share/man/man1
- install i810switch i810rotate $(DESTDIR)/usr/bin
- install i810switch.1.gz i810rotate.1.gz $(DESTDIR)/usr/share/man/man1
+ install -d ${DESTDIR}$(PREFIX)/bin
+ install -d ${DESTDIR}$(PREFIX)/sbin
+ install -d ${DESTDIR}$(PREFIX)/man/man1
+ install i810switch ${DESTDIR}$(PREFIX)/sbin
+ ln -s i810switch ${DESTDIR}$(PREFIX)/sbin/i810rotate
+ install -m $(MANMODE) i810switch.1.gz i810rotate.1.gz ${DESTDIR}$(PREFIX)/man/man1
+ gunzip ${DESTDIR}$(PREFIX)/${PKGMANDIR}/man1/i810switch.1.gz
+ gunzip ${DESTDIR}$(PREFIX)/${PKGMANDIR}/man1/i810rotate.1.gz
uninstall:
- rm -f $(DESTDIR)/usr/bin/i810switch
- rm -f $(DESTDIR)/usr/bin/i810rotate
- rm -f $(DESTDIR)/usr/share/man/man1/i810switch.1.gz
- rm -f $(DESTDIR)/usr/share/man/man1/i810rotate.1.gz
+ rm -f ${DESTDIR}$(PREFIX)/i810switch
+ rm -f ${DESTDIR}$(PREFIX)/i810rotate
+ rm -f ${DESTDIR}$(PREFIX)/${PKGMANDIR}/man1/i810switch.1.gz
+ rm -f ${DESTDIR}$(PREFIX)/${PKGMANDIR}/man1/i810rotate.1.gz
clean:
@rm -f $(OBJECTS) i810switch

View File

@@ -0,0 +1,25 @@
$NetBSD: patch-ab,v 1.2 2011/10/01 22:32:11 dholland Exp $
--- getline.c 1969-12-31 19:00:00.000000000 -0500
+++ getline.c 2006-12-03 23:16:23.000000000 -0500
@@ -0,0 +1,21 @@
+#include <sys/param.h>
+#include <stdio.h>
+#if defined(__NetBSD__) && __NetBSD_Version__ < 599001600
+int
+getline(char **buf, size_t *len, FILE *fp)
+{
+ static char *b;
+ if (b)
+ free(b);
+ for (;;) {
+ if ((*buf = fparseln(fp, len, NULL, NULL, 0)) == NULL)
+ return 0;
+ if (*len == 0) {
+ free(*buf);
+ continue;
+ }
+ b = *buf;
+ return *len;
+ }
+}
+#endif

View File

@@ -0,0 +1,213 @@
$NetBSD: patch-ac,v 1.2 2011/10/01 22:32:11 dholland Exp $
--- i810switch.c.orig 2005-06-12 04:36:36.000000000 +0000
+++ i810switch.c
@@ -1,3 +1,4 @@
+#include <assert.h>
#include <stdarg.h>
#include <stdlib.h>
#include <fcntl.h>
@@ -9,7 +10,11 @@
#include <errno.h>
#define VERSION "0.6.5beta"
+#ifdef __NetBSD__
+#define CMD_LSPCI "pcictl /dev/pci0"
+#else
#define CMD_LSPCI "lspci"
+#endif
static const char *Opt_lcd = NULL;
static const char *Opt_crt = NULL;
@@ -49,19 +54,31 @@ struct i810_par {
/* PCI IDs */
-#define I810STR "8086:7121"
-#define I810ESTR "8086:7123"
-#define I810_DC100STR_1 "8086:7125"
-#define I810_DC100STR_2 "8086:1102"
-#define I810_IGSTR "8086:1112"
-#define I810_CFCSTR "8086:1132"
-#define I830STR "8086:3577"
-#define I845STR "8086:2562"
-#define I855STR "8086:3582"
-//#define I865STR "8086:2572"
-#define I915STR "8086:2592"
-#define MEMSTR "Memory at"
+static const struct {
+ char *id;
+ int type;
+} i8xx[] = {
+/* I810STR */ { "7121", I810 },
+/* I810ESTR */ { "7123", I810 },
+/* I810_DC100STR_1 */ { "7125", I810 },
+/* I810_DC100STR_2 */ { "1102", I810 },
+/* I810_IGSTR */ { "1112", I810 },
+/* I810_CFCSTR */ { "1132", I810 },
+/* I830STR */ { "3577", I830 },
+/* I845STR */ { "2562", I855 },
+/* I855STR */ { "3582", I855 },
+/* I865STR { "2572", I865 }, */
+/* I915STR */ { "2592", I915 },
+ { NULL, 0 },
+};
+
+#ifdef __NetBSD__
+#define NONPRSTR "32-bit nonprefetchable memory"
+#define MEMSTR "base:"
+#else
#define NONPRSTR "32-bit, non-prefetchable"
+#define MEMSTR "Memory at"
+#endif
/* I810 registers */
#define I810_HVSYNC 0x05000
@@ -243,62 +260,48 @@ void probe_card_I830(struct i810_par *pa
i810_readl(par->mmio, I830_DSPBSTRIDE));
}
-char *i810_chip(char **buff_ptr, int *len_ptr, FILE *pci_f, int* chiptype)
+char *i810_chip(char **buff_ptr, size_t *len_ptr, FILE *pci_f, int* chiptype)
{
int i;
char *p;
+ char buf[10];
while (getline(buff_ptr, len_ptr, pci_f) > 0) {
- i = (p = strstr(*buff_ptr, I810STR)) != NULL ||
- (p = strstr(*buff_ptr, I810ESTR)) != NULL ||
- (p = strstr(*buff_ptr, I810_DC100STR_1)) != NULL ||
- (p = strstr(*buff_ptr, I810_DC100STR_2)) != NULL ||
- (p = strstr(*buff_ptr, I810_IGSTR)) != NULL ||
- (p = strstr(*buff_ptr, I810_CFCSTR)) != NULL;
- if (i)
- {
- *chiptype = I810;
- return p;
- }
-
- i = (p = strstr(*buff_ptr, I830STR)) != NULL ||
-#if defined (I865STR)
- (p = strstr(*buff_ptr, I865STR)) != NULL ||
-#endif /*defined (I865STR)*/
- (p = strstr(*buff_ptr, I845STR)) != NULL;
- if (i)
- {
- *chiptype = I830;
- return p;
- }
-
- i = (p = strstr(*buff_ptr, I855STR)) != NULL;
- if (i)
- {
- *chiptype = I855;
- return p;
- }
-
- i = (p = strstr(*buff_ptr, I915STR)) != NULL;
- if (i)
- {
- *chiptype = I915;
+ for (i = 0; i8xx[i].id != NULL; i++) {
+#ifdef __NetBSD__
+ snprintf(buf, sizeof(buf), "%s8086", i8xx[i].id);
+#else
+ snprintf(buf, sizeof(buf), "8086:%s", i8xx[i].id);
+#endif
+ if ((p = strstr(*buff_ptr, buf)) != NULL)
+ break;
+ }
+ if (i8xx[i].id) {
+ *chiptype = i8xx[i].type;
+#ifdef __NetBSD__
+ return *buff_ptr;
+#else
return p;
+#endif
}
}
return NULL;
}
-unsigned long i810_addr(char **buff_ptr, int *len_ptr, FILE *pci_f)
+unsigned long i810_addr(char **buff_ptr, size_t *len_ptr, FILE *pci_f)
{
char *p;
- while (getline(buff_ptr, len_ptr, pci_f) > 0)
+ while (getline(buff_ptr, len_ptr, pci_f) > 0) {
if (strstr(*buff_ptr, NONPRSTR) != NULL) {
+#ifdef __NetBSD__
+ assert(getline(buff_ptr, len_ptr, pci_f) > 0);
+#endif
p = strstr(*buff_ptr, MEMSTR);
if (p != NULL)
return strtoul(p+sizeof(MEMSTR), NULL, 16);
}
+ }
return 0;
}
@@ -316,10 +319,15 @@ int main (int argc, char *argv[])
{
struct i810_par par;
unsigned long addr;
- int i, crt = -1, lcd = -1, probe = 0, err = 0, count = 0, chiptype, len = 0;
+ int i, crt = -1, lcd = -1, probe = 0, err = 0, count = 0, chiptype;
+ size_t len = 0;
FILE *pci_f;
char *buff = NULL;
+#ifdef __NetBSD__
+ char lspcistr[] = CMD_LSPCI " dump -d %d -f %d";
+#else
char lspcistr[] = CMD_LSPCI " -v -d xxxx:xxxx";
+#endif
char *chip;
putenv("PATH=/sbin:/usr/sbin:/bin:/usr/bin");
@@ -357,7 +365,11 @@ int main (int argc, char *argv[])
}
}
- pci_f = popen(CMD_LSPCI " -n", "r");
+ pci_f = popen(CMD_LSPCI
+#ifdef __NetBSD__
+ " list"
+#endif
+ " -n", "r");
if (!pci_f) {
fprintf(stderr, "Something is wrong with lspci.\n");
exit(1);
@@ -369,6 +381,19 @@ int main (int argc, char *argv[])
}
pclose(pci_f);
+#ifdef __NetBSD__
+ {
+ char cmd[100];
+ int dev = -1, fun = -1;
+ sscanf(chip, "000:%d:%d:", &dev, &fun);
+ if (dev == -1 || fun == -1) {
+ fprintf(stderr, "CMD_LSPCI is wrong.\n");
+ exit(1);
+ }
+ snprintf(cmd, sizeof(cmd), lspcistr, dev, fun);
+ pci_f = popen(cmd, "r");
+ }
+#else
{
char *p = strstr(lspcistr, "xxxx:xxxx");
if (p == 0) {
@@ -376,9 +401,10 @@ int main (int argc, char *argv[])
exit(1);
}
memcpy(p, chip, 9);
+ pci_f = popen(lspcistr, "r");
}
+#endif
- pci_f = popen(lspcistr, "r");
if (!pci_f) {
fprintf(stderr, "Something is wrong with lspci.\n");
exit(1);