Commit e1eb7293 authored by Casey Connolly's avatar Casey Connolly Committed by Neil Armstrong
Browse files

drm/panel: samsung-sofef00: Drop s6e3fc2x01 support



We never properly supported this panel and always used the wrong init
sequence. Drop support so we can move it to it's own proper driver.

Fixes: 5933baa3 ("drm/panel/samsung-sofef00: Add panel for OnePlus 6/T devices")
Signed-off-by: default avatarCasey Connolly <casey.connolly@linaro.org>
Signed-off-by: default avatarDavid Heidelberg <david@ixit.cz>
Reviewed-by: default avatarNeil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: default avatarNeil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250419-drop-s6e3fc2x01-support-v1-1-05edfe0d27aa@ixit.cz
parent 61a0fc33
Loading
Loading
Loading
Loading
+2 −32
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@ struct sofef00_panel {
	struct mipi_dsi_device *dsi;
	struct regulator *supply;
	struct gpio_desc *reset_gpio;
	const struct drm_display_mode *mode;
};

static inline
@@ -131,26 +130,11 @@ static const struct drm_display_mode enchilada_panel_mode = {
	.height_mm = 145,
};

static const struct drm_display_mode fajita_panel_mode = {
	.clock = (1080 + 72 + 16 + 36) * (2340 + 32 + 4 + 18) * 60 / 1000,
	.hdisplay = 1080,
	.hsync_start = 1080 + 72,
	.hsync_end = 1080 + 72 + 16,
	.htotal = 1080 + 72 + 16 + 36,
	.vdisplay = 2340,
	.vsync_start = 2340 + 32,
	.vsync_end = 2340 + 32 + 4,
	.vtotal = 2340 + 32 + 4 + 18,
	.width_mm = 68,
	.height_mm = 145,
};

static int sofef00_panel_get_modes(struct drm_panel *panel, struct drm_connector *connector)
{
	struct drm_display_mode *mode;
	struct sofef00_panel *ctx = to_sofef00_panel(panel);

	mode = drm_mode_duplicate(connector->dev, ctx->mode);
	mode = drm_mode_duplicate(connector->dev, &enchilada_panel_mode);
	if (!mode)
		return -ENOMEM;

@@ -211,13 +195,6 @@ static int sofef00_panel_probe(struct mipi_dsi_device *dsi)
	if (!ctx)
		return -ENOMEM;

	ctx->mode = of_device_get_match_data(dev);

	if (!ctx->mode) {
		dev_err(dev, "Missing device mode\n");
		return -ENODEV;
	}

	ctx->supply = devm_regulator_get(dev, "vddio");
	if (IS_ERR(ctx->supply))
		return dev_err_probe(dev, PTR_ERR(ctx->supply),
@@ -267,14 +244,7 @@ static void sofef00_panel_remove(struct mipi_dsi_device *dsi)
}

static const struct of_device_id sofef00_panel_of_match[] = {
	{ // OnePlus 6 / enchilada
		.compatible = "samsung,sofef00",
		.data = &enchilada_panel_mode,
	},
	{ // OnePlus 6T / fajita
		.compatible = "samsung,s6e3fc2x01",
		.data = &fajita_panel_mode,
	},
	{ .compatible = "samsung,sofef00" },
	{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, sofef00_panel_of_match);