Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/acpi Some pretty printing for ACPIVERBOSE.
details: https://anonhg.NetBSD.org/src/rev/48570e04335c
branches: trunk
changeset: 754181:48570e04335c
user: jruoho <jruoho%NetBSD.org@localhost>
date: Thu Apr 22 21:58:08 2010 +0000
description:
Some pretty printing for ACPIVERBOSE.
diffstat:
sys/dev/acpi/acpi.c | 54 ++++++++++++++++++++++++++++--------------------
sys/dev/acpi/acpi_pci.c | 48 ++++++-------------------------------------
sys/dev/acpi/acpi_pci.h | 4 +-
3 files changed, 40 insertions(+), 66 deletions(-)
diffs (218 lines):
diff -r 15a8337ef6ff -r 48570e04335c sys/dev/acpi/acpi.c
--- a/sys/dev/acpi/acpi.c Thu Apr 22 21:47:32 2010 +0000
+++ b/sys/dev/acpi/acpi.c Thu Apr 22 21:58:08 2010 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi.c,v 1.181 2010/04/22 18:40:09 jruoho Exp $ */
+/* $NetBSD: acpi.c,v 1.182 2010/04/22 21:58:08 jruoho Exp $ */
/*-
* Copyright (c) 2003, 2007 The NetBSD Foundation, Inc.
@@ -65,7 +65,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi.c,v 1.181 2010/04/22 18:40:09 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi.c,v 1.182 2010/04/22 21:58:08 jruoho Exp $");
#include "opt_acpi.h"
#include "opt_pcifixup.h"
@@ -169,7 +169,7 @@
static void acpi_build_tree(struct acpi_softc *);
-#ifdef ACPI_DEBUG
+#ifdef ACPIVERBOSE
static void acpi_print_tree(struct acpi_devnode *, uint32_t);
#endif
@@ -597,17 +597,18 @@
(void)AcpiWalkNamespace(ACPI_TYPE_ANY, ACPI_ROOT_OBJECT, UINT32_MAX,
acpi_make_devnode, acpi_make_devnode_post, &awc, NULL);
-#ifdef ACPI_DEBUG
- acpi_print_tree(sc->sc_root, 0);
-#endif
-
acpi_rescan1(sc, NULL, NULL);
acpi_rescan_capabilities(sc);
- acpi_pcidev_scan(sc);
+ (void)acpi_pcidev_scan(sc->sc_root);
+
+#ifdef ACPIVERBOSE
+ aprint_normal("\n");
+ acpi_print_tree(sc->sc_root, 0);
+#endif
}
-#ifdef ACPI_DEBUG
+#ifdef ACPIVERBOSE
static void
acpi_print_tree(struct acpi_devnode *ad, uint32_t level)
{
@@ -615,9 +616,28 @@
uint32_t i;
for (i = 0; i < level; i++)
- aprint_normal(" ");
+ aprint_normal(" ");
+
+ aprint_normal("%-5s [%02u] [%c%c] ", ad->ad_name, ad->ad_type,
+ ((ad->ad_flags & ACPI_DEVICE_POWER) != 0) ? 'P' : 'x',
+ ((ad->ad_flags & ACPI_DEVICE_WAKEUP) != 0) ? 'W' : 'x');
- aprint_normal("[%02u] %-5s\n", ad->ad_type, ad->ad_name);
+ if (ad->ad_pciinfo == NULL)
+ aprint_normal("@ xx:xx:xx:xx ");
+ else {
+ aprint_normal("@ 0x%02x:0x%02x:0x%02x:0x%02x ",
+ ad->ad_pciinfo->ap_segment, ad->ad_pciinfo->ap_bus,
+ ad->ad_pciinfo->ap_device, ad->ad_pciinfo->ap_function);
+
+ if ((ad->ad_devinfo->Flags & ACPI_PCI_ROOT_BRIDGE) != 0)
+ aprint_normal("[R] ");
+
+ if (ad->ad_pciinfo->ap_bridge != false)
+ aprint_normal("[B] -> 0x%02X",
+ ad->ad_pciinfo->ap_downbus);
+ }
+
+ aprint_normal("\n\n");
SIMPLEQ_FOREACH(child, &ad->ad_child_head, ad_child_list)
acpi_print_tree(child, level + 1);
@@ -1047,18 +1067,6 @@
ad->ad_flags |= ACPI_DEVICE_WAKEUP;
acpi_wakedev_add(ad);
}
-
- if (ad->ad_flags != 0) {
- aprint_debug_dev(sc->sc_dev, "%-5s ", ad->ad_name);
-
- if ((ad->ad_flags & ACPI_DEVICE_WAKEUP) != 0)
- aprint_debug("wake-up ");
-
- if ((ad->ad_flags & ACPI_DEVICE_POWER) != 0)
- aprint_debug("power (D%d) ", ad->ad_state);
-
- aprint_debug("\n");
- }
}
}
diff -r 15a8337ef6ff -r 48570e04335c sys/dev/acpi/acpi_pci.c
--- a/sys/dev/acpi/acpi_pci.c Thu Apr 22 21:47:32 2010 +0000
+++ b/sys/dev/acpi/acpi_pci.c Thu Apr 22 21:58:08 2010 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_pci.c,v 1.8 2010/04/22 15:25:46 jruoho Exp $ */
+/* $NetBSD: acpi_pci.c,v 1.9 2010/04/22 21:58:08 jruoho Exp $ */
/*
* Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_pci.c,v 1.8 2010/04/22 15:25:46 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_pci.c,v 1.9 2010/04/22 21:58:08 jruoho Exp $");
#include <sys/param.h>
#include <sys/device.h>
@@ -57,8 +57,6 @@
static ACPI_STATUS acpi_pcidev_pciroot_bus(ACPI_HANDLE, uint16_t *);
static ACPI_STATUS acpi_pcidev_pciroot_bus_callback(ACPI_RESOURCE *,
void *);
-static ACPI_STATUS acpi_pcidev_scan_rec(struct acpi_devnode *);
-
/*
* Regarding PCI Segment Groups, the ACPI spec says (cf. ACPI 4.0, p. 277):
@@ -154,15 +152,15 @@
}
/*
- * acpi_pcidev_scan_rec:
+ * acpi_pcidev_scan:
*
* Scan the ACPI device tree for PCI devices. A node is detected as a
* PCI device if it has an ancestor that is a PCI root bridge and such
* that all intermediate nodes are PCI-to-PCI bridges. Depth-first
* recursive implementation.
*/
-static ACPI_STATUS
-acpi_pcidev_scan_rec(struct acpi_devnode *ad)
+ACPI_STATUS
+acpi_pcidev_scan(struct acpi_devnode *ad)
{
struct acpi_devnode *child;
struct acpi_pci_info *ap;
@@ -239,9 +237,10 @@
goto rec;
}
+
rec:
SIMPLEQ_FOREACH(child, &ad->ad_child_head, ad_child_list) {
- rv = acpi_pcidev_scan_rec(child);
+ rv = acpi_pcidev_scan(child);
if (ACPI_FAILURE(rv))
return rv;
@@ -298,39 +297,6 @@
return AE_OK;
}
-static void
-acpi_pcidev_print(struct acpi_devnode *ad)
-{
- aprint_debug(" ");
- if (ad->ad_devinfo->Flags & ACPI_PCI_ROOT_BRIDGE)
- aprint_debug("*");
- aprint_debug("%s@%"PRIx16":%"PRIx16":%"PRIx16":%"PRIx16,
- ad->ad_name,
- ad->ad_pciinfo->ap_segment,
- ad->ad_pciinfo->ap_bus,
- ad->ad_pciinfo->ap_device,
- ad->ad_pciinfo->ap_function);
- if (ad->ad_pciinfo->ap_bridge)
- aprint_debug(">%"PRIx16, ad->ad_pciinfo->ap_downbus);
-}
-
-void
-acpi_pcidev_scan(struct acpi_softc *sc)
-{
- struct acpi_devnode *ad;
-
- acpi_pcidev_scan_rec(sc->sc_root);
- aprint_debug_dev(sc->sc_dev, "pci devices:");
-
- SIMPLEQ_FOREACH(ad, &sc->ad_head, ad_list) {
-
- if (ad->ad_pciinfo != NULL)
- acpi_pcidev_print(ad);
- }
-
- aprint_debug("\n");
-}
-
/*
* acpi_pcidev_find:
*
diff -r 15a8337ef6ff -r 48570e04335c sys/dev/acpi/acpi_pci.h
--- a/sys/dev/acpi/acpi_pci.h Thu Apr 22 21:47:32 2010 +0000
+++ b/sys/dev/acpi/acpi_pci.h Thu Apr 22 21:58:08 2010 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_pci.h,v 1.4 2010/04/22 14:50:31 jruoho Exp $ */
+/* $NetBSD: acpi_pci.h,v 1.5 2010/04/22 21:58:08 jruoho Exp $ */
/*
* Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
#ifndef _SYS_DEV_ACPI_ACPI_PCI_H
#define _SYS_DEV_ACPI_ACPI_PCI_H
-void acpi_pcidev_scan(struct acpi_softc *);
+ACPI_STATUS acpi_pcidev_scan(struct acpi_devnode *);
ACPI_STATUS acpi_pcidev_find(uint16_t, uint16_t, uint16_t, uint16_t,
struct acpi_devnode **);
ACPI_STATUS acpi_pcidev_ppb_downbus(uint16_t, uint16_t, uint16_t, uint16_t,
Home |
Main Index |
Thread Index |
Old Index