drm/msm/mdp4: Don't manage DSI PLL regulators in MDP driver
The MDP4 driver tries to request and set voltages for regulators required by the DSI PLLs. Firstly, the MDP4 driver shouldn't manage the DSI regulators, this should be handled in the DSI driver. Secondly, it shouldn't try to set a fixed voltage for regulators. Voltage constraints should be specified on the regulator via DT and managed by the regulator core. Remove all the DSI PLL regulator related code from the MDP4 driver. It's managed in the DSI driver for MSM8960/APQ8064 already. Signed-off-by: Archit Taneja <architt@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
1d15c1654f
commit
ed19075be1
|
@ -50,30 +50,6 @@ static int mdp4_hw_init(struct msm_kms *kms)
|
|||
|
||||
mdp4_kms->rev = minor;
|
||||
|
||||
if (mdp4_kms->dsi_pll_vdda) {
|
||||
if ((mdp4_kms->rev == 2) || (mdp4_kms->rev == 4)) {
|
||||
ret = regulator_set_voltage(mdp4_kms->dsi_pll_vdda,
|
||||
1200000, 1200000);
|
||||
if (ret) {
|
||||
dev_err(dev->dev,
|
||||
"failed to set dsi_pll_vdda voltage: %d\n", ret);
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mdp4_kms->dsi_pll_vddio) {
|
||||
if (mdp4_kms->rev == 2) {
|
||||
ret = regulator_set_voltage(mdp4_kms->dsi_pll_vddio,
|
||||
1800000, 1800000);
|
||||
if (ret) {
|
||||
dev_err(dev->dev,
|
||||
"failed to set dsi_pll_vddio voltage: %d\n", ret);
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mdp4_kms->rev > 1) {
|
||||
mdp4_write(mdp4_kms, REG_MDP4_CS_CONTROLLER0, 0x0707ffff);
|
||||
mdp4_write(mdp4_kms, REG_MDP4_CS_CONTROLLER1, 0x03073f3f);
|
||||
|
@ -485,16 +461,6 @@ struct msm_kms *mdp4_kms_init(struct drm_device *dev)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
mdp4_kms->dsi_pll_vdda =
|
||||
devm_regulator_get_optional(&pdev->dev, "dsi_pll_vdda");
|
||||
if (IS_ERR(mdp4_kms->dsi_pll_vdda))
|
||||
mdp4_kms->dsi_pll_vdda = NULL;
|
||||
|
||||
mdp4_kms->dsi_pll_vddio =
|
||||
devm_regulator_get_optional(&pdev->dev, "dsi_pll_vddio");
|
||||
if (IS_ERR(mdp4_kms->dsi_pll_vddio))
|
||||
mdp4_kms->dsi_pll_vddio = NULL;
|
||||
|
||||
/* NOTE: driver for this regulator still missing upstream.. use
|
||||
* _get_exclusive() and ignore the error if it does not exist
|
||||
* (and hope that the bootloader left it on for us)
|
||||
|
|
|
@ -37,8 +37,6 @@ struct mdp4_kms {
|
|||
|
||||
void __iomem *mmio;
|
||||
|
||||
struct regulator *dsi_pll_vdda;
|
||||
struct regulator *dsi_pll_vddio;
|
||||
struct regulator *vdd;
|
||||
|
||||
struct clk *clk;
|
||||
|
|
Loading…
Reference in New Issue