Re: [PATCH v3 3/3] drm/panel-fannal-c3004: Add fannal c3004 DSI panel

From: Krzysztof Kozlowski
Date: Tue Jun 06 2023 - 10:47:22 EST


On 06/06/2023 16:07, Paulo Pavacic wrote:
> Fannal C3004 is a 480x800 display made by fannal that requires
> DCS initialization sequences.
>
> Signed-off-by: Paulo Pavacic <pavacic.p@xxxxxxxxx>
> ---
> v4 changelog:
> - formatting and style changes

Are you sure? I see other changes - removal of some code, handling
errors and GPIO.

> - change community room

What does it mean? Where is this change in this patch?

...

> +
> +static const struct drm_panel_funcs fannal_panel_funcs = {
> + .prepare = fannal_panel_prepare,
> + .unprepare = fannal_panel_unprepare,
> + .enable = fannal_panel_enable,
> + .disable = fannal_panel_disable,
> + .get_modes = fannal_panel_get_modes,
> +};
> +
> +static int fannal_panel_probe(struct mipi_dsi_device *dsi)
> +{
> + struct device *dev = &dsi->dev;
> + struct fannal_panel_data *panel_data;
> + int ret;
> +
> + panel_data = devm_kzalloc(&dsi->dev, sizeof(*panel_data), GFP_KERNEL);
> +

Drop blank line.

> + if (!panel_data)
> + return -ENOMEM;
> +
> + panel_data->reset =

You have wrong wrapping here. devm_gpiod_get_optional() goes after =.

> + devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW);
> +

Drop blank line.

> + if (IS_ERR(panel_data->reset)) {
> + return dev_err_probe(
> + dev, PTR_ERR(panel_data->reset),
> + "error: probe: get reset GPIO: (%d) Check the fdt\n",
> + ret);
> + }
> +
> + mipi_dsi_set_drvdata(dsi, panel_data);
> +
> + dsi->format = MIPI_DSI_FMT_RGB888;
> + dsi->mode_flags = MIPI_DSI_CLOCK_NON_CONTINUOUS |
> + MIPI_DSI_MODE_VSYNC_FLUSH | MIPI_DSI_MODE_VIDEO_HSE |
> + MIPI_DSI_MODE_NO_EOT_PACKET |
> + MIPI_DSI_MODE_VIDEO_SYNC_PULSE | MIPI_DSI_MODE_VIDEO;
> + dsi->lanes = 2;
> +
> + gpiod_set_value_cansleep(panel_data->reset, 1);
> +
> + drm_panel_init(&panel_data->panel, dev, &fannal_panel_funcs,
> + DRM_MODE_CONNECTOR_DSI);
> + dev_set_drvdata(dev, panel_data);
> +
> + drm_panel_add(&panel_data->panel);
> +


Best regards,
Krzysztof