[tobetter:odroid-5.15.y 43/75] include/drm/drm_mipi_dbi.h:186:34: error: dereferencing pointer to incomplete type 'struct spi_device'
From: kernel test robot
Date: Wed Nov 03 2021 - 16:41:38 EST
tree: https://github.com/tobetter/linux odroid-5.15.y
head: 49f1393b8740941fa5176620b302f25ab5f786dc
commit: f159783fdfea289ae7f9b6b62b71bb24e89631c9 [43/75] ODROID-COMMON: gpu/drm: Add new Tiny DRM driver with Ili9488
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/tobetter/linux/commit/f159783fdfea289ae7f9b6b62b71bb24e89631c9
git remote add tobetter https://github.com/tobetter/linux
git fetch --no-tags tobetter odroid-5.15.y
git checkout f159783fdfea289ae7f9b6b62b71bb24e89631c9
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Note: the tobetter/odroid-5.15.y HEAD 49f1393b8740941fa5176620b302f25ab5f786dc builds fine.
It only hurts bisectability.
All errors (new ones prefixed by >>):
In file included from drivers/gpu/drm/tiny/ili9488_pio.c:30:
drivers/gpu/drm/tiny/ili9488_pio.c: In function 'ili9488_pipe_enable':
>> include/drm/drm_mipi_dbi.h:186:34: error: dereferencing pointer to incomplete type 'struct spi_device'
186 | struct device *dev = &(dbi)->spi->dev; \
| ^~
drivers/gpu/drm/tiny/ili9488_pio.c:132:2: note: in expansion of macro 'mipi_dbi_command'
132 | mipi_dbi_command(dbi, ILI9488_ITFCTR1, 0x00);
| ^~~~~~~~~~~~~~~~
vim +186 include/drm/drm_mipi_dbi.h
d23d4d4dac0119 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-19 160
13deee8111ed60 include/drm/tinydrm/mipi-dbi.h David Lechner 2017-11-19 161 u32 mipi_dbi_spi_cmd_max_speed(struct spi_device *spi, size_t len);
d23d4d4dac0119 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-19 162 int mipi_dbi_spi_transfer(struct spi_device *spi, u32 speed_hz,
d23d4d4dac0119 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-19 163 u8 bpw, const void *buf, size_t len);
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 164
36b5057216236a include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-22 165 int mipi_dbi_command_read(struct mipi_dbi *dbi, u8 cmd, u8 *val);
36b5057216236a include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-22 166 int mipi_dbi_command_buf(struct mipi_dbi *dbi, u8 cmd, u8 *data, size_t len);
f019190b7d2708 include/drm/drm_mipi_dbi.h Geert Uytterhoeven 2020-03-16 167 int mipi_dbi_command_stackbuf(struct mipi_dbi *dbi, u8 cmd, const u8 *data,
f019190b7d2708 include/drm/drm_mipi_dbi.h Geert Uytterhoeven 2020-03-16 168 size_t len);
13deee8111ed60 include/drm/tinydrm/mipi-dbi.h David Lechner 2017-11-19 169 int mipi_dbi_buf_copy(void *dst, struct drm_framebuffer *fb,
b051b3459bbae9 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-01-15 170 struct drm_rect *clip, bool swap);
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 171 /**
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 172 * mipi_dbi_command - MIPI DCS command with optional parameter(s)
36b5057216236a include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-22 173 * @dbi: MIPI DBI structure
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 174 * @cmd: Command
2b405ec0e1c4b4 include/drm/drm_mipi_dbi.h Jonathan Neuschäfer 2021-01-01 175 * @seq: Optional parameter(s)
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 176 *
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 177 * Send MIPI DCS command to the controller. Use mipi_dbi_command_read() for
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 178 * get/read.
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 179 *
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 180 * Returns:
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 181 * Zero on success, negative error code on failure.
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 182 */
36b5057216236a include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2019-07-22 183 #define mipi_dbi_command(dbi, cmd, seq...) \
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 184 ({ \
f019190b7d2708 include/drm/drm_mipi_dbi.h Geert Uytterhoeven 2020-03-16 185 const u8 d[] = { seq }; \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 @186 struct device *dev = &(dbi)->spi->dev; \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 187 int ret; \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 188 ret = mipi_dbi_command_stackbuf(dbi, cmd, d, ARRAY_SIZE(d)); \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 189 if (ret) \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 190 dev_err_ratelimited(dev, "error %d when sending command %#02x\n", ret, cmd); \
3f5aa5ac0b0f97 include/drm/drm_mipi_dbi.h Linus Walleij 2021-07-02 191 ret; \
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 192 })
02dd95fe316936 include/drm/tinydrm/mipi-dbi.h Noralf Trønnes 2017-01-22 193
:::::: The code at line 186 was first introduced by commit
:::::: 3f5aa5ac0b0f9704f0c60f5fbbbcdc8c043d6eb6 drm/dbi: Print errors for mipi_dbi_command()
:::::: TO: Linus Walleij <linus.walleij@xxxxxxxxxx>
:::::: CC: Linus Walleij <linus.walleij@xxxxxxxxxx>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip