Commit e3277880 authored by Kevin Hilman's avatar Kevin Hilman

OMAP3+: voltdm: final removal of omap_vdd_info

Remove last remaining member (volt_data) from omap_vdd_info into
struct voltagedomain and removal remaining usage and reference to
omap_vdd_info.
Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
parent 7590f608
...@@ -43,34 +43,6 @@ ...@@ -43,34 +43,6 @@
static LIST_HEAD(voltdm_list); static LIST_HEAD(voltdm_list);
static int __init _config_common_vdd_data(struct voltagedomain *voltdm)
{
/* Generic voltage parameters */
voltdm->scale = omap_vp_forceupdate_scale;
return 0;
}
static int __init omap_vdd_data_configure(struct voltagedomain *voltdm)
{
int ret = -EINVAL;
if (!voltdm->pmic) {
pr_err("%s: PMIC info requried to configure vdd_%s not"
"populated.Hence cannot initialize vdd_%s\n",
__func__, voltdm->name, voltdm->name);
goto ovdc_out;
}
if (IS_ERR_VALUE(_config_common_vdd_data(voltdm)))
goto ovdc_out;
ret = 0;
ovdc_out:
return ret;
}
/* Public functions */ /* Public functions */
/** /**
* omap_voltage_get_nom_volt() - Gets the current non-auto-compensated voltage * omap_voltage_get_nom_volt() - Gets the current non-auto-compensated voltage
...@@ -155,18 +127,14 @@ void voltdm_reset(struct voltagedomain *voltdm) ...@@ -155,18 +127,14 @@ void voltdm_reset(struct voltagedomain *voltdm)
* *
*/ */
void omap_voltage_get_volttable(struct voltagedomain *voltdm, void omap_voltage_get_volttable(struct voltagedomain *voltdm,
struct omap_volt_data **volt_data) struct omap_volt_data **volt_data)
{ {
struct omap_vdd_info *vdd;
if (!voltdm || IS_ERR(voltdm)) { if (!voltdm || IS_ERR(voltdm)) {
pr_warning("%s: VDD specified does not exist!\n", __func__); pr_warning("%s: VDD specified does not exist!\n", __func__);
return; return;
} }
vdd = voltdm->vdd; *volt_data = voltdm->volt_data;
*volt_data = vdd->volt_data;
} }
/** /**
...@@ -185,9 +153,8 @@ void omap_voltage_get_volttable(struct voltagedomain *voltdm, ...@@ -185,9 +153,8 @@ void omap_voltage_get_volttable(struct voltagedomain *voltdm,
* domain or if there is no matching entry. * domain or if there is no matching entry.
*/ */
struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm, struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm,
unsigned long volt) unsigned long volt)
{ {
struct omap_vdd_info *vdd;
int i; int i;
if (!voltdm || IS_ERR(voltdm)) { if (!voltdm || IS_ERR(voltdm)) {
...@@ -195,17 +162,15 @@ struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm, ...@@ -195,17 +162,15 @@ struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm,
return ERR_PTR(-EINVAL); return ERR_PTR(-EINVAL);
} }
vdd = voltdm->vdd; if (!voltdm->volt_data) {
if (!vdd->volt_data) {
pr_warning("%s: voltage table does not exist for vdd_%s\n", pr_warning("%s: voltage table does not exist for vdd_%s\n",
__func__, voltdm->name); __func__, voltdm->name);
return ERR_PTR(-ENODATA); return ERR_PTR(-ENODATA);
} }
for (i = 0; vdd->volt_data[i].volt_nominal != 0; i++) { for (i = 0; voltdm->volt_data[i].volt_nominal != 0; i++) {
if (vdd->volt_data[i].volt_nominal == volt) if (voltdm->volt_data[i].volt_nominal == volt)
return &vdd->volt_data[i]; return &voltdm->volt_data[i];
} }
pr_notice("%s: Unable to match the current voltage with the voltage" pr_notice("%s: Unable to match the current voltage with the voltage"
...@@ -304,9 +269,8 @@ int __init omap_voltage_late_init(void) ...@@ -304,9 +269,8 @@ int __init omap_voltage_late_init(void)
omap_vc_init_channel(voltdm); omap_vc_init_channel(voltdm);
} }
if (voltdm->vdd) { if (voltdm->vp) {
if (omap_vdd_data_configure(voltdm)) voltdm->scale = omap_vp_forceupdate_scale;
continue;
omap_vp_init(voltdm); omap_vp_init(voltdm);
} }
} }
......
...@@ -33,8 +33,6 @@ struct powerdomain; ...@@ -33,8 +33,6 @@ struct powerdomain;
#define OMAP3_VOLTOFFSET 0xff #define OMAP3_VOLTOFFSET 0xff
#define OMAP3_VOLTSETUP2 0xff #define OMAP3_VOLTSETUP2 0xff
struct omap_vdd_info;
/** /**
* struct omap_vfsm_instance - per-voltage manager FSM register/bitfield * struct omap_vfsm_instance - per-voltage manager FSM register/bitfield
* data * data
...@@ -60,9 +58,10 @@ struct omap_vfsm_instance { ...@@ -60,9 +58,10 @@ struct omap_vfsm_instance {
* @write: write a VC/VP register * @write: write a VC/VP register
* @read: read-modify-write a VC/VP register * @read: read-modify-write a VC/VP register
* @sys_clk: system clock name/frequency, used for various timing calculations * @sys_clk: system clock name/frequency, used for various timing calculations
* @vdd: to be removed
* @scale: function used to scale the voltage of the voltagedomain * @scale: function used to scale the voltage of the voltagedomain
* @nominal_volt: current nominal voltage for this voltage domain * @nominal_volt: current nominal voltage for this voltage domain
* @volt_data: voltage table having the distinct voltages supported
* by the domain and other associated per voltage data.
*/ */
struct voltagedomain { struct voltagedomain {
char *name; char *name;
...@@ -86,9 +85,9 @@ struct voltagedomain { ...@@ -86,9 +85,9 @@ struct voltagedomain {
int (*scale) (struct voltagedomain *voltdm, int (*scale) (struct voltagedomain *voltdm,
unsigned long target_volt); unsigned long target_volt);
u32 nominal_volt;
struct omap_vdd_info *vdd; u32 nominal_volt;
struct omap_volt_data *volt_data;
}; };
/** /**
...@@ -145,16 +144,6 @@ struct omap_voltdm_pmic { ...@@ -145,16 +144,6 @@ struct omap_voltdm_pmic {
u8 (*uv_to_vsel) (unsigned long uV); u8 (*uv_to_vsel) (unsigned long uV);
}; };
/**
* omap_vdd_info - Per Voltage Domain info
*
* @volt_data : voltage table having the distinct voltages supported
* by the domain and other associated per voltage data.
*/
struct omap_vdd_info {
struct omap_volt_data *volt_data;
};
void omap_voltage_get_volttable(struct voltagedomain *voltdm, void omap_voltage_get_volttable(struct voltagedomain *voltdm,
struct omap_volt_data **volt_data); struct omap_volt_data **volt_data);
struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm, struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm,
......
...@@ -36,15 +36,11 @@ static const struct omap_vfsm_instance omap3_vdd1_vfsm = { ...@@ -36,15 +36,11 @@ static const struct omap_vfsm_instance omap3_vdd1_vfsm = {
.voltsetup_mask = OMAP3430_SETUP_TIME1_MASK, .voltsetup_mask = OMAP3430_SETUP_TIME1_MASK,
}; };
static struct omap_vdd_info omap3_vdd1_info;
static const struct omap_vfsm_instance omap3_vdd2_vfsm = { static const struct omap_vfsm_instance omap3_vdd2_vfsm = {
.voltsetup_reg = OMAP3_PRM_VOLTSETUP1_OFFSET, .voltsetup_reg = OMAP3_PRM_VOLTSETUP1_OFFSET,
.voltsetup_mask = OMAP3430_SETUP_TIME2_MASK, .voltsetup_mask = OMAP3430_SETUP_TIME2_MASK,
}; };
static struct omap_vdd_info omap3_vdd2_info;
static struct voltagedomain omap3_voltdm_mpu = { static struct voltagedomain omap3_voltdm_mpu = {
.name = "mpu_iva", .name = "mpu_iva",
.scalable = true, .scalable = true,
...@@ -54,7 +50,6 @@ static struct voltagedomain omap3_voltdm_mpu = { ...@@ -54,7 +50,6 @@ static struct voltagedomain omap3_voltdm_mpu = {
.vc = &omap3_vc_mpu, .vc = &omap3_vc_mpu,
.vfsm = &omap3_vdd1_vfsm, .vfsm = &omap3_vdd1_vfsm,
.vp = &omap3_vp_mpu, .vp = &omap3_vp_mpu,
.vdd = &omap3_vdd1_info,
}; };
static struct voltagedomain omap3_voltdm_core = { static struct voltagedomain omap3_voltdm_core = {
...@@ -66,7 +61,6 @@ static struct voltagedomain omap3_voltdm_core = { ...@@ -66,7 +61,6 @@ static struct voltagedomain omap3_voltdm_core = {
.vc = &omap3_vc_core, .vc = &omap3_vc_core,
.vfsm = &omap3_vdd2_vfsm, .vfsm = &omap3_vdd2_vfsm,
.vp = &omap3_vp_core, .vp = &omap3_vp_core,
.vdd = &omap3_vdd2_info,
}; };
static struct voltagedomain omap3_voltdm_wkup = { static struct voltagedomain omap3_voltdm_wkup = {
...@@ -92,11 +86,11 @@ void __init omap3xxx_voltagedomains_init(void) ...@@ -92,11 +86,11 @@ void __init omap3xxx_voltagedomains_init(void)
* for the currently-running IC * for the currently-running IC
*/ */
if (cpu_is_omap3630()) { if (cpu_is_omap3630()) {
omap3_vdd1_info.volt_data = omap36xx_vddmpu_volt_data; omap3_voltdm_mpu.volt_data = omap36xx_vddmpu_volt_data;
omap3_vdd2_info.volt_data = omap36xx_vddcore_volt_data; omap3_voltdm_core.volt_data = omap36xx_vddcore_volt_data;
} else { } else {
omap3_vdd1_info.volt_data = omap34xx_vddmpu_volt_data; omap3_voltdm_mpu.volt_data = omap34xx_vddmpu_volt_data;
omap3_vdd2_info.volt_data = omap34xx_vddcore_volt_data; omap3_voltdm_core.volt_data = omap34xx_vddcore_volt_data;
} }
for (i = 0; voltdm = voltagedomains_omap3[i], voltdm; i++) for (i = 0; voltdm = voltagedomains_omap3[i], voltdm; i++)
......
...@@ -36,20 +36,14 @@ static const struct omap_vfsm_instance omap4_vdd_mpu_vfsm = { ...@@ -36,20 +36,14 @@ static const struct omap_vfsm_instance omap4_vdd_mpu_vfsm = {
.voltsetup_reg = OMAP4_PRM_VOLTSETUP_MPU_RET_SLEEP_OFFSET, .voltsetup_reg = OMAP4_PRM_VOLTSETUP_MPU_RET_SLEEP_OFFSET,
}; };
static struct omap_vdd_info omap4_vdd_mpu_info;
static const struct omap_vfsm_instance omap4_vdd_iva_vfsm = { static const struct omap_vfsm_instance omap4_vdd_iva_vfsm = {
.voltsetup_reg = OMAP4_PRM_VOLTSETUP_IVA_RET_SLEEP_OFFSET, .voltsetup_reg = OMAP4_PRM_VOLTSETUP_IVA_RET_SLEEP_OFFSET,
}; };
static struct omap_vdd_info omap4_vdd_iva_info;
static const struct omap_vfsm_instance omap4_vdd_core_vfsm = { static const struct omap_vfsm_instance omap4_vdd_core_vfsm = {
.voltsetup_reg = OMAP4_PRM_VOLTSETUP_CORE_RET_SLEEP_OFFSET, .voltsetup_reg = OMAP4_PRM_VOLTSETUP_CORE_RET_SLEEP_OFFSET,
}; };
static struct omap_vdd_info omap4_vdd_core_info;
static struct voltagedomain omap4_voltdm_mpu = { static struct voltagedomain omap4_voltdm_mpu = {
.name = "mpu", .name = "mpu",
.scalable = true, .scalable = true,
...@@ -59,7 +53,6 @@ static struct voltagedomain omap4_voltdm_mpu = { ...@@ -59,7 +53,6 @@ static struct voltagedomain omap4_voltdm_mpu = {
.vc = &omap4_vc_mpu, .vc = &omap4_vc_mpu,
.vfsm = &omap4_vdd_mpu_vfsm, .vfsm = &omap4_vdd_mpu_vfsm,
.vp = &omap4_vp_mpu, .vp = &omap4_vp_mpu,
.vdd = &omap4_vdd_mpu_info,
}; };
static struct voltagedomain omap4_voltdm_iva = { static struct voltagedomain omap4_voltdm_iva = {
...@@ -71,7 +64,6 @@ static struct voltagedomain omap4_voltdm_iva = { ...@@ -71,7 +64,6 @@ static struct voltagedomain omap4_voltdm_iva = {
.vc = &omap4_vc_iva, .vc = &omap4_vc_iva,
.vfsm = &omap4_vdd_iva_vfsm, .vfsm = &omap4_vdd_iva_vfsm,
.vp = &omap4_vp_iva, .vp = &omap4_vp_iva,
.vdd = &omap4_vdd_iva_info,
}; };
static struct voltagedomain omap4_voltdm_core = { static struct voltagedomain omap4_voltdm_core = {
...@@ -83,7 +75,6 @@ static struct voltagedomain omap4_voltdm_core = { ...@@ -83,7 +75,6 @@ static struct voltagedomain omap4_voltdm_core = {
.vc = &omap4_vc_core, .vc = &omap4_vc_core,
.vfsm = &omap4_vdd_core_vfsm, .vfsm = &omap4_vdd_core_vfsm,
.vp = &omap4_vp_core, .vp = &omap4_vp_core,
.vdd = &omap4_vdd_core_info,
}; };
static struct voltagedomain omap4_voltdm_wkup = { static struct voltagedomain omap4_voltdm_wkup = {
...@@ -109,9 +100,9 @@ void __init omap44xx_voltagedomains_init(void) ...@@ -109,9 +100,9 @@ void __init omap44xx_voltagedomains_init(void)
* XXX Will depend on the process, validation, and binning * XXX Will depend on the process, validation, and binning
* for the currently-running IC * for the currently-running IC
*/ */
omap4_vdd_mpu_info.volt_data = omap44xx_vdd_mpu_volt_data; omap4_voltdm_mpu.volt_data = omap44xx_vdd_mpu_volt_data;
omap4_vdd_iva_info.volt_data = omap44xx_vdd_iva_volt_data; omap4_voltdm_iva.volt_data = omap44xx_vdd_iva_volt_data;
omap4_vdd_core_info.volt_data = omap44xx_vdd_core_volt_data; omap4_voltdm_core.volt_data = omap44xx_vdd_core_volt_data;
for (i = 0; voltdm = voltagedomains_omap4[i], voltdm; i++) for (i = 0; voltdm = voltagedomains_omap4[i], voltdm; i++)
voltdm->sys_clk.name = sys_clk_name; voltdm->sys_clk.name = sys_clk_name;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment