summaryrefslogtreecommitdiffstats
path: root/sys/dev/acpica/acpivar.h
diff options
context:
space:
mode:
authornjl <njl@FreeBSD.org>2003-07-20 00:48:38 +0000
committernjl <njl@FreeBSD.org>2003-07-20 00:48:38 +0000
commitdeb4e4e45d423e7f9261bf8c8bb4d0bc72f6bd3f (patch)
treead0d19ed61297cf7c839124550ebdce86fb87353 /sys/dev/acpica/acpivar.h
parent19915e4c5eac3b5d4c390f00c7464db33eca0865 (diff)
downloadFreeBSD-src-deb4e4e45d423e7f9261bf8c8bb4d0bc72f6bd3f.zip
FreeBSD-src-deb4e4e45d423e7f9261bf8c8bb4d0bc72f6bd3f.tar.gz
Add ECDT (ACPI 2.0) support. This allows the EC to be enabled before the
namespace has been evaluated. Machines with ACPI 2.0 expect this behavior and have AML which calls EC functions early in the boot process. If the ECDT is not available, fall back to original probe behavior. Other minor changes: * Add GPE bit and GLK usage to the device announcement * Always use the global lock in the ECDT case, but potentially downgrade to not using it if _GLK is 0 once the namespace is available. This is announced with "Changing GLK from 1 to 0" * Remove the acpi_object_list definitions which were earlier deprecated Ideas from: takawata
Diffstat (limited to 'sys/dev/acpica/acpivar.h')
-rw-r--r--sys/dev/acpica/acpivar.h36
1 files changed, 5 insertions, 31 deletions
diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h
index e2e5911..42ab459 100644
--- a/sys/dev/acpica/acpivar.h
+++ b/sys/dev/acpica/acpivar.h
@@ -133,37 +133,6 @@ struct acpi_device {
#define ACPI_INTR_APIC 1
#define ACPI_INTR_SAPIC 2
-/* XXX this is no longer referenced anywhere, remove? */
-#if 0
-/*
- * This is a cheap and nasty way to get around the horrid counted list
- * argument format that AcpiEvalateObject uses.
- */
-#define ACPI_OBJECTLIST_MAX 16
-struct acpi_object_list {
- UINT32 count;
- ACPI_OBJECT *pointer[ACPI_OBJECTLIST_MAX];
- ACPI_OBJECT object[ACPI_OBJECTLIST_MAX];
-};
-
-static __inline struct acpi_object_list *
-acpi_AllocObjectList(int nobj)
-{
- struct acpi_object_list *l;
- int i;
-
- if (nobj > ACPI_OBJECTLIST_MAX)
- return(NULL);
- if ((l = AcpiOsAllocate(sizeof(*l))) == NULL)
- return(NULL);
- bzero(l, sizeof(*l));
- for (i = 0; i < ACPI_OBJECTLIST_MAX; i++)
- l->pointer[i] = &l->object[i];
- l->count = nobj;
- return(l);
-}
-#endif /* unused */
-
/*
* Note that the low ivar values are reserved to provide
* interface compatibility with ISA drivers which can also
@@ -376,6 +345,11 @@ extern int acpi_battery_get_battdesc(int, struct acpi_battdesc *);
extern int acpi_cmbat_get_battinfo(int, struct acpi_battinfo *);
/*
+ * Embedded controller.
+ */
+extern void acpi_ec_ecdt_probe(device_t);
+
+/*
* AC adapter interface.
*/
OpenPOWER on IntegriCloud