2010-12-09 18:13:47 +03:00
/*
* OMAP4 OPP table definitions .
*
2020-07-19 13:30:33 +03:00
* Copyright ( C ) 2010 - 2012 Texas Instruments Incorporated - https : //www.ti.com/
2010-12-09 18:13:47 +03:00
* Nishanth Menon
* Kevin Hilman
* Thara Gopinath
2011-03-11 08:17:45 +03:00
* Copyright ( C ) 2010 - 2011 Nokia Corporation .
2010-12-09 18:13:47 +03:00
* Eduardo Valentin
2011-03-11 08:17:45 +03:00
* Paul Walmsley
2010-12-09 18:13:47 +03: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 21:59:07 +04:00
# include "soc.h"
2011-03-11 08:17:45 +03:00
# include "control.h"
2010-12-09 18:13:47 +03:00
# include "omap_opp_data.h"
2011-01-05 23:49:35 +03:00
# include "pm.h"
2010-12-09 18:13:47 +03:00
2011-03-11 08:17:45 +03:00
/*
* Structures containing OMAP4430 voltage supported and various
* voltage dependent data for each VDD .
*/
2011-03-10 07:53:49 +03:00
# define OMAP4430_VDD_MPU_OPP50_UV 1025000
# define OMAP4430_VDD_MPU_OPP100_UV 1200000
2019-10-16 17:37:05 +03:00
# define OMAP4430_VDD_MPU_OPPTURBO_UV 1325000
# define OMAP4430_VDD_MPU_OPPNITRO_UV 1388000
# define OMAP4430_VDD_MPU_OPPNITROSB_UV 1398000
2011-03-11 08:17:45 +03:00
2012-09-25 20:33:50 +04:00
struct omap_volt_data omap443x_vdd_mpu_volt_data [ ] = {
2011-03-11 08:17:45 +03: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 ) ,
2019-10-16 17:37:05 +03:00
VOLT_DATA_DEFINE ( OMAP4430_VDD_MPU_OPPNITROSB_UV , OMAP44XX_CONTROL_FUSE_MPU_OPPNITROSB , 0xfa , 0x27 ) ,
2011-03-11 08:17:45 +03:00
VOLT_DATA_DEFINE ( 0 , 0 , 0 , 0 ) ,
} ;
2019-10-16 17:37:05 +03:00
# define OMAP4430_VDD_IVA_OPP50_UV 950000
# define OMAP4430_VDD_IVA_OPP100_UV 1114000
# define OMAP4430_VDD_IVA_OPPTURBO_UV 1291000
2011-03-11 08:17:45 +03:00
2012-09-25 20:33:50 +04:00
struct omap_volt_data omap443x_vdd_iva_volt_data [ ] = {
2011-03-11 08:17:45 +03: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 ) ,
} ;
2019-10-16 17:37:05 +03:00
# define OMAP4430_VDD_CORE_OPP50_UV 962000
# define OMAP4430_VDD_CORE_OPP100_UV 1127000
2011-03-11 08:17:45 +03:00
2012-09-25 20:33:50 +04:00
struct omap_volt_data omap443x_vdd_core_volt_data [ ] = {
2011-03-11 08:17:45 +03: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 20:33:50 +04: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 ) ,
} ;