[PATCH 2/7] fbdev: Do not include <linux/backlight.h> in header
kernel test robot
lkp at intel.com
Mon Feb 12 19:56:06 UTC 2024
Hi Thomas,
kernel test robot noticed the following build errors:
[auto build test ERROR on drm-misc/drm-misc-next]
[also build test ERROR on linus/master v6.8-rc4 next-20240212]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Thomas-Zimmermann/drm-nouveau-Include-linux-backlight-h/20240212-181930
base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link: https://lore.kernel.org/r/20240212101712.23675-3-tzimmermann%40suse.de
patch subject: [PATCH 2/7] fbdev: Do not include <linux/backlight.h> in header
config: riscv-allmodconfig (https://download.01.org/0day-ci/archive/20240213/202402130346.2iGNwgDE-lkp@intel.com/config)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project c08b90c50bcac9f3f563c79491c8dbcbe7c3b574)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240213/202402130346.2iGNwgDE-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202402130346.2iGNwgDE-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/staging/fbtft/fb_ssd1351.c:192:26: error: call to undeclared function 'bl_get_data'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
192 | struct fbtft_par *par = bl_get_data(bd);
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:192:20: error: incompatible integer to pointer conversion initializing 'struct fbtft_par *' with an expression of type 'int' [-Wint-conversion]
192 | struct fbtft_par *par = bl_get_data(bd);
| ^ ~~~~~~~~~~~~~~~
>> drivers/staging/fbtft/fb_ssd1351.c:197:21: error: incomplete definition of type 'struct backlight_device'
197 | __func__, bd->props.power, bd->props.fb_blank);
| ~~^
drivers/staging/fbtft/fbtft.h:433:43: note: expanded from macro 'fbtft_par_dbg'
433 | dev_info((par)->info->device, format, ##arg); \
| ^~~
include/linux/dev_printk.h:150:67: note: expanded from macro 'dev_info'
150 | dev_printk_index_wrap(_dev_info, KERN_INFO, dev, dev_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
include/linux/dev_printk.h:110:23: note: expanded from macro 'dev_printk_index_wrap'
110 | _p_func(dev, fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/fb.h:20:8: note: forward declaration of 'struct backlight_device'
20 | struct backlight_device;
| ^
drivers/staging/fbtft/fb_ssd1351.c:197:38: error: incomplete definition of type 'struct backlight_device'
197 | __func__, bd->props.power, bd->props.fb_blank);
| ~~^
drivers/staging/fbtft/fbtft.h:433:43: note: expanded from macro 'fbtft_par_dbg'
433 | dev_info((par)->info->device, format, ##arg); \
| ^~~
include/linux/dev_printk.h:150:67: note: expanded from macro 'dev_info'
150 | dev_printk_index_wrap(_dev_info, KERN_INFO, dev, dev_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
include/linux/dev_printk.h:110:23: note: expanded from macro 'dev_printk_index_wrap'
110 | _p_func(dev, fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/fb.h:20:8: note: forward declaration of 'struct backlight_device'
20 | struct backlight_device;
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:199:8: error: call to undeclared function 'backlight_is_blank'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
199 | on = !backlight_is_blank(bd);
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:206:35: error: variable has incomplete type 'const struct backlight_ops'
206 | static const struct backlight_ops bl_ops = {
| ^
drivers/staging/fbtft/fb_ssd1351.c:206:21: note: forward declaration of 'struct backlight_ops'
206 | static const struct backlight_ops bl_ops = {
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:213:30: error: variable has incomplete type 'struct backlight_properties'
213 | struct backlight_properties bl_props = { 0, };
| ^
drivers/staging/fbtft/fb_ssd1351.c:213:9: note: forward declaration of 'struct backlight_properties'
213 | struct backlight_properties bl_props = { 0, };
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:215:18: error: use of undeclared identifier 'BACKLIGHT_RAW'
215 | bl_props.type = BACKLIGHT_RAW;
| ^
>> drivers/staging/fbtft/fb_ssd1351.c:218:7: error: call to undeclared function 'backlight_device_register'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
218 | bd = backlight_device_register(dev_driver_string(par->info->device),
| ^
drivers/staging/fbtft/fb_ssd1351.c:218:7: note: did you mean '__root_device_register'?
include/linux/device.h:1143:16: note: '__root_device_register' declared here
1143 | struct device *__root_device_register(const char *name, struct module *owner);
| ^
9 errors generated.
vim +197 drivers/staging/fbtft/fb_ssd1351.c
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 189
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 190 static int update_onboard_backlight(struct backlight_device *bd)
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 191 {
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 @192 struct fbtft_par *par = bl_get_data(bd);
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 193 bool on;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 194
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 195 fbtft_par_dbg(DEBUG_BACKLIGHT, par,
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 196 "%s: power=%d, fb_blank=%d\n",
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 @197 __func__, bd->props.power, bd->props.fb_blank);
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 198
66d653c37228cb Stephen Kitt 2022-06-07 @199 on = !backlight_is_blank(bd);
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 200 /* Onboard backlight connected to GPIO0 on SSD1351, GPIO1 unused */
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 201 write_reg(par, 0xB5, on ? 0x03 : 0x02);
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 202
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 203 return 0;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 204 }
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 205
23801e3438f6ce Mike Rapoport 2015-09-03 @206 static const struct backlight_ops bl_ops = {
23801e3438f6ce Mike Rapoport 2015-09-03 207 .update_status = update_onboard_backlight,
23801e3438f6ce Mike Rapoport 2015-09-03 208 };
23801e3438f6ce Mike Rapoport 2015-09-03 209
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 210 static void register_onboard_backlight(struct fbtft_par *par)
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 211 {
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 212 struct backlight_device *bd;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 @213 struct backlight_properties bl_props = { 0, };
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 214
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 @215 bl_props.type = BACKLIGHT_RAW;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 216 bl_props.power = FB_BLANK_POWERDOWN;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 217
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 @218 bd = backlight_device_register(dev_driver_string(par->info->device),
333c7b940526be Leonardo Brás 2018-08-07 219 par->info->device, par, &bl_ops,
333c7b940526be Leonardo Brás 2018-08-07 220 &bl_props);
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 221 if (IS_ERR(bd)) {
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 222 dev_err(par->info->device,
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 223 "cannot register backlight device (%ld)\n",
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 224 PTR_ERR(bd));
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 225 return;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 226 }
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 227 par->info->bl_dev = bd;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 228
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 229 if (!par->fbtftops.unregister_backlight)
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 230 par->fbtftops.unregister_backlight = fbtft_unregister_backlight;
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 231 }
883daf0a5c35c8 Thomas Petazzoni 2014-12-31 232
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the dri-devel
mailing list