acpi_thermal.c (91640) | acpi_thermal.c (96926) |
---|---|
1/*- 2 * Copyright (c) 2000, 2001 Michael Smith 3 * Copyright (c) 2000 BSDi 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 10 unchanged lines hidden (view full) --- 19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25 * SUCH DAMAGE. 26 * | 1/*- 2 * Copyright (c) 2000, 2001 Michael Smith 3 * Copyright (c) 2000 BSDi 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 10 unchanged lines hidden (view full) --- 19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25 * SUCH DAMAGE. 26 * |
27 * $FreeBSD: head/sys/dev/acpica/acpi_thermal.c 91640 2002-03-04 18:46:13Z iwasaki $ | 27 * $FreeBSD: head/sys/dev/acpica/acpi_thermal.c 96926 2002-05-19 06:16:47Z peter $ |
28 */ 29 30#include "opt_acpi.h" 31#include <sys/param.h> 32#include <sys/kernel.h> 33#include <sys/kthread.h> 34#include <sys/lock.h> 35#include <sys/mutex.h> --- 131 unchanged lines hidden (view full) --- 167static int 168acpi_tz_attach(device_t dev) 169{ 170 struct acpi_tz_softc *sc; 171 struct acpi_softc *acpi_sc; 172 int error; 173 char oidname[8]; 174 | 28 */ 29 30#include "opt_acpi.h" 31#include <sys/param.h> 32#include <sys/kernel.h> 33#include <sys/kthread.h> 34#include <sys/lock.h> 35#include <sys/mutex.h> --- 131 unchanged lines hidden (view full) --- 167static int 168acpi_tz_attach(device_t dev) 169{ 170 struct acpi_tz_softc *sc; 171 struct acpi_softc *acpi_sc; 172 int error; 173 char oidname[8]; 174 |
175 ACPI_FUNCTION_TRACE(__func__); | 175 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
176 177 ACPI_LOCK; 178 179 sc = device_get_softc(dev); 180 sc->tz_dev = dev; 181 sc->tz_handle = acpi_get_handle(dev); 182 sc->tz_requested = TZ_ACTIVE_NONE; 183 sc->tz_tmp_updating = 0; --- 99 unchanged lines hidden (view full) --- 283 */ 284static int 285acpi_tz_establish(struct acpi_tz_softc *sc) 286{ 287 ACPI_OBJECT *obj; 288 int i; 289 char nbuf[8]; 290 | 176 177 ACPI_LOCK; 178 179 sc = device_get_softc(dev); 180 sc->tz_dev = dev; 181 sc->tz_handle = acpi_get_handle(dev); 182 sc->tz_requested = TZ_ACTIVE_NONE; 183 sc->tz_tmp_updating = 0; --- 99 unchanged lines hidden (view full) --- 283 */ 284static int 285acpi_tz_establish(struct acpi_tz_softc *sc) 286{ 287 ACPI_OBJECT *obj; 288 int i; 289 char nbuf[8]; 290 |
291 ACPI_FUNCTION_TRACE(__func__); | 291 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
292 293 ACPI_ASSERTLOCK; 294 295 /* 296 * Power everything off and erase any existing state. 297 */ 298 acpi_tz_all_off(sc); 299 for (i = 0; i < TZ_NUMLEVELS; i++) --- 75 unchanged lines hidden (view full) --- 375acpi_tz_monitor(struct acpi_tz_softc *sc) 376{ 377 int temp; 378 int i; 379 int newactive, newflags; 380 struct timespec curtime; 381 ACPI_STATUS status; 382 | 292 293 ACPI_ASSERTLOCK; 294 295 /* 296 * Power everything off and erase any existing state. 297 */ 298 acpi_tz_all_off(sc); 299 for (i = 0; i < TZ_NUMLEVELS; i++) --- 75 unchanged lines hidden (view full) --- 375acpi_tz_monitor(struct acpi_tz_softc *sc) 376{ 377 int temp; 378 int i; 379 int newactive, newflags; 380 struct timespec curtime; 381 ACPI_STATUS status; 382 |
383 ACPI_FUNCTION_TRACE(__func__); | 383 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
384 385 ACPI_ASSERTLOCK; 386 387 if (sc->tz_tmp_updating) { 388 goto out; 389 } 390 sc->tz_tmp_updating = 1; 391 --- 102 unchanged lines hidden (view full) --- 494/* 495 * Turn off all the cooling devices. 496 */ 497static void 498acpi_tz_all_off(struct acpi_tz_softc *sc) 499{ 500 int i; 501 | 384 385 ACPI_ASSERTLOCK; 386 387 if (sc->tz_tmp_updating) { 388 goto out; 389 } 390 sc->tz_tmp_updating = 1; 391 --- 102 unchanged lines hidden (view full) --- 494/* 495 * Turn off all the cooling devices. 496 */ 497static void 498acpi_tz_all_off(struct acpi_tz_softc *sc) 499{ 500 int i; 501 |
502 ACPI_FUNCTION_TRACE(__func__); | 502 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
503 504 ACPI_ASSERTLOCK; 505 506 /* 507 * Scan all the _ALx objects, and turn them all off. 508 */ 509 for (i = 0; i < TZ_NUMLEVELS; i++) { 510 if (sc->tz_zone.al[i].Pointer == NULL) --- 15 unchanged lines hidden (view full) --- 526 * Given an object, verify that it's a reference to a device of some sort, 527 * and try to switch it off. 528 */ 529static void 530acpi_tz_switch_cooler_off(ACPI_OBJECT *obj, void *arg) 531{ 532 ACPI_HANDLE cooler; 533 | 503 504 ACPI_ASSERTLOCK; 505 506 /* 507 * Scan all the _ALx objects, and turn them all off. 508 */ 509 for (i = 0; i < TZ_NUMLEVELS; i++) { 510 if (sc->tz_zone.al[i].Pointer == NULL) --- 15 unchanged lines hidden (view full) --- 526 * Given an object, verify that it's a reference to a device of some sort, 527 * and try to switch it off. 528 */ 529static void 530acpi_tz_switch_cooler_off(ACPI_OBJECT *obj, void *arg) 531{ 532 ACPI_HANDLE cooler; 533 |
534 ACPI_FUNCTION_TRACE(__func__); | 534 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
535 536 ACPI_ASSERTLOCK; 537 538 switch(obj->Type) { 539 case ACPI_TYPE_STRING: 540 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "called to turn %s off\n", obj->String.Pointer)); 541 542 /* --- 23 unchanged lines hidden (view full) --- 566 */ 567static void 568acpi_tz_switch_cooler_on(ACPI_OBJECT *obj, void *arg) 569{ 570 struct acpi_tz_softc *sc = (struct acpi_tz_softc *)arg; 571 ACPI_HANDLE cooler; 572 ACPI_STATUS status; 573 | 535 536 ACPI_ASSERTLOCK; 537 538 switch(obj->Type) { 539 case ACPI_TYPE_STRING: 540 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "called to turn %s off\n", obj->String.Pointer)); 541 542 /* --- 23 unchanged lines hidden (view full) --- 566 */ 567static void 568acpi_tz_switch_cooler_on(ACPI_OBJECT *obj, void *arg) 569{ 570 struct acpi_tz_softc *sc = (struct acpi_tz_softc *)arg; 571 ACPI_HANDLE cooler; 572 ACPI_STATUS status; 573 |
574 ACPI_FUNCTION_TRACE(__func__); | 574 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
575 576 ACPI_ASSERTLOCK; 577 578 switch(obj->Type) { 579 case ACPI_TYPE_STRING: 580 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "called to turn %s on\n", obj->String.Pointer)); 581 582 /* --- 25 unchanged lines hidden (view full) --- 608 609/* 610 * Read/debug-print a parameter, default it to -1. 611 */ 612static void 613acpi_tz_getparam(struct acpi_tz_softc *sc, char *node, int *data) 614{ 615 | 575 576 ACPI_ASSERTLOCK; 577 578 switch(obj->Type) { 579 case ACPI_TYPE_STRING: 580 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "called to turn %s on\n", obj->String.Pointer)); 581 582 /* --- 25 unchanged lines hidden (view full) --- 608 609/* 610 * Read/debug-print a parameter, default it to -1. 611 */ 612static void 613acpi_tz_getparam(struct acpi_tz_softc *sc, char *node, int *data) 614{ 615 |
616 ACPI_FUNCTION_TRACE(__func__); | 616 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
617 618 ACPI_ASSERTLOCK; 619 620 if (ACPI_FAILURE(acpi_EvaluateInteger(sc->tz_handle, node, data))) { 621 *data = -1; 622 } else { 623 ACPI_DEBUG_PRINT((ACPI_DB_VALUES, "%s.%s = %d\n", acpi_name(sc->tz_handle), 624 node, *data)); --- 53 unchanged lines hidden (view full) --- 678/* 679 * Respond to a Notify event sent to the zone. 680 */ 681static void 682acpi_tz_notify_handler(ACPI_HANDLE h, UINT32 notify, void *context) 683{ 684 struct acpi_tz_softc *sc = (struct acpi_tz_softc *)context; 685 | 617 618 ACPI_ASSERTLOCK; 619 620 if (ACPI_FAILURE(acpi_EvaluateInteger(sc->tz_handle, node, data))) { 621 *data = -1; 622 } else { 623 ACPI_DEBUG_PRINT((ACPI_DB_VALUES, "%s.%s = %d\n", acpi_name(sc->tz_handle), 624 node, *data)); --- 53 unchanged lines hidden (view full) --- 678/* 679 * Respond to a Notify event sent to the zone. 680 */ 681static void 682acpi_tz_notify_handler(ACPI_HANDLE h, UINT32 notify, void *context) 683{ 684 struct acpi_tz_softc *sc = (struct acpi_tz_softc *)context; 685 |
686 ACPI_FUNCTION_TRACE(__func__); | 686 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
687 688 ACPI_ASSERTLOCK; 689 690 switch(notify) { 691 case TZ_NOTIFY_TEMPERATURE: 692 /* temperature change occurred */ 693 AcpiOsQueueForExecution(OSD_PRIORITY_HIGH, (OSD_EXECUTION_CALLBACK)acpi_tz_monitor, sc); 694 break; --- 81 unchanged lines hidden (view full) --- 776 * Thermal zone monitor thread. 777 */ 778static void 779acpi_tz_thread(void *arg) 780{ 781 device_t *devs; 782 int devcount, i; 783 | 687 688 ACPI_ASSERTLOCK; 689 690 switch(notify) { 691 case TZ_NOTIFY_TEMPERATURE: 692 /* temperature change occurred */ 693 AcpiOsQueueForExecution(OSD_PRIORITY_HIGH, (OSD_EXECUTION_CALLBACK)acpi_tz_monitor, sc); 694 break; --- 81 unchanged lines hidden (view full) --- 776 * Thermal zone monitor thread. 777 */ 778static void 779acpi_tz_thread(void *arg) 780{ 781 device_t *devs; 782 int devcount, i; 783 |
784 ACPI_FUNCTION_TRACE(__func__); | 784 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); |
785 786 787 devs = NULL; 788 devcount = 0; 789 790 for (;;) { 791 tsleep(&acpi_tz_proc, PZERO, "nothing", hz * acpi_tz_polling_rate); 792 --- 13 unchanged lines hidden --- | 785 786 787 devs = NULL; 788 devcount = 0; 789 790 for (;;) { 791 tsleep(&acpi_tz_proc, PZERO, "nothing", hz * acpi_tz_polling_rate); 792 --- 13 unchanged lines hidden --- |