This opens up so many possiblities.
* ACPI module now has a get_possible_resources function. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41320 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -239,6 +239,8 @@ struct acpi_module_info {
|
|||||||
acpi_data *retBuffer);
|
acpi_data *retBuffer);
|
||||||
status_t (*get_current_resources)(acpi_handle busDeviceHandle,
|
status_t (*get_current_resources)(acpi_handle busDeviceHandle,
|
||||||
acpi_data *retBuffer);
|
acpi_data *retBuffer);
|
||||||
|
status_t (*get_possible_resources)(acpi_handle busDeviceHandle,
|
||||||
|
acpi_data *retBuffer);
|
||||||
|
|
||||||
/* Power state setting */
|
/* Power state setting */
|
||||||
|
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ static void dump_madt() {
|
|||||||
while (true) {
|
while (true) {
|
||||||
status = AcpiGetTable (ACPI_SIG_MADT, ++madtCount, &madt);
|
status = AcpiGetTable (ACPI_SIG_MADT, ++madtCount, &madt);
|
||||||
if (status != AE_OK) break;
|
if (status != AE_OK) break;
|
||||||
/*
|
/*
|
||||||
dprintf("acpi: MADT TABLE:\n");
|
dprintf("acpi: MADT TABLE:\n");
|
||||||
AcpiDmDumpDataTable( madt );
|
AcpiDmDumpDataTable( madt );
|
||||||
entry = madt + 44;
|
entry = madt + 44;
|
||||||
@@ -212,7 +212,7 @@ acpi_std_ops(int32 op,...)
|
|||||||
|
|
||||||
parameter.Count = 1;
|
parameter.Count = 1;
|
||||||
parameter.Pointer = &arg;
|
parameter.Pointer = &arg;
|
||||||
|
|
||||||
AcpiEvaluateObject(NULL, "\\_PIC", ¶meter, NULL);
|
AcpiEvaluateObject(NULL, "\\_PIC", ¶meter, NULL);
|
||||||
|
|
||||||
flags = acpiAvoidFullInit ?
|
flags = acpiAvoidFullInit ?
|
||||||
@@ -617,6 +617,14 @@ get_current_resources(acpi_handle busDeviceHandle, acpi_data *retBuffer)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
status_t
|
||||||
|
get_possible_resources(acpi_handle busDeviceHandle, acpi_data *retBuffer)
|
||||||
|
{
|
||||||
|
return AcpiGetPossibleResources(busDeviceHandle, (ACPI_BUFFER*)retBuffer)
|
||||||
|
== AE_OK ? B_OK : B_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
status_t
|
status_t
|
||||||
prepare_sleep_state(uint8 state, void (*wakeFunc)(void), size_t size)
|
prepare_sleep_state(uint8 state, void (*wakeFunc)(void), size_t size)
|
||||||
{
|
{
|
||||||
@@ -732,6 +740,7 @@ struct acpi_module_info gACPIModule = {
|
|||||||
evaluate_method,
|
evaluate_method,
|
||||||
get_irq_routing_table,
|
get_irq_routing_table,
|
||||||
get_current_resources,
|
get_current_resources,
|
||||||
|
get_possible_resources,
|
||||||
prepare_sleep_state,
|
prepare_sleep_state,
|
||||||
enter_sleep_state,
|
enter_sleep_state,
|
||||||
reboot
|
reboot
|
||||||
|
|||||||
@@ -216,6 +216,7 @@ static struct acpi_root_info sACPIRootModule = {
|
|||||||
evaluate_method,
|
evaluate_method,
|
||||||
get_irq_routing_table,
|
get_irq_routing_table,
|
||||||
get_current_resources,
|
get_current_resources,
|
||||||
|
get_possible_resources,
|
||||||
prepare_sleep_state,
|
prepare_sleep_state,
|
||||||
enter_sleep_state,
|
enter_sleep_state,
|
||||||
reboot
|
reboot
|
||||||
|
|||||||
@@ -123,6 +123,8 @@ typedef struct acpi_root_info {
|
|||||||
acpi_data *retBuffer);
|
acpi_data *retBuffer);
|
||||||
status_t (*get_current_resources)(acpi_handle busDeviceHandle,
|
status_t (*get_current_resources)(acpi_handle busDeviceHandle,
|
||||||
acpi_data *retBuffer);
|
acpi_data *retBuffer);
|
||||||
|
status_t (*get_possible_resources)(acpi_handle busDeviceHandle,
|
||||||
|
acpi_data *retBuffer);
|
||||||
|
|
||||||
/* Power state setting */
|
/* Power state setting */
|
||||||
|
|
||||||
@@ -196,6 +198,8 @@ status_t get_irq_routing_table(acpi_handle busDeviceHandle,
|
|||||||
acpi_data* returnValue);
|
acpi_data* returnValue);
|
||||||
status_t get_current_resources(acpi_handle busDeviceHandle,
|
status_t get_current_resources(acpi_handle busDeviceHandle,
|
||||||
acpi_data* returnValue);
|
acpi_data* returnValue);
|
||||||
|
status_t get_possible_resources(acpi_handle busDeviceHandle,
|
||||||
|
acpi_data* returnValue);
|
||||||
|
|
||||||
status_t prepare_sleep_state(uint8 state, void (*wakeFunc)(void), size_t size);
|
status_t prepare_sleep_state(uint8 state, void (*wakeFunc)(void), size_t size);
|
||||||
status_t enter_sleep_state(uint8 state);
|
status_t enter_sleep_state(uint8 state);
|
||||||
|
|||||||
Reference in New Issue
Block a user