[PATCH 3/3] drm/tiny: add support for tft displays based on ilitek,ili9488
kernel test robot
lkp at intel.com
Sat Jun 13 16:07:28 UTC 2020
Hi Kamlesh,
I love your patch! Yet something to improve:
[auto build test ERROR on robh/for-next]
[also build test ERROR on drm-intel/for-linux-next linus/master v5.7 next-20200613]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Kamlesh-Gurudasani/Support-for-tft-displays-based-on-ilitek-ili9488/20200613-221019
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/gpu/drm/tiny/ili9488.c:322:2: error: 'DRM_GEM_CMA_DRIVER_OPS_VMAP' undeclared here (not in a function)
322 | DRM_GEM_CMA_DRIVER_OPS_VMAP,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/tiny/ili9488.c: In function 'ili9488_probe':
>> drivers/gpu/drm/tiny/ili9488.c:354:11: error: implicit declaration of function 'devm_drm_dev_alloc'; did you mean 'drm_dev_alloc'? [-Werror=implicit-function-declaration]
354 | dbidev = devm_drm_dev_alloc(dev, &ili9488_driver,
| ^~~~~~~~~~~~~~~~~~
| drm_dev_alloc
>> drivers/gpu/drm/tiny/ili9488.c:355:9: error: expected expression before 'struct'
355 | struct mipi_dbi_dev, drm);
| ^~~~~~
cc1: some warnings being treated as errors
vim +/DRM_GEM_CMA_DRIVER_OPS_VMAP +322 drivers/gpu/drm/tiny/ili9488.c
318
319 static struct drm_driver ili9488_driver = {
320 .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC,
321 .fops = &ili9488_fops,
> 322 DRM_GEM_CMA_DRIVER_OPS_VMAP,
323 .debugfs_init = mipi_dbi_debugfs_init,
324 .name = "ili9488",
325 .desc = "Ilitek ILI9488",
326 .date = "20200607",
327 .major = 1,
328 .minor = 0,
329 };
330
331 static const struct of_device_id ili9488_of_match[] = {
332 { .compatible = "eastrising,er-tft035-6" },
333 { }
334 };
335 MODULE_DEVICE_TABLE(of, ili9488_of_match);
336
337 static const struct spi_device_id ili9488_id[] = {
338 { "er-tft035-6", 0 },
339 { }
340 };
341 MODULE_DEVICE_TABLE(spi, ili9488_id);
342
343 static int ili9488_probe(struct spi_device *spi)
344 {
345 struct device *dev = &spi->dev;
346 struct mipi_dbi_dev *dbidev;
347 struct drm_device *drm;
348 struct mipi_dbi *dbi;
349 struct gpio_desc *dc;
350 u32 rotation = 0;
351 size_t bufsize;
352 int ret;
353
> 354 dbidev = devm_drm_dev_alloc(dev, &ili9488_driver,
> 355 struct mipi_dbi_dev, drm);
356 if (IS_ERR(dbidev))
357 return PTR_ERR(dbidev);
358
359 dbi = &dbidev->dbi;
360 drm = &dbidev->drm;
361
362 ret = devm_drm_dev_init(dev, drm, &ili9488_driver);
363 if (ret) {
364 kfree(dbidev);
365 return ret;
366 }
367
368 drm_mode_config_init(drm);
369
370 bufsize = ili9488_mode.vdisplay * ili9488_mode.hdisplay * 3;
371
372 dbi->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
373 if (IS_ERR(dbi->reset)) {
374 DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
375 return PTR_ERR(dbi->reset);
376 }
377
378 dc = devm_gpiod_get(dev, "dc", GPIOD_OUT_LOW);
379 if (IS_ERR(dc)) {
380 DRM_DEV_ERROR(dev, "Failed to get gpio 'dc'\n");
381 return PTR_ERR(dc);
382 }
383
384 dbidev->backlight = devm_of_find_backlight(dev);
385 if (IS_ERR(dbidev->backlight))
386 return PTR_ERR(dbidev->backlight);
387
388 device_property_read_u32(dev, "rotation", &rotation);
389
390 ret = mipi_dbi_spi_init(spi, dbi, dc);
391 if (ret)
392 return ret;
393
394 dbidev->drm.mode_config.preferred_depth = 16;
395
396 ret = mipi_dbi_dev_init_with_formats(dbidev, &ili9488_pipe_funcs,
397 ili9488_formats,
398 ARRAY_SIZE(ili9488_formats),
399 &ili9488_mode, rotation, bufsize);
400 if (ret)
401 return ret;
402
403 drm_mode_config_reset(drm);
404
405 ret = drm_dev_register(drm, 0);
406 if (ret)
407 return ret;
408
409 spi_set_drvdata(spi, drm);
410
411 drm_fbdev_generic_setup(drm, 0);
412
413 return 0;
414 }
415
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 61403 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20200614/8133072d/attachment-0001.gz>
More information about the dri-devel
mailing list