summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authormdodd <mdodd@FreeBSD.org>1999-07-29 01:03:04 +0000
committermdodd <mdodd@FreeBSD.org>1999-07-29 01:03:04 +0000
commit1b3328c30076a4872fb76549719ee41c4f633e6a (patch)
tree08fbd565ea1bf201e2bfcfcd2a4119c82ef665a7 /sys/alpha
parent0d84c8efb0a2e4b063d0c818f89eb17ee4bc6e47 (diff)
downloadFreeBSD-src-1b3328c30076a4872fb76549719ee41c4f633e6a.zip
FreeBSD-src-1b3328c30076a4872fb76549719ee41c4f633e6a.tar.gz
Alter the behavior of sys/kern/subr_bus.c:device_print_child()
- device_print_child() either lets the BUS_PRINT_CHILD method produce the entire device announcement message or it prints "foo0: not found\n" Alter sys/kern/subr_bus.c:bus_generic_print_child() to take on the previous behavior of device_print_child() (printing the "foo0: <FooDevice 1.1>" bit of the announce message.) Provide bus_print_child_header() and bus_print_child_footer() to actually print the output for bus_generic_print_child(). These functions should be used whenever possible (unless you can just use bus_generic_print_child()) The BUS_PRINT_CHILD method now returns int instead of void. Modify everything else that defines or uses a BUS_PRINT_CHILD method to comply with the above changes. - Devices are 'on' a bus, not 'at' it. - If a custom BUS_PRINT_CHILD method does the same thing as bus_generic_print_child(), use bus_generic_print_child() - Use device_get_nameunit() instead of both device_get_name() and device_get_unit() - All BUS_PRINT_CHILD methods return the number of characters output. Reviewed by: dfr, peter
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/tc/ioasic.c16
-rw-r--r--sys/alpha/tc/tc.c14
-rw-r--r--sys/alpha/tc/tcasic.c14
-rw-r--r--sys/alpha/tc/tcds.c13
-rw-r--r--sys/alpha/tlsb/gbus.c13
-rw-r--r--sys/alpha/tlsb/kftxx.c15
-rw-r--r--sys/alpha/tlsb/tlsb.c14
-rw-r--r--sys/alpha/tlsb/zs_tlsb.c16
8 files changed, 51 insertions, 64 deletions
diff --git a/sys/alpha/tc/ioasic.c b/sys/alpha/tc/ioasic.c
index 9b7d87f..5771d22 100644
--- a/sys/alpha/tc/ioasic.c
+++ b/sys/alpha/tc/ioasic.c
@@ -1,4 +1,4 @@
-/* $Id: ioasic.c,v 1.3 1999/05/10 15:51:23 peter Exp $ */
+/* $Id: ioasic.c,v 1.4 1999/05/10 16:36:42 peter Exp $ */
/* from $NetBSD: ioasic.c,v 1.19 1998/05/27 00:18:13 thorpej Exp $ */
/*-
@@ -99,7 +99,7 @@ struct ioasic_softc {
static int ioasic_probe(device_t dev);
static int ioasic_attach(device_t dev);
static driver_intr_t ioasic_intrnull;
-static void ioasic_print_child(device_t bus, device_t dev);
+static int ioasic_print_child(device_t bus, device_t dev);
static void ioasic_lance_dma_setup(void *v);
int ioasic_intr __P((void *));
@@ -239,13 +239,17 @@ ioasic_intrnull(void *val)
(u_long)val);
}
-static void
+static int
ioasic_print_child(device_t bus, device_t dev)
{
struct ioasic_dev *ioasic = device_get_ivars(dev);
- printf(" at %s%d, offset 0x%x",
- device_get_name(bus), device_get_unit(bus),
- ioasic->iad_offset);
+ int retval = 0;
+
+ retval += bus_print_child_header(bus, dev);
+ retval += printf(" on %s offset 0x%x\n", device_get_nameunit(bus),
+ ioasic->iad_offset);
+
+ return (retval);
}
char *
diff --git a/sys/alpha/tc/tc.c b/sys/alpha/tc/tc.c
index 14703a3..b6b51db 100644
--- a/sys/alpha/tc/tc.c
+++ b/sys/alpha/tc/tc.c
@@ -1,4 +1,4 @@
-/* $Id: tc.c,v 1.4 1999/05/10 15:53:33 peter Exp $ */
+/* $Id: tc.c,v 1.5 1999/07/01 22:49:03 peter Exp $ */
/*
* Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
* All rights reserved.
@@ -72,7 +72,6 @@ static tc_offset_t tc_slot_romoffs[NTC_ROMOFFS] = {
static int tc_probe(device_t dev);
static int tc_attach(device_t dev);
-static void tc_print_child(device_t bus, device_t dev);
int tc_checkslot( tc_addr_t slotbase, char *namep);
static device_method_t tc_methods[] = {
@@ -80,7 +79,7 @@ static device_method_t tc_methods[] = {
DEVMETHOD(device_probe, tc_probe),
DEVMETHOD(device_attach, tc_attach),
/* Bus interface */
- DEVMETHOD(bus_print_child, tc_print_child),
+ DEVMETHOD(bus_print_child, bus_generic_print_child),
{ 0, 0 },
};
@@ -684,14 +683,5 @@ tc_intr_disestablish(dev, cookie)
(*sc->sc_intr_disestablish)(device_get_parent(dev), cookie);
}
-
-
-static void
-tc_print_child(device_t bus, device_t dev)
-{
- printf(" at %s%d",
- device_get_name(bus), device_get_unit(bus));
-}
-
DRIVER_MODULE(tc, tcasic, tc_driver, tc_devclass, 0, 0);
diff --git a/sys/alpha/tc/tcasic.c b/sys/alpha/tc/tcasic.c
index 817ce10..683f3d3 100644
--- a/sys/alpha/tc/tcasic.c
+++ b/sys/alpha/tc/tcasic.c
@@ -1,4 +1,4 @@
-/* $Id: tcasic.c,v 1.3 1999/05/08 21:58:49 dfr Exp $ */
+/* $Id: tcasic.c,v 1.4 1999/05/10 15:54:58 peter Exp $ */
/* from $NetBSD: tcasic.c,v 1.23 1998/05/14 00:01:31 thorpej Exp $ */
/*
@@ -56,13 +56,12 @@ struct tcasic_softc {
static int tcasic_probe(device_t dev);
static int tcasic_attach(device_t dev);
-static void tcasic_print_child(device_t bus, device_t dev);
static device_method_t tcasic_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, tcasic_probe),
DEVMETHOD(device_attach, tcasic_attach),
- DEVMETHOD(bus_print_child, tcasic_print_child),
+ DEVMETHOD(bus_print_child, bus_generic_print_child),
{ 0, 0 }
};
@@ -97,14 +96,5 @@ tcasic_attach(device_t dev)
return 0;
}
-static void
-tcasic_print_child(device_t bus, device_t dev)
-{
- printf(" at %s%d",
- device_get_name(bus), device_get_unit(bus));
-}
-
-
-
DRIVER_MODULE(tcasic, root, tcasic_driver, tcasic_devclass, 0, 0);
diff --git a/sys/alpha/tc/tcds.c b/sys/alpha/tc/tcds.c
index 1229c7e..6736fec7 100644
--- a/sys/alpha/tc/tcds.c
+++ b/sys/alpha/tc/tcds.c
@@ -1,4 +1,4 @@
-/* $Id: tcds.c,v 1.1 1998/08/20 08:27:11 dfr Exp $ */
+/* $Id: tcds.c,v 1.2 1999/05/08 21:58:50 dfr Exp $ */
/* from $NetBSD: tcds.c,v 1.25 1998/05/26 23:43:05 thorpej Exp $ */
/*-
@@ -105,7 +105,6 @@ struct tcds_softc {
static int tcds_probe(device_t dev);
static int tcds_attach(device_t dev);
static void tcds_intrnull __P((void *));
-static void tcds_print_child(device_t bus, device_t dev);
static void tcds_lance_dma_setup(void *v);
static int tcds_intr __P((void *));
@@ -115,7 +114,7 @@ static device_method_t tcds_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, tcds_probe),
DEVMETHOD(device_attach, tcds_attach),
- DEVMETHOD(bus_print_child, tcds_print_child),
+ DEVMETHOD(bus_print_child, bus_generic_print_child),
{ 0, 0 }
};
@@ -446,13 +445,5 @@ tcds_intr(val)
return 1;
}
-static void
-tcds_print_child(device_t bus, device_t dev)
-{
- struct tcds_dev *ioasic = device_get_ivars(dev);
- printf(" at %s%d", device_get_name(bus), device_get_unit(bus));
-}
-
-
DRIVER_MODULE(tcds, tc, tcds_driver, tcds_devclass, 0, 0);
diff --git a/sys/alpha/tlsb/gbus.c b/sys/alpha/tlsb/gbus.c
index 2d4ad30..4213df6 100644
--- a/sys/alpha/tlsb/gbus.c
+++ b/sys/alpha/tlsb/gbus.c
@@ -78,7 +78,7 @@ static devclass_t gbus_devclass;
* Device methods
*/
static int gbus_probe(device_t dev);
-static void gbus_print_child(device_t dev, device_t child);
+static int gbus_print_child(device_t dev, device_t child);
static int gbus_read_ivar(device_t dev, device_t child, int which, u_long *result);;
static device_method_t gbus_methods[] = {
@@ -128,14 +128,17 @@ gbus_probe(device_t dev)
return 0;
}
-static void
+static int
gbus_print_child(device_t bus, device_t dev)
{
struct gbus_device* gdev = DEVTOGBUS(dev);
+ int retval = 0;
+
+ retval += bus_print_child_header(bus, dev);
+ retval += printf(" on %s offset 0x%x\n", device_get_nameunit(bus),
+ gdev->gd_offset);
- printf(" at %s%d offset 0x%x",
- device_get_name(bus), device_get_unit(bus),
- gdev->gd_offset);
+ return (retval);
}
static int
diff --git a/sys/alpha/tlsb/kftxx.c b/sys/alpha/tlsb/kftxx.c
index bfcd2e0..889f97d 100644
--- a/sys/alpha/tlsb/kftxx.c
+++ b/sys/alpha/tlsb/kftxx.c
@@ -1,4 +1,4 @@
-/* $Id: kftxx.c,v 1.4 1998/11/15 18:25:16 dfr Exp $ */
+/* $Id: kftxx.c,v 1.5 1999/05/08 21:58:53 dfr Exp $ */
/* $NetBSD: kftxx.c,v 1.9 1998/05/14 00:01:32 thorpej Exp $ */
/*
@@ -75,7 +75,7 @@ static devclass_t kft_devclass;
* Device methods
*/
static int kft_probe(device_t dev);
-static void kft_print_child(device_t dev, device_t child);
+static int kft_print_child(device_t dev, device_t child);
static int kft_read_ivar(device_t dev, device_t child, int which, u_long *result);;
static device_method_t kft_methods[] = {
@@ -151,14 +151,17 @@ kft_probe(device_t dev)
return 0;
}
-static void
+static int
kft_print_child(device_t bus, device_t dev)
{
struct kft_device *kd = (struct kft_device*) device_get_ivars(dev);
+ int retval = 0;
+
+ retval += bus_print_child_header(bus, dev);
+ retval += printf(" on %s hose %d\n", device_get_nameunit(bus),
+ kd->kd_hosenum);
- printf(" at %s%d hose %d",
- device_get_name(bus), device_get_unit(bus),
- kd->kd_hosenum);
+ return (retval);
}
static int
diff --git a/sys/alpha/tlsb/tlsb.c b/sys/alpha/tlsb/tlsb.c
index f1097b2..8463ab1 100644
--- a/sys/alpha/tlsb/tlsb.c
+++ b/sys/alpha/tlsb/tlsb.c
@@ -93,7 +93,7 @@ static devclass_t tlsb_devclass;
* Device methods
*/
static int tlsb_probe(device_t dev);
-static void tlsb_print_child(device_t dev, device_t child);
+static int tlsb_print_child(device_t dev, device_t child);
static int tlsb_read_ivar(device_t dev, device_t child, int which, u_long* result);
static int tlsb_setup_intr(device_t dev, device_t child,
struct resource *irq, int flags,
@@ -230,15 +230,17 @@ tlsb_probe(device_t dev)
return 0;
}
-static void
+static int
tlsb_print_child(device_t dev, device_t child)
{
struct tlsb_device* tdev = DEVTOTLSB(child);
+ int retval = 0;
+
+ retval += bus_print_child_header(dev, child);
+ retval += printf(" at %s node %d\n", device_get_nameunit(dev),
+ tdev->td_node);
- printf(" at %s%d node %d",
- device_get_name(dev),
- device_get_unit(dev),
- tdev->td_node);
+ return (retval);
}
static int
diff --git a/sys/alpha/tlsb/zs_tlsb.c b/sys/alpha/tlsb/zs_tlsb.c
index 55171a4..337706d 100644
--- a/sys/alpha/tlsb/zs_tlsb.c
+++ b/sys/alpha/tlsb/zs_tlsb.c
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: zs_tlsb.c,v 1.13 1999/05/30 16:50:54 phk Exp $
+ * $Id: zs_tlsb.c,v 1.14 1999/07/04 14:58:04 phk Exp $
*/
/*
* This driver is a hopeless hack to get the SimOS console working. A real
@@ -405,7 +405,7 @@ struct zsc_softc {
static int zsc_tlsb_probe(device_t dev);
static int zsc_tlsb_attach(device_t dev);
-static void zsc_tlsb_print_child(device_t dev, device_t child);
+static int zsc_tlsb_print_child(device_t dev, device_t child);
static driver_intr_t zsc_tlsb_intr;
@@ -485,12 +485,16 @@ zsc_tlsb_attach(device_t dev)
return 0;
}
-static void
+static int
zsc_tlsb_print_child(device_t bus, device_t dev)
{
- printf(" at %s%d channel %c",
- device_get_name(bus), device_get_unit(bus),
- 'A' + (device_get_unit(dev) & 1));
+ int retval = 0;
+
+ retval += bus_print_child_header(bus, dev);
+ retval += printf(" on %s channel %c\n", device_get_nameunit(bus),
+ 'A' + (device_get_unit(dev) & 1));
+
+ return (retval);
}
static void
OpenPOWER on IntegriCloud