Message ID | 20230523212050.9970-1-aweber.kernel@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/panel: samsung-s6d7aa0: use pointer for drm_mode in panel desc struct | expand |
On Tue, May 23, 2023 at 2:20 PM Artur Weber <aweber.kernel@gmail.com> wrote: > > Fixes compilation errors on older GCC versions (before 8.x) and Clang > after changes introduced in commit 6810bb390282 ("drm/panel: Add > Samsung S6D7AA0 panel controller driver"). Tested with GCC 13.1.1, > GCC 6.4.0 and Clang 16.0.3. Hi Artur, Thanks for the patch! Mind sending a v2 with the diagnostic added to the commit message? This gives reviewers much more context as to what issue you are fixing. > > Signed-off-by: Artur Weber <aweber.kernel@gmail.com> > --- > drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > index f532aa018428..102e1fc7ee38 100644 > --- a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > +++ b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > @@ -37,7 +37,7 @@ struct s6d7aa0_panel_desc { > unsigned int panel_type; > int (*init_func)(struct s6d7aa0 *ctx); > int (*off_func)(struct s6d7aa0 *ctx); > - const struct drm_display_mode drm_mode; > + const struct drm_display_mode *drm_mode; > unsigned long mode_flags; > u32 bus_flags; > bool has_backlight; > @@ -309,7 +309,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al02_desc = { > .panel_type = S6D7AA0_PANEL_LSL080AL02, > .init_func = s6d7aa0_lsl080al02_init, > .off_func = s6d7aa0_lsl080al02_off, > - .drm_mode = s6d7aa0_lsl080al02_mode, > + .drm_mode = &s6d7aa0_lsl080al02_mode, > .mode_flags = MIPI_DSI_MODE_VSYNC_FLUSH | MIPI_DSI_MODE_VIDEO_NO_HFP, > .bus_flags = DRM_BUS_FLAG_DE_HIGH, > > @@ -412,7 +412,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al03_desc = { > .panel_type = S6D7AA0_PANEL_LSL080AL03, > .init_func = s6d7aa0_lsl080al03_init, > .off_func = s6d7aa0_lsl080al03_off, > - .drm_mode = s6d7aa0_lsl080al03_mode, > + .drm_mode = &s6d7aa0_lsl080al03_mode, > .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, > .bus_flags = 0, > > @@ -440,7 +440,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_ltl101at01_desc = { > .panel_type = S6D7AA0_PANEL_LTL101AT01, > .init_func = s6d7aa0_lsl080al03_init, /* Similar init to LSL080AL03 */ > .off_func = s6d7aa0_lsl080al03_off, > - .drm_mode = s6d7aa0_ltl101at01_mode, > + .drm_mode = &s6d7aa0_ltl101at01_mode, > .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, > .bus_flags = 0, > > @@ -458,7 +458,7 @@ static int s6d7aa0_get_modes(struct drm_panel *panel, > if (!ctx) > return -EINVAL; > > - mode = drm_mode_duplicate(connector->dev, &ctx->desc->drm_mode); > + mode = drm_mode_duplicate(connector->dev, ctx->desc->drm_mode); > if (!mode) > return -ENOMEM; > > > base-commit: 37cee4876a45a5c3da79a83d34ed4f3c68548aef > -- > 2.40.1 >
On Tue, May 23, 2023 at 2:29 PM Nick Desaulniers <ndesaulniers@google.com> wrote: > > On Tue, May 23, 2023 at 2:20 PM Artur Weber <aweber.kernel@gmail.com> wrote: > > > > Fixes compilation errors on older GCC versions (before 8.x) and Clang > > after changes introduced in commit 6810bb390282 ("drm/panel: Add > > Samsung S6D7AA0 panel controller driver"). Tested with GCC 13.1.1, > > GCC 6.4.0 and Clang 16.0.3. > > Hi Artur, > Thanks for the patch! Mind sending a v2 with the diagnostic added to > the commit message? This gives reviewers much more context as to what > issue you are fixing. Perhaps it was these errors: https://lore.kernel.org/llvm/646c6def.a70a0220.58c1a.903d@mx.google.com/T/#u ? If so, please add Reported-by: kernelci.org bot <bot@kernelci.org> Link: https://lore.kernel.org/llvm/646c6def.a70a0220.58c1a.903d@mx.google.com To the v2 commit message as well. > > > > > Signed-off-by: Artur Weber <aweber.kernel@gmail.com> > > --- > > drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c | 10 +++++----- > > 1 file changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > > index f532aa018428..102e1fc7ee38 100644 > > --- a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > > +++ b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c > > @@ -37,7 +37,7 @@ struct s6d7aa0_panel_desc { > > unsigned int panel_type; > > int (*init_func)(struct s6d7aa0 *ctx); > > int (*off_func)(struct s6d7aa0 *ctx); > > - const struct drm_display_mode drm_mode; > > + const struct drm_display_mode *drm_mode; > > unsigned long mode_flags; > > u32 bus_flags; > > bool has_backlight; > > @@ -309,7 +309,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al02_desc = { > > .panel_type = S6D7AA0_PANEL_LSL080AL02, > > .init_func = s6d7aa0_lsl080al02_init, > > .off_func = s6d7aa0_lsl080al02_off, > > - .drm_mode = s6d7aa0_lsl080al02_mode, > > + .drm_mode = &s6d7aa0_lsl080al02_mode, > > .mode_flags = MIPI_DSI_MODE_VSYNC_FLUSH | MIPI_DSI_MODE_VIDEO_NO_HFP, > > .bus_flags = DRM_BUS_FLAG_DE_HIGH, > > > > @@ -412,7 +412,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al03_desc = { > > .panel_type = S6D7AA0_PANEL_LSL080AL03, > > .init_func = s6d7aa0_lsl080al03_init, > > .off_func = s6d7aa0_lsl080al03_off, > > - .drm_mode = s6d7aa0_lsl080al03_mode, > > + .drm_mode = &s6d7aa0_lsl080al03_mode, > > .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, > > .bus_flags = 0, > > > > @@ -440,7 +440,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_ltl101at01_desc = { > > .panel_type = S6D7AA0_PANEL_LTL101AT01, > > .init_func = s6d7aa0_lsl080al03_init, /* Similar init to LSL080AL03 */ > > .off_func = s6d7aa0_lsl080al03_off, > > - .drm_mode = s6d7aa0_ltl101at01_mode, > > + .drm_mode = &s6d7aa0_ltl101at01_mode, > > .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, > > .bus_flags = 0, > > > > @@ -458,7 +458,7 @@ static int s6d7aa0_get_modes(struct drm_panel *panel, > > if (!ctx) > > return -EINVAL; > > > > - mode = drm_mode_duplicate(connector->dev, &ctx->desc->drm_mode); > > + mode = drm_mode_duplicate(connector->dev, ctx->desc->drm_mode); > > if (!mode) > > return -ENOMEM; > > > > > > base-commit: 37cee4876a45a5c3da79a83d34ed4f3c68548aef > > -- > > 2.40.1 > > > > > -- > Thanks, > ~Nick Desaulniers
diff --git a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c index f532aa018428..102e1fc7ee38 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c @@ -37,7 +37,7 @@ struct s6d7aa0_panel_desc { unsigned int panel_type; int (*init_func)(struct s6d7aa0 *ctx); int (*off_func)(struct s6d7aa0 *ctx); - const struct drm_display_mode drm_mode; + const struct drm_display_mode *drm_mode; unsigned long mode_flags; u32 bus_flags; bool has_backlight; @@ -309,7 +309,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al02_desc = { .panel_type = S6D7AA0_PANEL_LSL080AL02, .init_func = s6d7aa0_lsl080al02_init, .off_func = s6d7aa0_lsl080al02_off, - .drm_mode = s6d7aa0_lsl080al02_mode, + .drm_mode = &s6d7aa0_lsl080al02_mode, .mode_flags = MIPI_DSI_MODE_VSYNC_FLUSH | MIPI_DSI_MODE_VIDEO_NO_HFP, .bus_flags = DRM_BUS_FLAG_DE_HIGH, @@ -412,7 +412,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_lsl080al03_desc = { .panel_type = S6D7AA0_PANEL_LSL080AL03, .init_func = s6d7aa0_lsl080al03_init, .off_func = s6d7aa0_lsl080al03_off, - .drm_mode = s6d7aa0_lsl080al03_mode, + .drm_mode = &s6d7aa0_lsl080al03_mode, .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, .bus_flags = 0, @@ -440,7 +440,7 @@ static const struct s6d7aa0_panel_desc s6d7aa0_ltl101at01_desc = { .panel_type = S6D7AA0_PANEL_LTL101AT01, .init_func = s6d7aa0_lsl080al03_init, /* Similar init to LSL080AL03 */ .off_func = s6d7aa0_lsl080al03_off, - .drm_mode = s6d7aa0_ltl101at01_mode, + .drm_mode = &s6d7aa0_ltl101at01_mode, .mode_flags = MIPI_DSI_MODE_NO_EOT_PACKET, .bus_flags = 0, @@ -458,7 +458,7 @@ static int s6d7aa0_get_modes(struct drm_panel *panel, if (!ctx) return -EINVAL; - mode = drm_mode_duplicate(connector->dev, &ctx->desc->drm_mode); + mode = drm_mode_duplicate(connector->dev, ctx->desc->drm_mode); if (!mode) return -ENOMEM;
Fixes compilation errors on older GCC versions (before 8.x) and Clang after changes introduced in commit 6810bb390282 ("drm/panel: Add Samsung S6D7AA0 panel controller driver"). Tested with GCC 13.1.1, GCC 6.4.0 and Clang 16.0.3. Signed-off-by: Artur Weber <aweber.kernel@gmail.com> --- drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) base-commit: 37cee4876a45a5c3da79a83d34ed4f3c68548aef