* Re: [PATCH 02/37] drm/vc4: Use of_device_get_match_data to set generation
[not found] <20241023-drm-vc4-2712-support-v1-2-1cc2d5594907@raspberrypi.com>
@ 2024-10-24 20:13 ` kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-10-24 20:13 UTC (permalink / raw)
To: Dave Stevenson, Maxime Ripard, Maíra Canal,
Raspberry Pi Kernel Maintenance, Maarten Lankhorst,
Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Broadcom internal kernel review list, Ray Jui, Scott Branden,
Michael Turquette, Stephen Boyd, Javier Martinez Canillas,
Catalin Marinas, Will Deacon
Cc: llvm, oe-kbuild-all, dri-devel, linux-kernel, devicetree,
linux-rpi-kernel, linux-arm-kernel, linux-clk, Dave Stevenson
Hi Dave,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 91e21479c81dd4e9e22a78d7446f92f6b96a7284]
url: https://github.com/intel-lab-lkp/linux/commits/Dave-Stevenson/drm-vc4-Limit-max_bpc-to-8-on-Pi0-3/20241024-005239
base: 91e21479c81dd4e9e22a78d7446f92f6b96a7284
patch link: https://lore.kernel.org/r/20241023-drm-vc4-2712-support-v1-2-1cc2d5594907%40raspberrypi.com
patch subject: [PATCH 02/37] drm/vc4: Use of_device_get_match_data to set generation
config: um-allmodconfig (https://download.01.org/0day-ci/archive/20241025/202410250459.OQAldqVP-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 5886454669c3c9026f7f27eab13509dd0241f2d6)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241025/202410250459.OQAldqVP-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410250459.OQAldqVP-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/gpu/drm/vc4/vc4_drv.c:27:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:8:
In file included from include/linux/mm.h:2213:
include/linux/vmstat.h:518:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
518 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
In file included from drivers/gpu/drm/vc4/vc4_drv.c:27:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/um/include/asm/io.h:24:
include/asm-generic/io.h:548:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
548 | val = __raw_readb(PCI_IOBASE + addr);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:561:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
561 | val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
| ~~~~~~~~~~ ^
include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu'
37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
| ^
In file included from drivers/gpu/drm/vc4/vc4_drv.c:27:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/um/include/asm/io.h:24:
include/asm-generic/io.h:574:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
574 | val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
| ~~~~~~~~~~ ^
include/uapi/linux/byteorder/little_endian.h:35:51: note: expanded from macro '__le32_to_cpu'
35 | #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
| ^
In file included from drivers/gpu/drm/vc4/vc4_drv.c:27:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/um/include/asm/io.h:24:
include/asm-generic/io.h:585:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
585 | __raw_writeb(value, PCI_IOBASE + addr);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:595:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
595 | __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:605:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
605 | __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:693:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
693 | readsb(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:701:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
701 | readsw(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:709:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
709 | readsl(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:718:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
718 | writesb(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:727:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
727 | writesw(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
include/asm-generic/io.h:736:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
736 | writesl(PCI_IOBASE + addr, buffer, count);
| ~~~~~~~~~~ ^
>> drivers/gpu/drm/vc4/vc4_drv.c:303:8: warning: cast to smaller integer type 'enum vc4_gen' from 'const void *' [-Wvoid-pointer-to-enum-cast]
303 | gen = (enum vc4_gen)of_device_get_match_data(dev);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14 warnings generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for GET_FREE_REGION
Depends on [n]: SPARSEMEM [=n]
Selected by [m]:
- RESOURCE_KUNIT_TEST [=m] && RUNTIME_TESTING_MENU [=y] && KUNIT [=m]
vim +303 drivers/gpu/drm/vc4/vc4_drv.c
288
289 static int vc4_drm_bind(struct device *dev)
290 {
291 struct platform_device *pdev = to_platform_device(dev);
292 const struct drm_driver *driver;
293 struct rpi_firmware *firmware = NULL;
294 struct drm_device *drm;
295 struct vc4_dev *vc4;
296 struct device_node *node;
297 struct drm_crtc *crtc;
298 enum vc4_gen gen;
299 int ret = 0;
300
301 dev->coherent_dma_mask = DMA_BIT_MASK(32);
302
> 303 gen = (enum vc4_gen)of_device_get_match_data(dev);
304
305 if (gen > VC4_GEN_4)
306 driver = &vc5_drm_driver;
307 else
308 driver = &vc4_drm_driver;
309
310 node = of_find_matching_node_and_match(NULL, vc4_dma_range_matches,
311 NULL);
312 if (node) {
313 ret = of_dma_configure(dev, node, true);
314 of_node_put(node);
315
316 if (ret)
317 return ret;
318 }
319
320 vc4 = devm_drm_dev_alloc(dev, driver, struct vc4_dev, base);
321 if (IS_ERR(vc4))
322 return PTR_ERR(vc4);
323 vc4->gen = gen;
324 vc4->dev = dev;
325
326 drm = &vc4->base;
327 platform_set_drvdata(pdev, drm);
328
329 if (gen == VC4_GEN_4) {
330 ret = drmm_mutex_init(drm, &vc4->bin_bo_lock);
331 if (ret)
332 goto err;
333
334 ret = vc4_bo_cache_init(drm);
335 if (ret)
336 goto err;
337 }
338
339 ret = drmm_mode_config_init(drm);
340 if (ret)
341 goto err;
342
343 if (gen == VC4_GEN_4) {
344 ret = vc4_gem_init(drm);
345 if (ret)
346 goto err;
347 }
348
349 node = of_find_compatible_node(NULL, NULL, "raspberrypi,bcm2835-firmware");
350 if (node) {
351 firmware = rpi_firmware_get(node);
352 of_node_put(node);
353
354 if (!firmware) {
355 ret = -EPROBE_DEFER;
356 goto err;
357 }
358 }
359
360 ret = aperture_remove_all_conflicting_devices(driver->name);
361 if (ret)
362 goto err;
363
364 if (firmware) {
365 ret = rpi_firmware_property(firmware,
366 RPI_FIRMWARE_NOTIFY_DISPLAY_DONE,
367 NULL, 0);
368 if (ret)
369 drm_warn(drm, "Couldn't stop firmware display driver: %d\n", ret);
370
371 rpi_firmware_put(firmware);
372 }
373
374 ret = component_bind_all(dev, drm);
375 if (ret)
376 goto err;
377
378 ret = devm_add_action_or_reset(dev, vc4_component_unbind_all, vc4);
379 if (ret)
380 goto err;
381
382 ret = vc4_plane_create_additional_planes(drm);
383 if (ret)
384 goto err;
385
386 ret = vc4_kms_load(drm);
387 if (ret < 0)
388 goto err;
389
390 drm_for_each_crtc(crtc, drm)
391 vc4_crtc_disable_at_boot(crtc);
392
393 ret = drm_dev_register(drm, 0);
394 if (ret < 0)
395 goto err;
396
397 drm_client_setup_with_fourcc(drm, DRM_FORMAT_RGB565);
398
399 return 0;
400
401 err:
402 platform_set_drvdata(pdev, NULL);
403 return ret;
404 }
405
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-10-24 20:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20241023-drm-vc4-2712-support-v1-2-1cc2d5594907@raspberrypi.com>
2024-10-24 20:13 ` [PATCH 02/37] drm/vc4: Use of_device_get_match_data to set generation kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox