Module Name:    src
Committed By:   jruoho
Date:           Fri Dec 31 09:19:44 UTC 2010

Modified Files:
        src/sys/arch/x86/acpi: acpi_wakeup.c
        src/sys/dev/acpi: acpi.c

Log Message:
Move the ACPI sleep-specific sysctl variables to hw.acpi.sleep. The old
machdep-variables are provided for backwards compatibility (eventually these
should be removed). All ACPI sysctl variables are now under hw.acpi.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/x86/acpi/acpi_wakeup.c
cvs rdiff -u -r1.222 -r1.223 src/sys/dev/acpi/acpi.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x86/acpi/acpi_wakeup.c
diff -u src/sys/arch/x86/acpi/acpi_wakeup.c:1.25 src/sys/arch/x86/acpi/acpi_wakeup.c:1.26
--- src/sys/arch/x86/acpi/acpi_wakeup.c:1.25	Thu Jul 29 11:40:08 2010
+++ src/sys/arch/x86/acpi/acpi_wakeup.c	Fri Dec 31 09:19:43 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: acpi_wakeup.c,v 1.25 2010/07/29 11:40:08 jruoho Exp $	*/
+/*	$NetBSD: acpi_wakeup.c,v 1.26 2010/12/31 09:19:43 jruoho Exp $	*/
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.25 2010/07/29 11:40:08 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.26 2010/12/31 09:19:43 jruoho Exp $");
 
 /*-
  * Copyright (c) 2001 Takanori Watanabe <takaw...@jp.freebsd.org>
@@ -111,7 +111,6 @@
 static paddr_t acpi_wakeup_paddr = 3 * PAGE_SIZE;
 static vaddr_t acpi_wakeup_vaddr;
 
-static int acpi_md_node = CTL_EOL;
 int acpi_md_vbios_reset = 1; /* Referenced by dev/pci/vga_pci.c */
 int acpi_md_vesa_modenum = 0; /* Referenced by arch/x86/x86/genfb_machdep.c */
 static int acpi_md_beep_on_reset = 0;
@@ -396,23 +395,63 @@
 
 SYSCTL_SETUP(sysctl_md_acpi_setup, "acpi x86 sysctl setup")
 {
-	const struct sysctlnode *node;
-	const struct sysctlnode *ssnode;
+	const struct sysctlnode *rnode, *mnode;
+	int err;
 
-	if (sysctl_createv(NULL, 0, NULL, &node, CTLFLAG_PERMANENT,
-	    CTLTYPE_NODE, "machdep", NULL, NULL, 0, NULL, 0, CTL_MACHDEP,
-	    CTL_EOL) != 0)
-		return;
-	if (sysctl_createv(NULL, 0, &node, &ssnode, CTLFLAG_READWRITE,
-	    CTLTYPE_INT, "acpi_vbios_reset", NULL, sysctl_md_acpi_vbios_reset,
-	    0, NULL, 0, CTL_CREATE, CTL_EOL) != 0)
-		return;
-	if (sysctl_createv(NULL, 0, &node, &ssnode, CTLFLAG_READWRITE,
-	    CTLTYPE_BOOL, "acpi_beep_on_reset", NULL, sysctl_md_acpi_beep_on_reset,
-	    0, NULL, 0, CTL_CREATE, CTL_EOL) != 0)
+	err = sysctl_createv(clog, 0, NULL, &rnode,
+	    CTLFLAG_PERMANENT, CTLTYPE_NODE, "hw",
+	    NULL, NULL, 0, NULL, 0, CTL_HW, CTL_EOL);
+
+	if (err != 0)
+		goto out;
+
+	err = sysctl_createv(clog, 0, &rnode, &rnode,
+	    CTLFLAG_PERMANENT, CTLTYPE_NODE, "acpi", NULL,
+	    NULL, 0, NULL, 0, CTL_CREATE, CTL_EOL);
+
+	if (err != 0)
+		goto out;
+
+	err = sysctl_createv(clog, 0, &rnode, &rnode,
+	    CTLFLAG_PERMANENT, CTLTYPE_NODE,
+	    "sleep", SYSCTL_DESCR("ACPI sleep"),
+	    NULL, 0, NULL, 0, CTL_CREATE, CTL_EOL);
+
+	if (err != 0)
+		goto out;
+
+	(void)sysctl_createv(NULL, 0, &rnode, NULL,
+	    CTLFLAG_READWRITE, CTLTYPE_BOOL, "beep",
+	    NULL, sysctl_md_acpi_beep_on_reset,
+	    0, NULL, 0, CTL_CREATE, CTL_EOL);
+
+	(void)sysctl_createv(NULL, 0, &rnode, NULL,
+	    CTLFLAG_READWRITE, CTLTYPE_INT, "vbios",
+	    NULL, sysctl_md_acpi_vbios_reset,
+	    0, NULL, 0, CTL_CREATE, CTL_EOL);
+
+	/*
+	 * All ACPI-specific sysctl(9) nodes are centralized
+	 * under hw.acpi. The two variables below are provided
+	 * for backwards compatibility.
+	 */
+out:
+	err = sysctl_createv(NULL, 0, NULL, &mnode,
+	    CTLFLAG_PERMANENT, CTLTYPE_NODE, "machdep",
+	    NULL, NULL, 0, NULL, 0, CTL_MACHDEP, CTL_EOL);
+
+	if (err != 0)
 		return;
 
-	acpi_md_node = node->sysctl_num;
+	(void)sysctl_createv(NULL, 0, &mnode, NULL,
+	    CTLFLAG_READWRITE, CTLTYPE_INT, "acpi_vbios_reset",
+	    NULL, sysctl_md_acpi_vbios_reset,
+	    0, NULL, 0, CTL_CREATE, CTL_EOL);
+
+	(void)sysctl_createv(NULL, 0, &mnode, NULL,
+	    CTLFLAG_READWRITE, CTLTYPE_BOOL, "acpi_beep_on_reset",
+	    NULL, sysctl_md_acpi_beep_on_reset,
+	    0, NULL, 0, CTL_CREATE, CTL_EOL);
 }
 
 static int
@@ -433,7 +472,7 @@
 
 #ifndef VGA_POST
 	if (t == 2) {
-		aprint_error("WARNING: machdep.acpi_vbios_reset=2 "
+		aprint_error("WARNING: hw.acpi.sleep.vbios=2 "
 		    "unsupported (no option VGA_POST in kernel config)\n");
 		return EINVAL;
 	}

Index: src/sys/dev/acpi/acpi.c
diff -u src/sys/dev/acpi/acpi.c:1.222 src/sys/dev/acpi/acpi.c:1.223
--- src/sys/dev/acpi/acpi.c:1.222	Sun Oct 24 07:53:04 2010
+++ src/sys/dev/acpi/acpi.c	Fri Dec 31 09:19:43 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: acpi.c,v 1.222 2010/10/24 07:53:04 jruoho Exp $	*/
+/*	$NetBSD: acpi.c,v 1.223 2010/12/31 09:19:43 jruoho Exp $	*/
 
 /*-
  * Copyright (c) 2003, 2007 The NetBSD Foundation, Inc.
@@ -100,7 +100,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi.c,v 1.222 2010/10/24 07:53:04 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi.c,v 1.223 2010/12/31 09:19:43 jruoho Exp $");
 
 #include "opt_acpi.h"
 #include "opt_pcifixup.h"
@@ -1495,7 +1495,7 @@
  */
 SYSCTL_SETUP(sysctl_acpi_setup, "sysctl hw.acpi subtree setup")
 {
-	const struct sysctlnode *mnode, *rnode;
+	const struct sysctlnode *mnode, *rnode, *snode;
 	int err;
 
 	err = sysctl_createv(clog, 0, NULL, &rnode,
@@ -1521,12 +1521,31 @@
 	    NULL, 0, &acpi_root_pointer, sizeof(acpi_root_pointer),
 	    CTL_CREATE, CTL_EOL);
 
-	(void)sysctl_createv(NULL, 0, &rnode, NULL,
+	err = sysctl_createv(clog, 0, &rnode, &snode,
+	    CTLFLAG_PERMANENT, CTLTYPE_NODE,
+	    "sleep", SYSCTL_DESCR("ACPI sleep"),
+	    NULL, 0, NULL, 0,
+	    CTL_CREATE, CTL_EOL);
+
+	if (err != 0)
+		return;
+
+	(void)sysctl_createv(NULL, 0, &snode, NULL,
+	    CTLFLAG_PERMANENT | CTLFLAG_READWRITE, CTLTYPE_INT,
+	    "state", SYSCTL_DESCR("System sleep state"),
+	    sysctl_hw_acpi_sleepstate, 0, NULL, 0,
+	    CTL_CREATE, CTL_EOL);
+
+	(void)sysctl_createv(NULL, 0, &snode, NULL,
 	    CTLFLAG_PERMANENT | CTLFLAG_READONLY, CTLTYPE_STRING,
-	    "supported_states", SYSCTL_DESCR("Supported system states"),
+	    "states", SYSCTL_DESCR("Supported sleep states"),
 	    sysctl_hw_acpi_sleepstates, 0, NULL, 0,
 	    CTL_CREATE, CTL_EOL);
 
+	/*
+	 * For the time being, machdep.sleep_state
+	 * is provided for backwards compatibility.
+	 */
 	err = sysctl_createv(NULL, 0, NULL, &mnode,
 	    CTLFLAG_PERMANENT, CTLTYPE_NODE, "machdep",
 	    NULL, NULL, 0, NULL, 0,

Reply via email to