Lines Matching full:consumer
66 /* A relationship between a power resource and a consumer. */
71 TAILQ_ENTRY(acpi_powerreference) ar_clink; /* link on consumer */
98 static ACPI_STATUS acpi_pwr_register_consumer(ACPI_HANDLE consumer);
100 static ACPI_STATUS acpi_pwr_deregister_consumer(ACPI_HANDLE consumer);
114 *acpi_pwr_find_consumer(ACPI_HANDLE consumer);
225 * Register a power consumer.
227 * It's OK to call this if we already know about the consumer.
230 acpi_pwr_register_consumer(ACPI_HANDLE consumer) in acpi_pwr_register_consumer() argument
237 /* Check to see whether we know about this consumer already */ in acpi_pwr_register_consumer()
238 if (acpi_pwr_find_consumer(consumer) != NULL) in acpi_pwr_register_consumer()
241 /* Allocate a new power consumer */ in acpi_pwr_register_consumer()
246 pc->ac_consumer = consumer; in acpi_pwr_register_consumer()
251 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "registered power consumer %s\n", in acpi_pwr_register_consumer()
252 acpi_name(consumer))); in acpi_pwr_register_consumer()
259 * Deregister a power consumer.
261 * This should only be done once the consumer has been powered off.
265 acpi_pwr_deregister_consumer(ACPI_HANDLE consumer) in acpi_pwr_deregister_consumer() argument
272 /* Find the consumer */ in acpi_pwr_deregister_consumer()
273 if ((pc = acpi_pwr_find_consumer(consumer)) == NULL) in acpi_pwr_deregister_consumer()
276 /* Make sure the consumer's not referencing anything right now */ in acpi_pwr_deregister_consumer()
280 /* Pull the consumer off the list and free it */ in acpi_pwr_deregister_consumer()
284 ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "deregistered power consumer %s\n", in acpi_pwr_deregister_consumer()
285 acpi_name(consumer))); in acpi_pwr_deregister_consumer()
292 * Set a power consumer to a particular power state.
295 acpi_pwr_switch_consumer(ACPI_HANDLE consumer, int state) in acpi_pwr_switch_consumer() argument
306 /* It's never ok to switch a non-existent consumer. */ in acpi_pwr_switch_consumer()
307 if (consumer == NULL) in acpi_pwr_switch_consumer()
313 /* Find the consumer */ in acpi_pwr_switch_consumer()
314 if ((pc = acpi_pwr_find_consumer(consumer)) == NULL) { in acpi_pwr_switch_consumer()
315 if (ACPI_FAILURE(status = acpi_pwr_register_consumer(consumer))) in acpi_pwr_switch_consumer()
317 if ((pc = acpi_pwr_find_consumer(consumer)) == NULL) in acpi_pwr_switch_consumer()
318 panic("acpi added power consumer but can't find it"); in acpi_pwr_switch_consumer()
348 acpi_name(consumer), pc->ac_state, state)); in acpi_pwr_switch_consumer()
360 if (ACPI_FAILURE(AcpiGetHandle(consumer, method_name, &method_handle))) in acpi_pwr_switch_consumer()
362 if (ACPI_FAILURE(AcpiGetHandle(consumer, reslist_name, &reslist_handle))) in acpi_pwr_switch_consumer()
380 if (ACPI_FAILURE(AcpiGetHandle(consumer, "_PR0", &pr0_handle))) { in acpi_pwr_switch_consumer()
391 acpi_name(consumer), state)); in acpi_pwr_switch_consumer()
454 acpi_name(consumer), state)); in acpi_pwr_switch_consumer()
489 acpi_pwr_wake_enable(ACPI_HANDLE consumer, int enable) in acpi_pwr_wake_enable() argument
498 if (consumer == NULL) in acpi_pwr_wake_enable()
502 if ((pc = acpi_pwr_find_consumer(consumer)) == NULL) { in acpi_pwr_wake_enable()
503 if (ACPI_FAILURE(status = acpi_pwr_register_consumer(consumer))) in acpi_pwr_wake_enable()
505 if ((pc = acpi_pwr_find_consumer(consumer)) == NULL) in acpi_pwr_wake_enable()
506 panic("acpi wake added power consumer but can't find it"); in acpi_pwr_wake_enable()
510 if (acpi_parse_prw(consumer, &prw) != 0) in acpi_pwr_wake_enable()
527 * Called to create a reference between a power consumer and a power resource
564 /* Create a reference between the consumer and resource */ in acpi_pwr_reference_resource()
567 "allocation failed for a power consumer reference\n")); in acpi_pwr_reference_resource()
720 * Find a power consumer's control structure.
723 acpi_pwr_find_consumer(ACPI_HANDLE consumer) in acpi_pwr_find_consumer() argument
731 if (pc->ac_consumer == consumer) in acpi_pwr_find_consumer()