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