2010-12-09 09:13:47 -06:00
/*
* OMAP4 OPP table definitions .
*
2012-09-25 19:33:50 +03:00
* Copyright ( C ) 2010 - 2012 Texas Instruments Incorporated - http : //www.ti.com/
2010-12-09 09:13:47 -06:00
* Nishanth Menon
* Kevin Hilman
* Thara Gopinath
2011-03-10 22:17:45 -07:00
* Copyright ( C ) 2010 - 2011 Nokia Corporation .
2010-12-09 09:13:47 -06:00
* Eduardo Valentin
2011-03-10 22:17:45 -07:00
* Paul Walmsley
2010-12-09 09:13:47 -06:00
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation .
*
* This program is distributed " as is " WITHOUT ANY WARRANTY of any
* kind , whether express or implied ; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*/
# include <linux/module.h>
2012-08-31 10:59:07 -07:00
# include "soc.h"
2011-03-10 22:17:45 -07:00
# include "control.h"
2010-12-09 09:13:47 -06:00
# include "omap_opp_data.h"
2011-01-05 20:49:35 +00:00
# include "pm.h"
2010-12-09 09:13:47 -06:00
2011-03-10 22:17:45 -07:00
/*
* Structures containing OMAP4430 voltage supported and various
* voltage dependent data for each VDD .
*/
2011-03-10 10:23:49 +05:30
# define OMAP4430_VDD_MPU_OPP50_UV 1025000
# define OMAP4430_VDD_MPU_OPP100_UV 1200000
# define OMAP4430_VDD_MPU_OPPTURBO_UV 1313000
# define OMAP4430_VDD_MPU_OPPNITRO_UV 1375000
2011-03-10 22:17:45 -07:00
2012-09-25 19:33:50 +03:00
struct omap_volt_data omap443x_vdd_mpu_volt_data [ ] = {
2011-03-10 22:17:45 -07:00
VOLT_DATA_DEFINE ( OMAP4430_VDD_MPU_OPP50_UV , OMAP44XX_CONTROL_FUSE_MPU_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_MPU_OPP100_UV , OMAP44XX_CONTROL_FUSE_MPU_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_MPU_OPPTURBO_UV , OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO , 0xfa , 0x23 ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_MPU_OPPNITRO_UV , OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO , 0xfa , 0x27 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
2011-03-10 10:23:49 +05:30
# define OMAP4430_VDD_IVA_OPP50_UV 1013000
# define OMAP4430_VDD_IVA_OPP100_UV 1188000
# define OMAP4430_VDD_IVA_OPPTURBO_UV 1300000
2011-03-10 22:17:45 -07:00
2012-09-25 19:33:50 +03:00
struct omap_volt_data omap443x_vdd_iva_volt_data [ ] = {
2011-03-10 22:17:45 -07:00
VOLT_DATA_DEFINE ( OMAP4430_VDD_IVA_OPP50_UV , OMAP44XX_CONTROL_FUSE_IVA_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_IVA_OPP100_UV , OMAP44XX_CONTROL_FUSE_IVA_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_IVA_OPPTURBO_UV , OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO , 0xfa , 0x23 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
2011-03-10 10:23:49 +05:30
# define OMAP4430_VDD_CORE_OPP50_UV 1025000
# define OMAP4430_VDD_CORE_OPP100_UV 1200000
2011-03-10 22:17:45 -07:00
2012-09-25 19:33:50 +03:00
struct omap_volt_data omap443x_vdd_core_volt_data [ ] = {
2011-03-10 22:17:45 -07:00
VOLT_DATA_DEFINE ( OMAP4430_VDD_CORE_OPP50_UV , OMAP44XX_CONTROL_FUSE_CORE_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4430_VDD_CORE_OPP100_UV , OMAP44XX_CONTROL_FUSE_CORE_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
2012-09-25 19:33:50 +03:00
# define OMAP4460_VDD_MPU_OPP50_UV 1025000
# define OMAP4460_VDD_MPU_OPP100_UV 1200000
# define OMAP4460_VDD_MPU_OPPTURBO_UV 1313000
# define OMAP4460_VDD_MPU_OPPNITRO_UV 1375000
struct omap_volt_data omap446x_vdd_mpu_volt_data [ ] = {
VOLT_DATA_DEFINE ( OMAP4460_VDD_MPU_OPP50_UV , OMAP44XX_CONTROL_FUSE_MPU_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_MPU_OPP100_UV , OMAP44XX_CONTROL_FUSE_MPU_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_MPU_OPPTURBO_UV , OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO , 0xfa , 0x23 ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_MPU_OPPNITRO_UV , OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO , 0xfa , 0x27 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
# define OMAP4460_VDD_IVA_OPP50_UV 1025000
# define OMAP4460_VDD_IVA_OPP100_UV 1200000
# define OMAP4460_VDD_IVA_OPPTURBO_UV 1313000
# define OMAP4460_VDD_IVA_OPPNITRO_UV 1375000
struct omap_volt_data omap446x_vdd_iva_volt_data [ ] = {
VOLT_DATA_DEFINE ( OMAP4460_VDD_IVA_OPP50_UV , OMAP44XX_CONTROL_FUSE_IVA_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_IVA_OPP100_UV , OMAP44XX_CONTROL_FUSE_IVA_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_IVA_OPPTURBO_UV , OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO , 0xfa , 0x23 ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_IVA_OPPNITRO_UV , OMAP44XX_CONTROL_FUSE_IVA_OPPNITRO , 0xfa , 0x23 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
# define OMAP4460_VDD_CORE_OPP50_UV 1025000
# define OMAP4460_VDD_CORE_OPP100_UV 1200000
# define OMAP4460_VDD_CORE_OPP100_OV_UV 1250000
struct omap_volt_data omap446x_vdd_core_volt_data [ ] = {
VOLT_DATA_DEFINE ( OMAP4460_VDD_CORE_OPP50_UV , OMAP44XX_CONTROL_FUSE_CORE_OPP50 , 0xf4 , 0x0c ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_CORE_OPP100_UV , OMAP44XX_CONTROL_FUSE_CORE_OPP100 , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( OMAP4460_VDD_CORE_OPP100_OV_UV , OMAP44XX_CONTROL_FUSE_CORE_OPP100OV , 0xf9 , 0x16 ) ,
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;