summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorjdc <jdc@NetBSD.org>2008-04-28 20:07:39 +0000
committerjdc <jdc@NetBSD.org>2008-04-28 20:07:39 +0000
commit313a56c04053b9b3ec0de60749106c6fcd5d7ebd (patch)
tree71eafb75dc5857c6680255e8e5115d8a154482df /sys/dev
parent06662e01eb4c39609d9deb02418676f26c731490 (diff)
Set (and display) the chip revision.
Set the GEM_SUN_GEM flag.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/sbus/if_gem_sbus.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/dev/sbus/if_gem_sbus.c b/sys/dev/sbus/if_gem_sbus.c
index 4ed5cb934cf..db81f6af91e 100644
--- a/sys/dev/sbus/if_gem_sbus.c
+++ b/sys/dev/sbus/if_gem_sbus.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_gem_sbus.c,v 1.4 2008/04/05 18:35:32 cegger Exp $ */
+/* $NetBSD: if_gem_sbus.c,v 1.5 2008/04/28 20:07:39 jdc Exp $ */
/*-
* Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_gem_sbus.c,v 1.4 2008/04/05 18:35:32 cegger Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_gem_sbus.c,v 1.5 2008/04/28 20:07:39 jdc Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -100,8 +100,11 @@ gemattach_sbus(struct device *parent, struct device *self, void *aux)
sc->sc_bustag = sa->sa_bustag;
sc->sc_dmatag = sa->sa_dmatag;
- printf(": GEM Ethernet controller (%s), version %s\n",
- sa->sa_name, prom_getpropstring(sa->sa_node, "version"));
+ sc->sc_chiprev = prom_getpropint(sa->sa_node, "gem-rev", 0);
+
+ printf(": GEM Ethernet controller (%s), version %s (rev 0x%02x)\n",
+ sa->sa_name, prom_getpropstring(sa->sa_node, "version"),
+ sc->sc_chiprev);
if (sa->sa_nreg < 2) {
printf("%s: only %d register sets\n",
@@ -137,6 +140,7 @@ gemattach_sbus(struct device *parent, struct device *self, void *aux)
if (!strcmp("serdes", prom_getpropstring(sa->sa_node, "shared-pins")))
sc->sc_flags |= GEM_SERDES;
+ sc->sc_variant = GEM_SUN_GEM;
/*
* SBUS config