summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64/dev
diff options
context:
space:
mode:
authorFederico G. Schwindt <fgsch@cvs.openbsd.org>2002-05-22 22:02:09 +0000
committerFederico G. Schwindt <fgsch@cvs.openbsd.org>2002-05-22 22:02:09 +0000
commit5b606a39f9164098babbb010bc73a07f635fd1fa (patch)
tree4bb4c21fc841f5fec4a64bad10e9006cf9261ccd /sys/arch/sparc64/dev
parent3f07829b93ace0640205e778f058729bcf9408b0 (diff)
Match on "SUNW,afb" as well, a guess to make Elite3D cards work and print
the board type for now as well; jason@ ok.
Diffstat (limited to 'sys/arch/sparc64/dev')
-rw-r--r--sys/arch/sparc64/dev/creator.c34
1 files changed, 20 insertions, 14 deletions
diff --git a/sys/arch/sparc64/dev/creator.c b/sys/arch/sparc64/dev/creator.c
index 09779772581..c09ef06735b 100644
--- a/sys/arch/sparc64/dev/creator.c
+++ b/sys/arch/sparc64/dev/creator.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: creator.c,v 1.9 2002/05/22 21:30:47 jason Exp $ */
+/* $OpenBSD: creator.c,v 1.10 2002/05/22 22:02:08 fgsch Exp $ */
/*
* Copyright (c) 2002 Jason L. Wright (jason@thought.net)
@@ -91,15 +91,16 @@ const struct wsscreen_descr *creator_scrlist[] = {
};
struct wsscreen_list creator_screenlist = {
- sizeof(creator_scrlist) / sizeof(struct wsscreen_descr *), creator_scrlist
+ sizeof(creator_scrlist) / sizeof(struct wsscreen_descr *),
+ creator_scrlist
};
-int creator_ioctl(void *, u_long, caddr_t, int, struct proc *);
-int creator_alloc_screen(void *, const struct wsscreen_descr *, void **,
- int *, int *, long *);
-void creator_free_screen(void *, void *);
-int creator_show_screen(void *, void *, int, void (*cb)(void *, int, int),
- void *);
+int creator_ioctl(void *, u_long, caddr_t, int, struct proc *);
+int creator_alloc_screen(void *, const struct wsscreen_descr *, void **,
+ int *, int *, long *);
+void creator_free_screen(void *, void *);
+int creator_show_screen(void *, void *, int, void (*cb)(void *, int, int),
+ void *);
paddr_t creator_mmap(void *, off_t, int);
static int a2int(char *, int);
@@ -145,7 +146,8 @@ creator_match(parent, match, aux)
{
struct mainbus_attach_args *ma = aux;
- if (strcmp(ma->ma_name, "SUNW,ffb") == 0)
+ if (strcmp(ma->ma_name, "SUNW,ffb") == 0 ||
+ strcmp(ma->ma_name, "SUNW,afb") == 0)
return (1);
return (0);
}
@@ -169,12 +171,16 @@ creator_attach(parent, self, aux)
printf(":");
btype = getpropint(ma->ma_node, "board_type", 0);
- if ((btype & 7) == 3)
- printf(" Creator3D");
- else
- printf(" Creator");
- printf("\n");
+ if (strcmp(ma->ma_name, "SUNW,afb") != 0) {
+ if ((btype & 7) == 3)
+ printf(" Creator3D");
+ else
+ printf(" Creator");
+ } else
+ printf(" Elite3D");
+
+ printf(", type %d\n", btype);
if (nregs < FFB_REG_DFB32) {
printf(": no dfb32 regs found\n");