linux/arch/arm/plat-mxc/dvfs_per.c File Reference

A simplied driver for the Freescale Semiconductor MXC DVFS module. More...

Data Structures

struct  dvfsper_device

Functions

static int init_dvfs_per_controller (void)
static void stop (void)
int dvfs_enable (struct device *dev)
static int __devinit mxc_dvfsper_probe (struct platform_device *pdev)
static int mxc_dvfs_suspend (struct platform_device *pdev, pm_message_t state)
static int mxc_dvfs_resume (struct platform_device *pdev)

Detailed Description

A simplied driver for the Freescale Semiconductor MXC DVFS module.

Upon initialization, the DVFS driver initializes the DVFS hardware sets up driver nodes attaches to the DVFS interrupt and initializes internal data structures. When the DVFS interrupt occurs the driver checks the cause of the interrupt (lower frequency, increase frequency or emergency) and changes the CPU voltage according to translation table that is loaded into the driver.


Function Documentation

int dvfs_enable ( struct device *  dev  ) 

Enable DVFS Peripheral

static int init_dvfs_per_controller ( void   )  [static]

This function is called for module initialization. It sets up the DVFS hardware. It sets default values for DVFS thresholds and counters. The default values was chosen from a set of different reasonable values. They was tested and the default values in the driver gave the best results. More work should be done to find optimal values.

Returns:
0 if successful; non-zero otherwise.
static int mxc_dvfs_resume ( struct platform_device *  pdev  )  [static]

This function is called to resume the DVFS from a low power state.

Parameters:
dev the device structure
level the stage in device suspension process that we want the device to be put in
Returns:
The function always returns 0.
static int mxc_dvfs_suspend ( struct platform_device *  pdev,
pm_message_t  state 
) [static]

This function is called to put DVFS in a low power state.

Parameters:
pdev the device structure
state the power state the device is entering
Returns:
The function always returns 0.
static int __devinit mxc_dvfsper_probe ( struct platform_device *  pdev  )  [static]

This is the probe routine for the DVFS PER driver.

Parameters:
pdev The platform device structure
Returns:
The function returns 0 on success
static void stop ( void   )  [static]

This function disables the DVFS module.

footer
©  Freescale Semiconductor, Inc., 2007.  All rights reserved.
Freescale Confidential Proprietary
NDA Required
doxygen