diff options
| author | tsutsui <tsutsui@NetBSD.org> | 2009-09-08 18:31:36 +0000 |
|---|---|---|
| committer | tsutsui <tsutsui@NetBSD.org> | 2009-09-08 18:31:36 +0000 |
| commit | 32fba4227289978ffb95e01c324e0215db070d77 (patch) | |
| tree | dd7404c74075a80888b4ee8497ba2cd14de20b36 /sys/dev | |
| parent | 26a7078461abd96268afcfbfa2cdded4a06396b0 (diff) | |
sbus_establish() should take device_t self for the device itself,
not device_t parent even if sbus is grandparent of the device,
otherwise (*sd_reset)() callbacks will be called with an wrong device_t.
Even in such case, sbus_establish() looks for an sbus though device tree.
XXX: (*sd_reset)() isn't called anyway, and these stuff seems really bogus.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/sbus/esp_sbus.c | 8 | ||||
| -rw-r--r-- | sys/dev/sbus/if_le_lebuffer.c | 8 | ||||
| -rw-r--r-- | sys/dev/sbus/if_le_ledma.c | 8 |
3 files changed, 12 insertions, 12 deletions
diff --git a/sys/dev/sbus/esp_sbus.c b/sys/dev/sbus/esp_sbus.c index 186dd829477..ed5feac17a8 100644 --- a/sys/dev/sbus/esp_sbus.c +++ b/sys/dev/sbus/esp_sbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: esp_sbus.c,v 1.49 2009/09/08 18:15:17 tsutsui Exp $ */ +/* $NetBSD: esp_sbus.c,v 1.50 2009/09/08 18:31:36 tsutsui Exp $ */ /*- * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: esp_sbus.c,v 1.49 2009/09/08 18:15:17 tsutsui Exp $"); +__KERNEL_RCSID(0, "$NetBSD: esp_sbus.c,v 1.50 2009/09/08 18:31:36 tsutsui Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -408,9 +408,9 @@ espattach_dma(device_t parent, device_t self, void *aux) esc->sc_pri = sa->sa_pri; - /* Assume SBus is grandparent */ + /* SBus is grandparent, but sbus_establish() looks for it properly */ esc->sc_sd.sd_reset = esp_sbus_reset; - sbus_establish(&esc->sc_sd, parent); + sbus_establish(&esc->sc_sd, self); espattach(esc, &esp_sbus_glue); } diff --git a/sys/dev/sbus/if_le_lebuffer.c b/sys/dev/sbus/if_le_lebuffer.c index 17d0d55e04c..c9564ac5350 100644 --- a/sys/dev/sbus/if_le_lebuffer.c +++ b/sys/dev/sbus/if_le_lebuffer.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_le_lebuffer.c,v 1.25 2009/09/08 18:15:17 tsutsui Exp $ */ +/* $NetBSD: if_le_lebuffer.c,v 1.26 2009/09/08 18:31:36 tsutsui Exp $ */ /*- * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_le_lebuffer.c,v 1.25 2009/09/08 18:15:17 tsutsui Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_le_lebuffer.c,v 1.26 2009/09/08 18:31:36 tsutsui Exp $"); #include "opt_inet.h" #include "bpfilter.h" @@ -175,9 +175,9 @@ leattach_lebuffer(device_t parent, device_t self, void *aux) sc->sc_conf3 = prom_getpropint(sa->sa_node, "busmaster-regval", LE_C3_BSWP | LE_C3_ACON | LE_C3_BCON); - /* Assume SBus is grandparent */ + /* SBus is grandparent, but sbus_establish() looks for it properly */ lesc->sc_sd.sd_reset = le_lebuffer_reset; - sbus_establish(&lesc->sc_sd, parent); + sbus_establish(&lesc->sc_sd, self); sc->sc_supmedia = lemedia; sc->sc_nsupmedia = NLEMEDIA; diff --git a/sys/dev/sbus/if_le_ledma.c b/sys/dev/sbus/if_le_ledma.c index 50475998e7b..ee37c811f27 100644 --- a/sys/dev/sbus/if_le_ledma.c +++ b/sys/dev/sbus/if_le_ledma.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_le_ledma.c,v 1.32 2009/09/08 18:15:17 tsutsui Exp $ */ +/* $NetBSD: if_le_ledma.c,v 1.33 2009/09/08 18:31:36 tsutsui Exp $ */ /*- * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_le_ledma.c,v 1.32 2009/09/08 18:15:17 tsutsui Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_le_ledma.c,v 1.33 2009/09/08 18:31:36 tsutsui Exp $"); #include "opt_inet.h" #include "bpfilter.h" @@ -391,9 +391,9 @@ leattach_ledma(device_t parent, device_t self, void *aux) sc->sc_conf3 = LE_C3_BSWP | LE_C3_ACON | LE_C3_BCON; lesc->sc_lostcount = 0; - /* Assume SBus is grandparent */ + /* SBus is grandparent, but sbus_establish looks for it properly */ lesc->sc_sd.sd_reset = le_ledma_reset; - sbus_establish(&lesc->sc_sd, parent); + sbus_establish(&lesc->sc_sd, self); sc->sc_mediachange = lemediachange; sc->sc_mediastatus = lemediastatus; |
