Re: [PATCH] gpu: drm/panel: Optimize the workflow of s6d7aa0_lock

From: kernel test robot
Date: Thu Jun 01 2023 - 10:48:57 EST


Hi Lu,

kernel test robot noticed the following build errors:

[auto build test ERROR on drm-misc/drm-misc-next]
[also build test ERROR on next-20230601]
[cannot apply to linus/master v6.4-rc4]
[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/Lu-Hongfei/gpu-drm-panel-Optimize-the-workflow-of-s6d7aa0_lock/20230531-190848
base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link: https://lore.kernel.org/r/20230531110717.36896-1-luhongfei%40vivo.com
patch subject: [PATCH] gpu: drm/panel: Optimize the workflow of s6d7aa0_lock
config: powerpc-allmodconfig (https://download.01.org/0day-ci/archive/20230601/202306012249.Sm2dlQLk-lkp@xxxxxxxxx/config)
compiler: powerpc-linux-gcc (GCC) 12.3.0
reproduce (this is a W=1 build):
mkdir -p ~/bin
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/e1ade7d20fb0efb9aa0b332d5ac5da2863f8e68e
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Lu-Hongfei/gpu-drm-panel-Optimize-the-workflow-of-s6d7aa0_lock/20230531-190848
git checkout e1ade7d20fb0efb9aa0b332d5ac5da2863f8e68e
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=powerpc olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash drivers/gpu/drm/panel/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202306012249.Sm2dlQLk-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

In file included from drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:17:
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c: In function 's6d7aa0_lock':
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:72:23: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
72 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD1, 0xa5, 0xa5);
| ^~~~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:75:23: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
75 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD2, 0xa5, 0xa5);
| ^~~~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:79:31: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
79 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD3, 0x5a, 0x5a);
| ^~~~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:84:23: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
84 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD1, 0x5a, 0x5a);
| ^~~~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:87:23: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
87 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD2, 0x5a, 0x5a);
| ^~~~~~~~~~~~~~~~~~~~~~
>> include/drm/drm_mipi_dsi.h:326:9: error: expected expression before 'do'
326 | do { \
| ^~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:91:31: note: in expansion of macro 'mipi_dsi_dcs_write_seq'
91 | ret = mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD3, 0xa5, 0xa5);
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c:68:33: warning: unused variable 'dsi' [-Wunused-variable]
68 | struct mipi_dsi_device *dsi = ctx->dsi;
| ^~~


vim +/do +326 include/drm/drm_mipi_dsi.h

