Deleted Added
full compact
acpi_lid.c (69910) acpi_lid.c (71872)
1/*-
2 * Copyright (c) 2000 Takanori Watanabe <takawata@jp.freebsd.org>
3 * Copyright (c) 2000 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
4 * Copyright (c) 2000 Michael Smith <msmith@freebd.org>
5 * Copyright (c) 2000 BSDi
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
1/*-
2 * Copyright (c) 2000 Takanori Watanabe <takawata@jp.freebsd.org>
3 * Copyright (c) 2000 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
4 * Copyright (c) 2000 Michael Smith <msmith@freebd.org>
5 * Copyright (c) 2000 BSDi
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
29 * $FreeBSD: head/sys/dev/acpica/acpi_lid.c 69910 2000-12-12 14:20:27Z iwasaki $
29 * $FreeBSD: head/sys/dev/acpica/acpi_lid.c 71872 2001-01-31 09:30:57Z msmith $
30 */
31
32#include "opt_acpi.h"
33#include <sys/param.h>
34#include <sys/kernel.h>
35#include <sys/bus.h>
36#include <sys/mutex.h>
37

--- 65 unchanged lines hidden (view full) ---

103 return_VALUE(0);
104}
105
106static void
107acpi_lid_notify_status_changed(void *arg)
108{
109 struct acpi_lid_softc *sc;
110 struct acpi_softc *acpi_sc;
30 */
31
32#include "opt_acpi.h"
33#include <sys/param.h>
34#include <sys/kernel.h>
35#include <sys/bus.h>
36#include <sys/mutex.h>
37

--- 65 unchanged lines hidden (view full) ---

103 return_VALUE(0);
104}
105
106static void
107acpi_lid_notify_status_changed(void *arg)
108{
109 struct acpi_lid_softc *sc;
110 struct acpi_softc *acpi_sc;
111 ACPI_BUFFER Buffer;
112 ACPI_OBJECT Object;
113
114 FUNCTION_TRACE(__FUNCTION__);
115
116 sc = (struct acpi_lid_softc *)arg;
117
118 /*
111
112 FUNCTION_TRACE(__FUNCTION__);
113
114 sc = (struct acpi_lid_softc *)arg;
115
116 /*
119 * Evaluate _LID and check the return value
117 * Evaluate _LID and check the return value, update lid status.
120 * Zero: The lid is closed
121 * Non-zero: The lid is open
122 */
118 * Zero: The lid is closed
119 * Non-zero: The lid is open
120 */
123 Buffer.Length = sizeof(Object);
124 Buffer.Pointer = &Object;
125 if (AcpiEvaluateObject(sc->lid_handle, "_LID", NULL, &Buffer) != AE_OK)
121 if (acpi_EvaluateInteger(sc->lid_handle, "_LID", &sc->lid_status) != AE_OK)
126 return_VOID;
122 return_VOID;
127 if (Object.Type != ACPI_TYPE_NUMBER)
128 return_VOID;
129
130 /*
131 * Update lid status
132 */
133 sc->lid_status = Object.Number.Value;
134 device_printf(sc->lid_dev, "Lid %s\n", sc->lid_status ? "opened" : "closed");
135
136 acpi_sc = acpi_device_get_parent_softc(sc->lid_dev);
137 if (acpi_sc == NULL) {
138 return_VOID;
139 }
140
141 if (sc->lid_status == 0) {

--- 28 unchanged lines hidden ---
123 device_printf(sc->lid_dev, "Lid %s\n", sc->lid_status ? "opened" : "closed");
124
125 acpi_sc = acpi_device_get_parent_softc(sc->lid_dev);
126 if (acpi_sc == NULL) {
127 return_VOID;
128 }
129
130 if (sc->lid_status == 0) {

--- 28 unchanged lines hidden ---