Attached and detached controllers, Name, Synopsis – Comtrol eCos User Manual

Page 671: Detaching power controllers, Power_set_controller_attached

Advertising
background image

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

Advertising