Texas Instruments TMS320 User Manual page 157

Dsp/bios v5.40
Hide thumbs Also See for TMS320:
Table of Contents

Advertisement

4.6.3
Device Initialization by the Power Manager
4.6.4
Resource Tracking
PWRM provides a hook mechanism that allows you to specify a function to
be called at boot time to turn off or idle powered resources until they are
actually needed. For example, when a driver is opened later in application
execution, it can power up the underlying physical device. If the driver is later
closed, it can power the device back down.
Within the boot function, you can do things such as commanding external
devices to go to a low power mode. Although such functionality could be
implemented directly in the main routine, the boot hook mechanism allows
you to closely associate power-related code with the Power Manager.
The hook mechanism described in the previous section is intended to be
used by applications to power down external peripheral devices, such as an
audio amplifier or a radio subsystem, at boot time. For some DSP devices,
PWRM also provides a "Device Initialization" mechanism whereby PWRM
traverses the DSP device at boot time, putting all appropriate on-chip
peripherals and domains into their lowest power state. As the application
runs, the peripherals and domains can be awoken as needed. Device
initialization by PWRM is configurable as ON or OFF. The PWRM actions
during device initialization are device-specific, and are described in the
corresponding DSP/BIOS release notes.
A typical DSP/BIOS application uses a set of peripherals—timers, serial
ports, etc.—to accomplish its purpose. Typically device drivers manage low-
level peripheral accesses, but sometimes applications access peripherals
directly. In both these scenarios, the DSP/BIOS kernel itself does not "know"
which peripherals are being used. This information is distributed across the
application code and drivers, and is not stored within the kernel. As a
consequence, the DSP/BIOS Power Manager does not know what resources
are actually required by an application at any given instance, so it cannot
aggressively idle resources without possibly "breaking" the application.
On some devices PWRM provides a "resource tracking" feature to allow more
aggressive power management. Applications, drivers, and DSP/BIOS
modules can call PWRM APIs to declare dependencies upon specific
resources as those resources are needed. When resources are no longer
needed—for example, when a port is closed or when there is no work for an
audio driver to do—a companion PWRM API call can be made to release the
resource dependency. PWRM counts the "set" and "release" calls, and
automatically turns ON a resource when the first "set" operation occurs, and
automatically turns OFF that resource when the last "release" call occurs.
Power Management
Thread Scheduling
4-53

Advertisement

Table of Contents
loading

Table of Contents