12.07.2015 Views

Wireless Intel SpeedStep Power Manager

Wireless Intel SpeedStep Power Manager

Wireless Intel SpeedStep Power Manager

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

White Paper<strong>Wireless</strong> <strong>Intel</strong> <strong>SpeedStep</strong> ® <strong>Power</strong> <strong>Manager</strong>It is important that all drivers maintain their own device powerstate management. The drivers must at least be able to monitortheir own activity and self-manage their own state, such asturning off the peripheral device when it makes sense andinforming the <strong>Power</strong> <strong>Manager</strong> software of the transition. The<strong>Power</strong> <strong>Manager</strong> software tracks the state of each driver, butdoes not mandate the device's state management.9.3.1 DEVICE POWER STATESSince many operating systems currently have some level ofdevice power management, the Device Driver Interface Layertranslates an OS-specific device state into an appropriate<strong>Power</strong> <strong>Manager</strong> software-specific state. If an operating systemdoes not supply power management device states, the devicedrivers use the power states created by the <strong>Power</strong> <strong>Manager</strong>software. When a registered driver transitions its device's powerstate, the driver must inform the <strong>Power</strong> <strong>Manager</strong> software ofthis transition. <strong>Power</strong> <strong>Manager</strong> software device states areshown in Table 3.STATEOnOffLow <strong>Power</strong>DESCRIPTIONThe device is fully powered up and fullyfunctional.The device is off.The device is on, but is in a reduced powerstate. Depending on the device there could beseveral of these low-power states.Table 3. Device States9.3.2 DEVICE STATE SENSITIVITYAs part of the driver’s registration, the driver must report to the<strong>Power</strong> <strong>Manager</strong> software what the device’s sensitivity is to allsupported processor modes. If a driver reports that it is sensitiveto a given state, the <strong>Power</strong> <strong>Manager</strong> software notifies the driverof an impending state transition before the <strong>Power</strong> <strong>Manager</strong>software makes the state transition.9.3.3 DEVICE FREQUENCY SENSITIVITYAs part of a driver’s registration, the driver must inform the<strong>Power</strong> <strong>Manager</strong> software as to whether or not the driver requiresnotification when the Policy <strong>Manager</strong> intends to scale thedevice’s frequency and/or voltage. For example, Table 1 showsthat when the Policy <strong>Manager</strong> intends to scale the <strong>Intel</strong> PXA27xprocessor’s Core Run Frequency from 208 MHz to 104 MHz,other <strong>Intel</strong> PXA27x processor frequencies (e.g., System Bus,Memory Controller, LCD Controller) must be scaled as well.10.0 <strong>Power</strong> <strong>Manager</strong> Software-AwareApplication Interface (Optional)10.1 OverviewApplications can be easily enhanced to provide their performance/processing requirements (cycles, deadlines, etc.), to the <strong>Power</strong><strong>Manager</strong> software, thus making frequency change and voltagechange scheduling simpler and more effective. For example,consider a mobile platform that uses the <strong>Intel</strong> PXA27x processorto control a small-sized display. For an MPEG4 video applicationto decode and display 30 fps, the <strong>Intel</strong> PXA27x processor canrun at its maximum possible frequency and voltage so thatsignificant idle time exists during the execution bursts that areneeded to service the application, as shown in Figure 2. TheIdle Profiler alone would either not detect this idle time (if it isvery small) or would incur a latency in detecting the idle time.Optionally, if the application is slightly enhanced to convey theidle time information to the <strong>Power</strong> <strong>Manager</strong>, the Policy Managecan make good decisions to reduce power dissipationduring the idle time.10.2 Application Programming InterfaceThe Applications Programming Interface (API) is shown inFigure 11 below.App[0]App[1]App[n-1]<strong>Power</strong> <strong>Manager</strong> Application Interface Layer<strong>Power</strong> <strong>Manager</strong> Policy <strong>Manager</strong>Figure 11. Applications Programming Interface14

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!