drivers: esoc: Remove reset gpio support for kona

Cleanup reset gpio support for kona as going forward spmi will
be used for reset purposes.

Change-Id: I14c67c1a9078ba39b55f0cc105dd4ec6a42f774f
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
This commit is contained in:
Rishabh Bhatnagar
2019-10-10 13:46:38 -07:00
parent 30d171acd1
commit 97952988ae
2 changed files with 8 additions and 59 deletions

View File

@@ -1081,27 +1081,12 @@ static int sdx55m_setup_hw(struct mdm_ctrl *mdm,
dev_err(mdm->dev, "Failed to parse DT gpios\n");
goto err_destroy_wrkq;
}
if (!of_property_read_bool(node, "qcom,esoc-spmi-soft-reset")) {
ret = mdm_pon_dt_init(mdm);
if (ret) {
esoc_mdm_log("Failed to parse PON DT gpios\n");
dev_err(mdm->dev, "Failed to parse PON DT gpio\n");
goto err_destroy_wrkq;
}
ret = mdm_pon_setup(mdm);
if (ret) {
esoc_mdm_log("Failed to setup PON\n");
dev_err(mdm->dev, "Failed to setup PON\n");
goto err_destroy_wrkq;
}
}
ret = mdm_pinctrl_init(mdm);
if (ret) {
esoc_mdm_log("Failed to init pinctrl\n");
dev_err(mdm->dev, "Failed to init pinctrl\n");
goto err_release_ipc;
goto err_destroy_wrkq;
}
ret = mdm_configure_ipc(mdm, pdev);

View File

@@ -74,50 +74,16 @@ static int sdx50m_toggle_soft_reset(struct mdm_ctrl *mdm, bool atomic)
/* This function can be called from atomic context. */
static int sdx55m_toggle_soft_reset(struct mdm_ctrl *mdm, bool atomic)
{
struct device_node *node = mdm->dev->of_node;
int rc;
int soft_reset_direction_assert = 0,
soft_reset_direction_de_assert = 1;
if (of_property_read_bool(node, "qcom,esoc-spmi-soft-reset")) {
esoc_mdm_log("Doing a Warm reset using SPMI\n");
rc = qpnp_pon_modem_pwr_off(PON_POWER_OFF_WARM_RESET);
if (rc) {
dev_err(mdm->dev, "SPMI warm reset failed\n");
esoc_mdm_log("SPMI warm reset failed\n");
return rc;
}
esoc_mdm_log("Warm reset done using SPMI\n");
return 0;
esoc_mdm_log("Doing a Warm reset using SPMI\n");
rc = qpnp_pon_modem_pwr_off(PON_POWER_OFF_WARM_RESET);
if (rc) {
dev_err(mdm->dev, "SPMI warm reset failed\n");
esoc_mdm_log("SPMI warm reset failed\n");
return rc;
}
if (mdm->soft_reset_inverted) {
soft_reset_direction_assert = 1;
soft_reset_direction_de_assert = 0;
}
esoc_mdm_log("RESET GPIO value (before doing a reset): %d\n",
gpio_get_value(MDM_GPIO(mdm, AP2MDM_SOFT_RESET)));
esoc_mdm_log("Setting AP2MDM_SOFT_RESET = %d\n",
soft_reset_direction_assert);
gpio_direction_output(MDM_GPIO(mdm, AP2MDM_SOFT_RESET),
soft_reset_direction_assert);
/*
* Allow PS hold assert to be detected
*/
if (!atomic)
usleep_range(80000, 180000);
else
/*
* The flow falls through this path as a part of the
* panic handler, which has to executed atomically.
*/
mdelay(100);
esoc_mdm_log("Setting AP2MDM_SOFT_RESET = %d\n",
soft_reset_direction_de_assert);
gpio_direction_output(MDM_GPIO(mdm, AP2MDM_SOFT_RESET),
soft_reset_direction_de_assert);
esoc_mdm_log("Warm reset done using SPMI\n");
return 0;
}
@@ -325,6 +291,4 @@ struct mdm_pon_ops sdx55m_pon_ops = {
.pon = mdm4x_do_first_power_on,
.soft_reset = sdx55m_toggle_soft_reset,
.poff_force = sdx55m_power_down,
.dt_init = mdm4x_pon_dt_init,
.setup = mdm4x_pon_setup,
};