Commit b28d204a authored by Yuan Can's avatar Yuan Can Committed by Douglas Anderson
Browse files

drm/panel: panel-edp: Use dev_err_probe() to simplify code



In the probe path, dev_err() can be replaced with dev_err_probe()
which will check if error code is -EPROBE_DEFER and prints the
error name. It also sets the defer probe reason which can be
checked later through debugfs.

Signed-off-by: default avatarYuan Can <yuancan@huawei.com>
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Signed-off-by: default avatarDouglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220929015503.17301-2-yuancan@huawei.com
Link: https://patchwork.freedesktop.org/patch/msgid/20220929015503.17301-2-yuancan@huawei.com
parent b55002b9
Loading
Loading
Loading
Loading
+6 −16
Original line number Diff line number Diff line
@@ -403,17 +403,10 @@ static int panel_edp_unprepare(struct drm_panel *panel)

static int panel_edp_get_hpd_gpio(struct device *dev, struct panel_edp *p)
{
	int err;

	p->hpd_gpio = devm_gpiod_get_optional(dev, "hpd", GPIOD_IN);
	if (IS_ERR(p->hpd_gpio)) {
		err = PTR_ERR(p->hpd_gpio);

		if (err != -EPROBE_DEFER)
			dev_err(dev, "failed to get 'hpd' GPIO: %d\n", err);

		return err;
	}
	if (IS_ERR(p->hpd_gpio))
		return dev_err_probe(dev, PTR_ERR(p->hpd_gpio),
				     "failed to get 'hpd' GPIO\n");

	return 0;
}
@@ -832,12 +825,9 @@ static int panel_edp_probe(struct device *dev, const struct panel_desc *desc,

	panel->enable_gpio = devm_gpiod_get_optional(dev, "enable",
						     GPIOD_OUT_LOW);
	if (IS_ERR(panel->enable_gpio)) {
		err = PTR_ERR(panel->enable_gpio);
		if (err != -EPROBE_DEFER)
			dev_err(dev, "failed to request GPIO: %d\n", err);
		return err;
	}
	if (IS_ERR(panel->enable_gpio))
		return dev_err_probe(dev, PTR_ERR(panel->enable_gpio),
				     "failed to request GPIO\n");

	err = of_drm_get_panel_orientation(dev->of_node, &panel->orientation);
	if (err) {