3d9a8fcf1c6a90 Thierry Reding 2014-08-05 268
960dd616f61c84 Thierry Reding 2014-07-21 269 ssize_t mipi_dsi_dcs_write_buffer(struct mipi_dsi_device *dsi,
960dd616f61c84 Thierry Reding 2014-07-21 270 const void *data, size_t len);
960dd616f61c84 Thierry Reding 2014-07-21 271 ssize_t mipi_dsi_dcs_write(struct mipi_dsi_device *dsi, u8 cmd,
960dd616f61c84 Thierry Reding 2014-07-21 272 const void *data, size_t len);
3c523d7d38a17b Thierry Reding 2014-07-21 273 ssize_t mipi_dsi_dcs_read(struct mipi_dsi_device *dsi, u8 cmd, void *data,
3c523d7d38a17b Thierry Reding 2014-07-21 274 size_t len);
083d573fd013c9 Thierry Reding 2014-08-05 275 int mipi_dsi_dcs_nop(struct mipi_dsi_device *dsi);
2f16b89737e24b Thierry Reding 2014-08-05 276 int mipi_dsi_dcs_soft_reset(struct mipi_dsi_device *dsi);
3d9a8fcf1c6a90 Thierry Reding 2014-08-05 277 int mipi_dsi_dcs_get_power_mode(struct mipi_dsi_device *dsi, u8 *mode);
5cc0af16fc08cf Thierry Reding 2014-08-05 278 int mipi_dsi_dcs_get_pixel_format(struct mipi_dsi_device *dsi, u8 *format);
42fe1e755d08b8 YoungJun Cho 2014-08-05 279 int mipi_dsi_dcs_enter_sleep_mode(struct mipi_dsi_device *dsi);
42fe1e755d08b8 YoungJun Cho 2014-08-05 280 int mipi_dsi_dcs_exit_sleep_mode(struct mipi_dsi_device *dsi);
42fe1e755d08b8 YoungJun Cho 2014-08-05 281 int mipi_dsi_dcs_set_display_off(struct mipi_dsi_device *dsi);
42fe1e755d08b8 YoungJun Cho 2014-08-05 282 int mipi_dsi_dcs_set_display_on(struct mipi_dsi_device *dsi);
3b46d4a0def157 Thierry Reding 2014-08-05 283 int mipi_dsi_dcs_set_column_address(struct mipi_dsi_device *dsi, u16 start,
3b46d4a0def157 Thierry Reding 2014-08-05 284 u16 end);
3b46d4a0def157 Thierry Reding 2014-08-05 285 int mipi_dsi_dcs_set_page_address(struct mipi_dsi_device *dsi, u16 start,
3b46d4a0def157 Thierry Reding 2014-08-05 286 u16 end);
42fe1e755d08b8 YoungJun Cho 2014-08-05 287 int mipi_dsi_dcs_set_tear_off(struct mipi_dsi_device *dsi);
42fe1e755d08b8 YoungJun Cho 2014-08-05 288 int mipi_dsi_dcs_set_tear_on(struct mipi_dsi_device *dsi,
42fe1e755d08b8 YoungJun Cho 2014-08-05 289 enum mipi_dsi_dcs_tear_mode mode);
5cc0af16fc08cf Thierry Reding 2014-08-05 290 int mipi_dsi_dcs_set_pixel_format(struct mipi_dsi_device *dsi, u8 format);
bbdcf516a6187d Thierry Reding 2016-08-24 291 int mipi_dsi_dcs_set_tear_scanline(struct mipi_dsi_device *dsi, u16 scanline);
1a9d759331b832 Vinay Simha BN 2016-07-31 292 int mipi_dsi_dcs_set_display_brightness(struct mipi_dsi_device *dsi,
1a9d759331b832 Vinay Simha BN 2016-07-31 293 u16 brightness);
1a9d759331b832 Vinay Simha BN 2016-07-31 294 int mipi_dsi_dcs_get_display_brightness(struct mipi_dsi_device *dsi,
1a9d759331b832 Vinay Simha BN 2016-07-31 295 u16 *brightness);
c9d27c6be518b4 Daniel Mentz 2023-01-16 296 int mipi_dsi_dcs_set_display_brightness_large(struct mipi_dsi_device *dsi,
c9d27c6be518b4 Daniel Mentz 2023-01-16 297 u16 brightness);
c9d27c6be518b4 Daniel Mentz 2023-01-16 298 int mipi_dsi_dcs_get_display_brightness_large(struct mipi_dsi_device *dsi,
c9d27c6be518b4 Daniel Mentz 2023-01-16 299 u16 *brightness);
068a0023396983 Andrzej Hajda 2013-12-04 300
a9015ce593204f Javier Martinez Canillas 2023-01-02 301 /**
a9015ce593204f Javier Martinez Canillas 2023-01-02 302 * mipi_dsi_generic_write_seq - transmit data using a generic write packet
a9015ce593204f Javier Martinez Canillas 2023-01-02 303 * @dsi: DSI peripheral device
a9015ce593204f Javier Martinez Canillas 2023-01-02 304 * @seq: buffer containing the payload
a9015ce593204f Javier Martinez Canillas 2023-01-02 305 */
a9015ce593204f Javier Martinez Canillas 2023-01-02 306 #define mipi_dsi_generic_write_seq(dsi, seq...) \
a9015ce593204f Javier Martinez Canillas 2023-01-02 307 do { \
a9015ce593204f Javier Martinez Canillas 2023-01-02 308 static const u8 d[] = { seq }; \
a9015ce593204f Javier Martinez Canillas 2023-01-02 309 struct device *dev = &dsi->dev; \
a9015ce593204f Javier Martinez Canillas 2023-01-02 310 int ret; \
a9015ce593204f Javier Martinez Canillas 2023-01-02 311 ret = mipi_dsi_generic_write(dsi, d, ARRAY_SIZE(d)); \
a9015ce593204f Javier Martinez Canillas 2023-01-02 312 if (ret < 0) { \
a9015ce593204f Javier Martinez Canillas 2023-01-02 313 dev_err_ratelimited(dev, "transmit data failed: %d\n", \
a9015ce593204f Javier Martinez Canillas 2023-01-02 314 ret); \
a9015ce593204f Javier Martinez Canillas 2023-01-02 315 return ret; \
a9015ce593204f Javier Martinez Canillas 2023-01-02 316 } \
a9015ce593204f Javier Martinez Canillas 2023-01-02 317 } while (0)
a9015ce593204f Javier Martinez Canillas 2023-01-02 318
2a9e9daf75231c Joel Selvaraj 2022-06-01 319 /**
2a9e9daf75231c Joel Selvaraj 2022-06-01 320 * mipi_dsi_dcs_write_seq - transmit a DCS command with payload
2a9e9daf75231c Joel Selvaraj 2022-06-01 321 * @dsi: DSI peripheral device
2a9e9daf75231c Joel Selvaraj 2022-06-01 322 * @cmd: Command
2a9e9daf75231c Joel Selvaraj 2022-06-01 323 * @seq: buffer containing data to be transmitted
2a9e9daf75231c Joel Selvaraj 2022-06-01 324 */
51d3c0e7dc3cf1 Javier Martinez Canillas 2023-01-02 325 #define mipi_dsi_dcs_write_seq(dsi, cmd, seq...) \
51d3c0e7dc3cf1 Javier Martinez Canillas 2023-01-02 @326 do { \
2a9e9daf75231c Joel Selvaraj 2022-06-01 327 static const u8 d[] = { cmd, seq }; \
2a9e9daf75231c Joel Selvaraj 2022-06-01 328 struct device *dev = &dsi->dev; \
2a9e9daf75231c Joel Selvaraj 2022-06-01 329 int ret; \
2a9e9daf75231c Joel Selvaraj 2022-06-01 330 ret = mipi_dsi_dcs_write_buffer(dsi, d, ARRAY_SIZE(d)); \
2a9e9daf75231c Joel Selvaraj 2022-06-01 331 if (ret < 0) { \
51d3c0e7dc3cf1 Javier Martinez Canillas 2023-01-02 332 dev_err_ratelimited( \
51d3c0e7dc3cf1 Javier Martinez Canillas 2023-01-02 333 dev, "sending command %#02x failed: %d\n", \
51d3c0e7dc3cf1 Javier Martinez Canillas 2023-01-02 334 cmd, ret); \
2a9e9daf75231c Joel Selvaraj 2022-06-01 335 return ret; \
2a9e9daf75231c Joel Selvaraj 2022-06-01 336 } \
2a9e9daf75231c Joel Selvaraj 2022-06-01 337 } while (0)
2a9e9daf75231c Joel Selvaraj 2022-06-01 338

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki