[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202508212351.neQpMO5p-lkp@intel.com>
Date: Thu, 21 Aug 2025 23:19:57 +0800
From: kernel test robot <lkp@...el.com>
To: Maxime Ripard <mripard@...nel.org>,
Jyri Sarha <jyri.sarha@...ux.intel.com>,
Tomi Valkeinen <tomi.valkeinen@...asonboard.com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>
Cc: oe-kbuild-all@...ts.linux.dev, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, Maxime Ripard <mripard@...nel.org>
Subject: Re: [PATCH v2 06/14] drm/tidss: dispc: Get rid of FLD_MOD
Hi Maxime,
kernel test robot noticed the following build errors:
[auto build test ERROR on fbb0210d25fde20027f86a6ca9eee75630b5ac2b]
url: https://github.com/intel-lab-lkp/linux/commits/Maxime-Ripard/drm-tidss-dispc-Remove-unused-OVR_REG_GET/20250820-220945
base: fbb0210d25fde20027f86a6ca9eee75630b5ac2b
patch link: https://lore.kernel.org/r/20250820-drm-tidss-field-api-v2-6-43cab671c648%40kernel.org
patch subject: [PATCH v2 06/14] drm/tidss: dispc: Get rid of FLD_MOD
config: xtensa-randconfig-001-20250821 (https://download.01.org/0day-ci/archive/20250821/202508212351.neQpMO5p-lkp@intel.com/config)
compiler: xtensa-linux-gcc (GCC) 11.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250821/202508212351.neQpMO5p-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508212351.neQpMO5p-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/gpu/drm/tidss/tidss_dispc.c: In function 'dispc_set_num_datalines':
>> drivers/gpu/drm/tidss/tidss_dispc.c:649:17: error: implicit declaration of function 'FIELD_MODIFY' [-Werror=implicit-function-declaration]
649 | FIELD_MODIFY(GENMASK((start), (end)), &_reg, (val)); \
| ^~~~~~~~~~~~
drivers/gpu/drm/tidss/tidss_dispc.c:1134:9: note: in expansion of macro 'VP_REG_FLD_MOD'
1134 | VP_REG_FLD_MOD(dispc, hw_videoport, DISPC_VP_CONTROL, v, 10, 8);
| ^~~~~~~~~~~~~~
drivers/gpu/drm/tidss/tidss_dispc.c: In function 'dispc_vp_enable':
drivers/gpu/drm/tidss/tidss_dispc.c:1219:24: error: implicit declaration of function 'FIELD_PREP' [-Werror=implicit-function-declaration]
1219 | FIELD_PREP(GENMASK(7, 0), hsw - 1) |
| ^~~~~~~~~~
drivers/gpu/drm/tidss/tidss_dispc.c: In function 'dispc_vp_go_busy':
drivers/gpu/drm/tidss/tidss_dispc.c:640:15: error: implicit declaration of function 'FIELD_GET' [-Werror=implicit-function-declaration]
640 | ((u32)FIELD_GET(GENMASK((start), (end)), \
| ^~~~~~~~~
drivers/gpu/drm/tidss/tidss_dispc.c:1280:16: note: in expansion of macro 'VP_REG_GET'
1280 | return VP_REG_GET(dispc, hw_videoport, DISPC_VP_CONTROL, 5, 5);
| ^~~~~~~~~~
cc1: some warnings being treated as errors
vim +/FIELD_MODIFY +649 drivers/gpu/drm/tidss/tidss_dispc.c
606
607 /*
608 * TRM gives bitfields as start:end, where start is the higher bit
609 * number. For example 7:0
610 */
611
612 #define REG_GET(dispc, idx, start, end) \
613 ((u32)FIELD_GET(GENMASK((start), (end)), \
614 dispc_read((dispc), (idx))))
615
616 #define REG_FLD_MOD(dispc, idx, val, start, end) \
617 ({ \
618 struct dispc_device *_dispc = (dispc); \
619 u32 _idx = (idx); \
620 u32 _reg = dispc_read(_dispc, _idx); \
621 FIELD_MODIFY(GENMASK((start), (end)), &_reg, (val)); \
622 dispc_write(_dispc, _idx, _reg); \
623 })
624
625 #define VID_REG_GET(dispc, hw_plane, idx, start, end) \
626 ((u32)FIELD_GET(GENMASK((start), (end)), \
627 dispc_vid_read((dispc), (hw_plane), (idx))))
628
629 #define VID_REG_FLD_MOD(dispc, hw_plane, idx, val, start, end) \
630 ({ \
631 struct dispc_device *_dispc = (dispc); \
632 u32 _hw_plane = (hw_plane); \
633 u32 _idx = (idx); \
634 u32 _reg = dispc_vid_read(_dispc, _hw_plane, _idx); \
635 FIELD_MODIFY(GENMASK((start), (end)), &_reg, (val)); \
636 dispc_vid_write(_dispc, _hw_plane, _idx, _reg); \
637 })
638
639 #define VP_REG_GET(dispc, vp, idx, start, end) \
640 ((u32)FIELD_GET(GENMASK((start), (end)), \
641 dispc_vp_read((dispc), (vp), (idx))))
642
643 #define VP_REG_FLD_MOD(dispc, vp, idx, val, start, end) \
644 ({ \
645 struct dispc_device *_dispc = (dispc); \
646 u32 _vp = (vp); \
647 u32 _idx = (idx); \
648 u32 _reg = dispc_vp_read(_dispc, _vp, _idx); \
> 649 FIELD_MODIFY(GENMASK((start), (end)), &_reg, (val)); \
650 dispc_vp_write(_dispc, _vp, _idx, _reg); \
651 })
652
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists