Date: Mon, 14 Jun 2004 04:16:12 GMT From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 54895 for review Message-ID: <200406140416.i5E4GCOl062642@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=54895 Change 54895 by rwatson@rwatson_tislabs on 2004/06/14 04:15:50 Integrate netperf_socket: ALTQ build fix. Affected files ... .. //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#23 integrate .. //depot/projects/netperf_socket/sys/i386/acpica/acpi_asus.c#3 integrate .. //depot/projects/netperf_socket/sys/i386/acpica/acpi_toshiba.c#6 integrate .. //depot/projects/netperf_socket/sys/net/if_var.h#12 integrate Differences ... ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#23 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.159 2004/06/13 22:52:30 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.161 2004/06/14 04:01:12 njl Exp $ */ #include "opt_acpi.h" @@ -125,6 +125,7 @@ static int acpi_isa_pnp_probe(device_t bus, device_t child, struct isa_pnp_id *ids); static void acpi_probe_children(device_t bus); +static int acpi_probe_order(ACPI_HANDLE handle, int *order); static ACPI_STATUS acpi_probe_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status); static void acpi_shutdown_pre_sync(void *arg, int howto); @@ -1152,25 +1153,31 @@ return_VOID; } +/* + * Determine the probe order for a given device and return non-zero if it + * should be attached immediately. + */ static int -acpi_probe_order(ACPI_HANDLE handle, int level, int *order) +acpi_probe_order(ACPI_HANDLE handle, int *order) { int ret; + /* + * 1. I/O port and memory system resource holders + * 2. Embedded controllers (to handle early accesses) + */ ret = 0; - /* IO port and memory system resource holders are first. */ if (acpi_MatchHid(handle, "PNP0C01") || acpi_MatchHid(handle, "PNP0C02")) { *order = 1; ret = 1; - } - - /* The embedded controller is needed to handle accesses early. */ - if (acpi_MatchHid(handle, "PNP0C09")) { + } else if (acpi_MatchHid(handle, "PNP0C09")) { *order = 2; ret = 1; } - *order = (level + 1) * 10; + /* Always probe/attach immediately if we're debugging. */ + ACPI_DEBUG_EXEC(ret = 1); + return (ret); } @@ -1203,11 +1210,14 @@ /* * Create a placeholder device for this node. Sort the placeholder - * so that the probe/attach passes will run breadth-first. + * so that the probe/attach passes will run breadth-first. Orders + * less than 10 are reserved for special objects (i.e., system + * resources). Larger values are used for all other devices. */ ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "scanning '%s'\n", acpi_name(handle))); - probe_now = acpi_probe_order(handle, level, &order); + order = (level + 1) * 10; + probe_now = acpi_probe_order(handle, &order); child = BUS_ADD_CHILD(bus, order, NULL, -1); if (child == NULL) break; @@ -1239,10 +1249,9 @@ */ acpi_parse_resources(child, handle, &acpi_res_parse_set, NULL); - /* If we're debugging, probe/attach now rather than later */ + /* If order was overridden, probe/attach now rather than later. */ if (probe_now) device_probe_and_attach(child); - ACPI_DEBUG_EXEC(device_probe_and_attach(child)); break; } } ==== //depot/projects/netperf_socket/sys/i386/acpica/acpi_asus.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_asus.c,v 1.3 2004/05/30 20:34:56 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_asus.c,v 1.4 2004/06/14 03:40:56 njl Exp $"); /* * Driver for extra ACPI-controlled gadgets (hotkeys, leds, etc) found on @@ -213,7 +213,7 @@ if (!acpi_disabled("asus") && acpi_get_type(dev) == ACPI_TYPE_DEVICE && - acpi_MatchHid(dev, "ATK0100")) { + acpi_MatchHid(acpi_get_handle(dev), "ATK0100")) { sc = device_get_softc(dev); sc->dev = dev; sc->handle = acpi_get_handle(dev); ==== //depot/projects/netperf_socket/sys/i386/acpica/acpi_toshiba.c#6 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_toshiba.c,v 1.8 2004/05/30 20:34:56 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_toshiba.c,v 1.9 2004/06/14 03:40:56 njl Exp $"); #include "opt_acpi.h" #include <sys/param.h> @@ -212,13 +212,15 @@ static int acpi_toshiba_probe(device_t dev) { + ACPI_HANDLE h; int ret = ENXIO; + h = acpi_get_handle(dev); if (!acpi_disabled("toshiba") && acpi_get_type(dev) == ACPI_TYPE_DEVICE && device_get_unit(dev) == 0 && - (acpi_MatchHid(dev, "TOS6200") || - acpi_MatchHid(dev, "TOS6207"))) { + (acpi_MatchHid(h, "TOS6200") || + acpi_MatchHid(h, "TOS6207"))) { device_set_desc(dev, "Toshiba HCI Extras"); ret = 0; } ==== //depot/projects/netperf_socket/sys/net/if_var.h#12 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * From: @(#)if.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_var.h,v 1.75 2004/06/13 17:29:08 mlaier Exp $ + * $FreeBSD: src/sys/net/if_var.h,v 1.76 2004/06/14 03:55:09 mlaier Exp $ */ #ifndef _NET_IF_VAR_H_ @@ -356,7 +356,7 @@ (*ifp->if_start)(ifp); return (1); } -#if 1 /* ALTQ */ +#ifdef ALTQ #define IFQ_ENQUEUE(ifq, m, err) \ do { \ IF_LOCK(ifq); \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200406140416.i5E4GCOl062642>