Hi

Am 30.10.25 um 05:14 schrieb Stephen Rothwell:
Hi all,

After merging the backlight tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/gpu/drm/panel/panel-synaptics-tddi.c:41:41: error: array type has 
incomplete element type 'struct regulator_bulk_data'
    41 | static const struct regulator_bulk_data tddi_supplies[] = {
       |                                         ^~~~~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c: In function 'tddi_prepare':
drivers/gpu/drm/panel/panel-synaptics-tddi.c:72:15: error: implicit declaration 
of function 'regulator_bulk_enable' [-Wimplicit-function-declaration]
    72 |         ret = regulator_bulk_enable(ARRAY_SIZE(tddi_supplies), 
ctx->supplies);
       |               ^~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/dev_printk.h:14,
                  from include/linux/device.h:15,
                  from include/linux/backlight.h:12,
                  from drivers/gpu/drm/panel/panel-synaptics-tddi.c:8:
include/linux/compiler.h:201:82: error: expression in static assertion is not 
an integer
   201 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg, ...) ((int)sizeof(struct 
{_Static_assert(!(e), msg);}))
       |                                                                        
          ^
include/linux/compiler.h:206:33: note: in expansion of macro 
'__BUILD_BUG_ON_ZERO_MSG'
   206 | #define __must_be_array(a)      
__BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
    11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + 
__must_be_array(arr))
       |                                                           
^~~~~~~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c:72:37: note: in expansion of macro 
'ARRAY_SIZE'
    72 |         ret = regulator_bulk_enable(ARRAY_SIZE(tddi_supplies), 
ctx->supplies);
       |                                     ^~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c: In function 'tddi_unprepare':
drivers/gpu/drm/panel/panel-synaptics-tddi.c:101:9: error: implicit declaration 
of function 'regulator_bulk_disable' [-Wimplicit-function-declaration]
   101 |         regulator_bulk_disable(ARRAY_SIZE(tddi_supplies), 
ctx->supplies);
       |         ^~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:201:82: error: expression in static assertion is not 
an integer
   201 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg, ...) ((int)sizeof(struct 
{_Static_assert(!(e), msg);}))
       |                                                                        
          ^
include/linux/compiler.h:206:33: note: in expansion of macro 
'__BUILD_BUG_ON_ZERO_MSG'
   206 | #define __must_be_array(a)      
__BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
    11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + 
__must_be_array(arr))
       |                                                           
^~~~~~~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c:101:32: note: in expansion of 
macro 'ARRAY_SIZE'
   101 |         regulator_bulk_disable(ARRAY_SIZE(tddi_supplies), 
ctx->supplies);
       |                                ^~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c: In function 'tddi_probe':
drivers/gpu/drm/panel/panel-synaptics-tddi.c:183:15: error: implicit 
declaration of function 'devm_regulator_bulk_get_const' 
[-Wimplicit-function-declaration]
   183 |         ret = devm_regulator_bulk_get_const(dev, 
ARRAY_SIZE(tddi_supplies),
       |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:201:82: error: expression in static assertion is not 
an integer
   201 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg, ...) ((int)sizeof(struct 
{_Static_assert(!(e), msg);}))
       |                                                                        
          ^
include/linux/compiler.h:206:33: note: in expansion of macro 
'__BUILD_BUG_ON_ZERO_MSG'
   206 | #define __must_be_array(a)      
__BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
    11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + 
__must_be_array(arr))
       |                                                           
^~~~~~~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c:183:50: note: in expansion of 
macro 'ARRAY_SIZE'
   183 |         ret = devm_regulator_bulk_get_const(dev, 
ARRAY_SIZE(tddi_supplies),
       |                                                  ^~~~~~~~~~
drivers/gpu/drm/panel/panel-synaptics-tddi.c: At top level:
drivers/gpu/drm/panel/panel-synaptics-tddi.c:41:41: error: 'tddi_supplies' 
defined but not used [-Werror=unused-variable]
    41 | static const struct regulator_bulk_data tddi_supplies[] = {
       |                                         ^~~~~~~~~~~~~
cc1: all warnings being treated as errors

Caused by commit

   243ce64b2b37 ("backlight: Do not include <linux/fb.h> in header file")

interacting with commit

   3eae82503f4f ("drm: panel: add support for Synaptics TDDI series DSI panels")

from the drm-misc tree.

I have applied the following merge fix patch.  It (or something linke it)
should be applied to the drm-misc tree.

From: Stephen Rothwell <[email protected]>
Date: Thu, 30 Oct 2025 14:57:03 +1100
Subject: [PATCH] fix up for "backlight: Do not include <linux/fb.h> in header 
file"

interacting with commit

   3eae82503f4f ("drm: panel: add support for Synaptics TDDI series DSI panels")

from the drm-misc tree.

Signed-off-by: Stephen Rothwell <[email protected]>

Acked-by: Thomas Zimmermann <[email protected]>

I think we can take your patch into drm-misc. Thanks for fixing this.

Best regards
Thomas

---
  drivers/gpu/drm/panel/panel-synaptics-tddi.c | 1 +
  1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/panel/panel-synaptics-tddi.c 
b/drivers/gpu/drm/panel/panel-synaptics-tddi.c
index a4b3cbdebb6c..0aea1854710e 100644
--- a/drivers/gpu/drm/panel/panel-synaptics-tddi.c
+++ b/drivers/gpu/drm/panel/panel-synaptics-tddi.c
@@ -9,6 +9,7 @@
  #include <linux/gpio/consumer.h>
  #include <linux/module.h>
  #include <linux/of.h>
+#include <linux/regulator/consumer.h>
#include <video/mipi_display.h>

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)


Reply via email to