0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include <linux/module.h>
0014
0015 #include "soc.h"
0016 #include "control.h"
0017 #include "omap_opp_data.h"
0018 #include "pm.h"
0019
0020
0021
0022
0023
0024
0025 #define OMAP4430_VDD_MPU_OPP50_UV 1025000
0026 #define OMAP4430_VDD_MPU_OPP100_UV 1200000
0027 #define OMAP4430_VDD_MPU_OPPTURBO_UV 1325000
0028 #define OMAP4430_VDD_MPU_OPPNITRO_UV 1388000
0029 #define OMAP4430_VDD_MPU_OPPNITROSB_UV 1398000
0030
0031 struct omap_volt_data omap443x_vdd_mpu_volt_data[] = {
0032 VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPP50_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP50, 0xf4, 0x0c),
0033 VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPP100_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP100, 0xf9, 0x16),
0034 VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO, 0xfa, 0x23),
0035 VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO, 0xfa, 0x27),
0036 VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPNITROSB_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITROSB, 0xfa, 0x27),
0037 VOLT_DATA_DEFINE(0, 0, 0, 0),
0038 };
0039
0040 #define OMAP4430_VDD_IVA_OPP50_UV 950000
0041 #define OMAP4430_VDD_IVA_OPP100_UV 1114000
0042 #define OMAP4430_VDD_IVA_OPPTURBO_UV 1291000
0043
0044 struct omap_volt_data omap443x_vdd_iva_volt_data[] = {
0045 VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPP50_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP50, 0xf4, 0x0c),
0046 VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPP100_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP100, 0xf9, 0x16),
0047 VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO, 0xfa, 0x23),
0048 VOLT_DATA_DEFINE(0, 0, 0, 0),
0049 };
0050
0051 #define OMAP4430_VDD_CORE_OPP50_UV 962000
0052 #define OMAP4430_VDD_CORE_OPP100_UV 1127000
0053
0054 struct omap_volt_data omap443x_vdd_core_volt_data[] = {
0055 VOLT_DATA_DEFINE(OMAP4430_VDD_CORE_OPP50_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP50, 0xf4, 0x0c),
0056 VOLT_DATA_DEFINE(OMAP4430_VDD_CORE_OPP100_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100, 0xf9, 0x16),
0057 VOLT_DATA_DEFINE(0, 0, 0, 0),
0058 };
0059
0060 #define OMAP4460_VDD_MPU_OPP50_UV 1025000
0061 #define OMAP4460_VDD_MPU_OPP100_UV 1200000
0062 #define OMAP4460_VDD_MPU_OPPTURBO_UV 1313000
0063 #define OMAP4460_VDD_MPU_OPPNITRO_UV 1375000
0064
0065 struct omap_volt_data omap446x_vdd_mpu_volt_data[] = {
0066 VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPP50_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP50, 0xf4, 0x0c),
0067 VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPP100_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP100, 0xf9, 0x16),
0068 VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO, 0xfa, 0x23),
0069 VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO, 0xfa, 0x27),
0070 VOLT_DATA_DEFINE(0, 0, 0, 0),
0071 };
0072
0073 #define OMAP4460_VDD_IVA_OPP50_UV 1025000
0074 #define OMAP4460_VDD_IVA_OPP100_UV 1200000
0075 #define OMAP4460_VDD_IVA_OPPTURBO_UV 1313000
0076 #define OMAP4460_VDD_IVA_OPPNITRO_UV 1375000
0077
0078 struct omap_volt_data omap446x_vdd_iva_volt_data[] = {
0079 VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPP50_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP50, 0xf4, 0x0c),
0080 VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPP100_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP100, 0xf9, 0x16),
0081 VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO, 0xfa, 0x23),
0082 VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPNITRO, 0xfa, 0x23),
0083 VOLT_DATA_DEFINE(0, 0, 0, 0),
0084 };
0085
0086 #define OMAP4460_VDD_CORE_OPP50_UV 1025000
0087 #define OMAP4460_VDD_CORE_OPP100_UV 1200000
0088 #define OMAP4460_VDD_CORE_OPP100_OV_UV 1250000
0089
0090 struct omap_volt_data omap446x_vdd_core_volt_data[] = {
0091 VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP50_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP50, 0xf4, 0x0c),
0092 VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP100_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100, 0xf9, 0x16),
0093 VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP100_OV_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100OV, 0xf9, 0x16),
0094 VOLT_DATA_DEFINE(0, 0, 0, 0),
0095 };