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: Kevin Hilman <khilman@ti.com>
This commit is contained in:
parent
7590f608aa
commit
e327788049
4 changed files with 20 additions and 82 deletions
|
@ -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)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
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,
|
||||||
* 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,
|
||||||
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)
|
||||||
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;
|
||||||
#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 {
|
||||||
* @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 {
|
||||||
|
|
||||||
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 {
|
||||||
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 = {
|
||||||
.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 = {
|
||||||
.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 = {
|
||||||
.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)
|
||||||
* 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 = {
|
||||||
.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 = {
|
||||||
.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 = {
|
||||||
.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 = {
|
||||||
.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)
|
||||||
* 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;
|
||||||
|
|
Loading…
Add table
Reference in a new issue