Attached and detached controllers, Name, Synopsis – Comtrol eCos User Manual
Page 671: Detaching power controllers, Power_set_controller_attached

Attached and Detached Controllers
Name
Attached and Detached Controllers
— control which power controllers are affected by global
changes
Synopsis
#include
<
cyg/power/power.h
>
cyg_bool power_get_controller_attached ( PowerController* controller );
void power_set_controller_attached ( PowerController* controller ,
cyg_bool new_state
);
Detaching Power Controllers
By default the global operation
power_set_mode
affects all power controllers. There may be circumstances when
this is not desirable. For example if a particular device is not currently being used then it can be left switched off:
the rest of the system could be moving between active, idle and sleep modes, but there is no point in invoking
the power controller for the unused device. To support this the power management package supports the concept
of attached and detached controllers. By default all controllers are attached, and hence will be affected by global
mode changes. A specific controller can be detached using the function
power_set_controller_attached
. This
function takes two arguments, one to specify a particular controller and another to specify the desired new state.
power_get_controller_attached
can be used to determine whether or not a specific controller is currently
attached.
The attached or detached state of a controller only affects what happens during a global mode change, in other
words following a call to
power_set_mode
. It is still possible to manipulate a detached controller using
power_set_controller_mode
or
power_set_controller_mode_now
.
567