Commit 429e8706 authored by Matti Vaittinen's avatar Matti Vaittinen Committed by Neil Armstrong
Browse files

drm/meson: dw-hdmi: Use devm_regulator_*get_enable*()

parent ff1eae12
Loading
Loading
Loading
Loading
+3 −20
Original line number Diff line number Diff line
@@ -140,7 +140,6 @@ struct meson_dw_hdmi {
	struct reset_control *hdmitx_apb;
	struct reset_control *hdmitx_ctrl;
	struct reset_control *hdmitx_phy;
	struct regulator *hdmi_supply;
	u32 irq_stat;
	struct dw_hdmi *hdmi;
	struct drm_bridge *bridge;
@@ -665,11 +664,6 @@ static void meson_dw_hdmi_init(struct meson_dw_hdmi *meson_dw_hdmi)

}

static void meson_disable_regulator(void *data)
{
	regulator_disable(data);
}

static void meson_disable_clk(void *data)
{
	clk_disable_unprepare(data);
@@ -723,20 +717,9 @@ static int meson_dw_hdmi_bind(struct device *dev, struct device *master,
	meson_dw_hdmi->data = match;
	dw_plat_data = &meson_dw_hdmi->dw_plat_data;

	meson_dw_hdmi->hdmi_supply = devm_regulator_get_optional(dev, "hdmi");
	if (IS_ERR(meson_dw_hdmi->hdmi_supply)) {
		if (PTR_ERR(meson_dw_hdmi->hdmi_supply) == -EPROBE_DEFER)
			return -EPROBE_DEFER;
		meson_dw_hdmi->hdmi_supply = NULL;
	} else {
		ret = regulator_enable(meson_dw_hdmi->hdmi_supply);
		if (ret)
			return ret;
		ret = devm_add_action_or_reset(dev, meson_disable_regulator,
					       meson_dw_hdmi->hdmi_supply);
		if (ret)
	ret = devm_regulator_get_enable_optional(dev, "hdmi");
	if (ret != -ENODEV)
		return ret;
	}

	meson_dw_hdmi->hdmitx_apb = devm_reset_control_get_exclusive(dev,
						"hdmitx_apb");