From: Claude Code Review Bot <claude-review@example.com>
To: dri-devel-reviews@example.com
Subject: Claude review: drm: panel: add support for the Renesas R63419 based dual-DSI video mode Display Panels
Date: Tue, 05 May 2026 08:29:50 +1000 [thread overview]
Message-ID: <review-patch2-20260504-topic-sm8650-ayaneo-pocket-s2-r63419-v3-2-9f61cf24aebf@linaro.org> (raw)
In-Reply-To: <20260504-topic-sm8650-ayaneo-pocket-s2-r63419-v3-2-9f61cf24aebf@linaro.org>
Patch Review
**Issue (medium): Reversed display-on / exit-sleep-mode order in `renesas_r63419_on()`**
```c
static int renesas_r63419_on(struct renesas_r63419_panel *ctx)
{
struct mipi_dsi_multi_context dsi_ctx = { .dsi = ctx->dsi[0] };
struct mipi_dsi_multi_context dsi_ctx1 = { .dsi = ctx->dsi[1] };
mipi_dsi_dcs_set_display_on_multi(&dsi_ctx);
mipi_dsi_dcs_set_display_on_multi(&dsi_ctx1);
mipi_dsi_msleep(&dsi_ctx, 150);
mipi_dsi_dcs_exit_sleep_mode_multi(&dsi_ctx);
mipi_dsi_dcs_exit_sleep_mode_multi(&dsi_ctx1);
mipi_dsi_msleep(&dsi_ctx, 50);
```
The standard MIPI DCS sequence is exit-sleep-mode first, wait ~120ms, then display-on. The JDI dual-DSI driver (`panel-jdi-lpm102a188a.c`) confirms this ordering at lines 223-234 with an explicit comment: *"We need to wait 150ms between mipi_dsi_dcs_exit_sleep_mode_multi() and mipi_dsi_dcs_set_display_on_multi()."*
If the R63419 genuinely requires this reversed order, a comment explaining the deviation would be valuable. Otherwise this looks like a bug.
**Issue (medium): Second DSI link errors silently dropped**
Both `renesas_r63419_on()` and `renesas_r63419_disable()` use two separate `mipi_dsi_multi_context` structs but only return `dsi_ctx.accum_err`:
```c
mipi_dsi_dcs_set_display_on_multi(&dsi_ctx);
mipi_dsi_dcs_set_display_on_multi(&dsi_ctx1);
...
return dsi_ctx.accum_err;
```
Errors from operations on `dsi_ctx1` (the second DSI link) are never checked. The kernel provides the `mipi_dsi_dual()` macro (see `include/drm/drm_mipi_dsi.h:486`) that uses a single context and swaps the `.dsi` pointer between calls, ensuring `accum_err` captures failures from both links. Consider using it:
```c
mipi_dsi_dual(mipi_dsi_dcs_set_display_on_multi,
&dsi_ctx, ctx->dsi[0], ctx->dsi[1]);
```
**Issue (minor): `wt0600_desc` and `wt0630_desc` should be `const`**
```c
static struct panel_desc wt0600_desc = {
```
These are used as read-only match data via `of_device_get_match_data()` and are never modified. Other panel drivers (e.g., `panel-boe-tv101wum-nl6.c`) declare equivalent structs as `static const`. Mark these `const`.
**Nit: Misleading comment on `wt0630_desc`**
```c
.mode = &wt0600_mode, /* wt0600 only has different screen size */
```
This reads as "wt0600 only differs in screen size" but should say "wt0630 only has different physical size" since the comment is on the wt0630 descriptor.
**Observation: `prepare` error path vs. `unprepare` ordering**
In `renesas_r63419_prepare()`, the error cleanup path does:
```c
regulator_bulk_disable(...vcc_supplies);
regulator_bulk_disable(...vdd_supplies);
gpiod_set_value_cansleep(ctx->reset_gpio, 1);
```
While `renesas_r63419_unprepare()` does the same order. This is fine functionally, but the convention in many panel drivers is to assert reset before disabling regulators (reverse of the power-on sequence). Not a correctness issue, just a style observation.
---
Generated by Claude Code Patch Reviewer
next prev parent reply other threads:[~2026-05-04 22:29 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-04 8:02 [PATCH v3 0/2] drm: panel: support the R63419 based dual-DSI video mode Display Panels Neil Armstrong
2026-05-04 8:02 ` [PATCH v3 1/2] dt-bindings: display: panel: document the Renesas " Neil Armstrong
2026-05-04 22:29 ` Claude review: " Claude Code Review Bot
2026-05-04 8:02 ` [PATCH v3 2/2] drm: panel: add support for " Neil Armstrong
2026-05-04 22:29 ` Claude Code Review Bot [this message]
2026-05-04 22:29 ` Claude review: drm: panel: support the " Claude Code Review Bot
-- strict thread matches above, loose matches on Subject: below --
2026-04-30 12:22 [PATCH v2 0/2] " Neil Armstrong
2026-04-30 12:22 ` [PATCH v2 2/2] drm: panel: add support for the Renesas " Neil Armstrong
2026-05-05 0:27 ` Claude review: " Claude Code Review Bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=review-patch2-20260504-topic-sm8650-ayaneo-pocket-s2-r63419-v3-2-9f61cf24aebf@linaro.org \
--to=claude-review@example.com \
--cc=dri-devel-reviews@example.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox