Deleted Added
sdiff udiff text old ( 128047 ) new ( 128248 )
full compact
1/*-
2 * Copyright (c) 2001 Michael Smith
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
28__FBSDID("$FreeBSD: head/sys/dev/acpica/acpi_powerres.c 128248 2004-04-14 17:47:42Z njl $");
29
30#include "opt_acpi.h"
31#include <sys/param.h>
32#include <sys/kernel.h>
33#include <sys/malloc.h>
34#include <sys/bus.h>
35
36#include "acpi.h"

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

92};
93
94static TAILQ_HEAD(acpi_powerresource_list, acpi_powerresource)
95 acpi_powerresources;
96static TAILQ_HEAD(acpi_powerconsumer_list, acpi_powerconsumer)
97 acpi_powerconsumers;
98
99static ACPI_STATUS acpi_pwr_register_consumer(ACPI_HANDLE consumer);
100#ifdef notyet
101static ACPI_STATUS acpi_pwr_deregister_consumer(ACPI_HANDLE consumer);
102#endif /* notyet */
103static ACPI_STATUS acpi_pwr_register_resource(ACPI_HANDLE res);
104#ifdef notyet
105static ACPI_STATUS acpi_pwr_deregister_resource(ACPI_HANDLE res);
106#endif /* notyet */
107static void acpi_pwr_reference_resource(ACPI_OBJECT *obj,
108 void *arg);
109static ACPI_STATUS acpi_pwr_switch_power(void);
110static struct acpi_powerresource
111 *acpi_pwr_find_resource(ACPI_HANDLE res);
112static struct acpi_powerconsumer
113 *acpi_pwr_find_consumer(ACPI_HANDLE consumer);
114

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

190 out:
191 if (buf.Pointer != NULL)
192 AcpiOsFree(buf.Pointer);
193 if (ACPI_FAILURE(status) && rp != NULL)
194 free(rp, M_ACPIPWR);
195 return_ACPI_STATUS (status);
196}
197
198#ifdef notyet
199/*
200 * Deregister a power resource.
201 */
202static ACPI_STATUS
203acpi_pwr_deregister_resource(ACPI_HANDLE res)
204{
205 struct acpi_powerresource *rp;
206

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

220 TAILQ_REMOVE(&acpi_powerresources, rp, ap_link);
221 free(rp, M_ACPIPWR);
222
223 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "deregistered power resource %s\n",
224 acpi_name(res)));
225
226 return_ACPI_STATUS (AE_OK);
227}
228#endif /* notyet */
229
230/*
231 * Register a power consumer.
232 *
233 * It's OK to call this if we already know about the consumer.
234 */
235static ACPI_STATUS
236acpi_pwr_register_consumer(ACPI_HANDLE consumer)

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

254 pc->ac_state = ACPI_STATE_UNKNOWN;
255
256 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "registered power consumer %s\n",
257 acpi_name(consumer)));
258
259 return_ACPI_STATUS (AE_OK);
260}
261
262#ifdef notyet
263/*
264 * Deregister a power consumer.
265 *
266 * This should only be done once the consumer has been powered off.
267 * (XXX is this correct? Check once implemented)
268 */
269static ACPI_STATUS
270acpi_pwr_deregister_consumer(ACPI_HANDLE consumer)

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

284 /* Pull the consumer off the list and free it */
285 TAILQ_REMOVE(&acpi_powerconsumers, pc, ac_link);
286
287 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "deregistered power consumer %s\n",
288 acpi_name(consumer)));
289
290 return_ACPI_STATUS (AE_OK);
291}
292#endif /* notyet */
293
294/*
295 * Set a power consumer to a particular power state.
296 */
297ACPI_STATUS
298acpi_pwr_switch_consumer(ACPI_HANDLE consumer, int state)
299{
300 struct acpi_powerconsumer *pc;

--- 373 unchanged lines hidden ---