* Re: [PATCH v2 11/19] media: renesas: vsp1: Add and use function to dump a pipeline to the log
[not found] <20240619001722.9749-12-laurent.pinchart+renesas@ideasonboard.com>
@ 2024-06-19 17:02 ` kernel test robot
2024-06-19 17:24 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-06-19 17:02 UTC (permalink / raw)
To: Laurent Pinchart; +Cc: llvm, oe-kbuild-all
Hi Laurent,
kernel test robot noticed the following build errors:
[auto build test ERROR on 91798162245991e26949ef62851719bb2177a9c2]
url: https://github.com/intel-lab-lkp/linux/commits/Laurent-Pinchart/media-renesas-vsp1-Drop-vsp1_entity_get_pad_format-wrapper/20240619-081928
base: 91798162245991e26949ef62851719bb2177a9c2
patch link: https://lore.kernel.org/r/20240619001722.9749-12-laurent.pinchart%2Brenesas%40ideasonboard.com
patch subject: [PATCH v2 11/19] media: renesas: vsp1: Add and use function to dump a pipeline to the log
config: arm-defconfig (https://download.01.org/0day-ci/archive/20240620/202406200005.K2Kdd3VC-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240620/202406200005.K2Kdd3VC-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/202406200005.K2Kdd3VC-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
>> drivers/media/platform/renesas/vsp1/vsp1_pipe.c:304:43: warning: omitting the parameter name in a function definition is a C2x extension [-Wc2x-extensions]
void __vsp1_pipeline_dump(struct _ddebug *, struct vsp1_pipeline *pipe,
^
1 warning generated.
--
>> drivers/media/platform/renesas/vsp1/vsp1_drm.c:736:2: error: expected expression
vsp1_pipeline_dump(pipe, "LIF setup");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:160:42: note: expanded from macro 'vsp1_pipeline_dump'
__vsp1_pipeline_dump(NULL, pipe, msg); \
^
>> drivers/media/platform/renesas/vsp1/vsp1_drm.c:736:39: error: expected ')'
vsp1_pipeline_dump(pipe, "LIF setup");
^
drivers/media/platform/renesas/vsp1/vsp1_drm.c:736:2: note: to match this '('
vsp1_pipeline_dump(pipe, "LIF setup");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:157:41: note: expanded from macro 'vsp1_pipeline_dump'
#define vsp1_pipeline_dump(pipe, msg) \
^
drivers/media/platform/renesas/vsp1/vsp1_drm.c:912:2: error: expected expression
vsp1_pipeline_dump(pipe, "atomic update");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:160:42: note: expanded from macro 'vsp1_pipeline_dump'
__vsp1_pipeline_dump(NULL, pipe, msg); \
^
drivers/media/platform/renesas/vsp1/vsp1_drm.c:912:43: error: expected ')'
vsp1_pipeline_dump(pipe, "atomic update");
^
drivers/media/platform/renesas/vsp1/vsp1_drm.c:912:2: note: to match this '('
vsp1_pipeline_dump(pipe, "atomic update");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:157:41: note: expanded from macro 'vsp1_pipeline_dump'
#define vsp1_pipeline_dump(pipe, msg) \
^
4 errors generated.
--
>> drivers/media/platform/renesas/vsp1/vsp1_video.c:533:2: error: expected expression
vsp1_pipeline_dump(pipe, "video");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:160:42: note: expanded from macro 'vsp1_pipeline_dump'
__vsp1_pipeline_dump(NULL, pipe, msg); \
^
>> drivers/media/platform/renesas/vsp1/vsp1_video.c:533:35: error: expected ')'
vsp1_pipeline_dump(pipe, "video");
^
drivers/media/platform/renesas/vsp1/vsp1_video.c:533:2: note: to match this '('
vsp1_pipeline_dump(pipe, "video");
^
drivers/media/platform/renesas/vsp1/vsp1_pipe.h:157:41: note: expanded from macro 'vsp1_pipeline_dump'
#define vsp1_pipeline_dump(pipe, msg) \
^
2 errors generated.
vim +736 drivers/media/platform/renesas/vsp1/vsp1_drm.c
622
623 /**
624 * vsp1_du_setup_lif - Setup the output part of the VSP pipeline
625 * @dev: the VSP device
626 * @pipe_index: the DRM pipeline index
627 * @cfg: the LIF configuration
628 *
629 * Configure the output part of VSP DRM pipeline for the given frame @cfg.width
630 * and @cfg.height. This sets up formats on the BRx source pad, the WPF sink and
631 * source pads, and the LIF sink pad.
632 *
633 * The @pipe_index argument selects which DRM pipeline to setup. The number of
634 * available pipelines depend on the VSP instance.
635 *
636 * As the media bus code on the blend unit source pad is conditioned by the
637 * configuration of its sink 0 pad, we also set up the formats on all blend unit
638 * sinks, even if the configuration will be overwritten later by
639 * vsp1_du_setup_rpf(). This ensures that the blend unit configuration is set to
640 * a well defined state.
641 *
642 * Return 0 on success or a negative error code on failure.
643 */
644 int vsp1_du_setup_lif(struct device *dev, unsigned int pipe_index,
645 const struct vsp1_du_lif_config *cfg)
646 {
647 struct vsp1_device *vsp1 = dev_get_drvdata(dev);
648 struct vsp1_drm_pipeline *drm_pipe;
649 struct vsp1_pipeline *pipe;
650 unsigned long flags;
651 unsigned int i;
652 int ret;
653
654 if (pipe_index >= vsp1->info->lif_count)
655 return -EINVAL;
656
657 drm_pipe = &vsp1->drm->pipe[pipe_index];
658 pipe = &drm_pipe->pipe;
659
660 if (!cfg) {
661 struct vsp1_brx *brx;
662
663 mutex_lock(&vsp1->drm->lock);
664
665 brx = to_brx(&pipe->brx->subdev);
666
667 /*
668 * NULL configuration means the CRTC is being disabled, stop
669 * the pipeline and turn the light off.
670 */
671 ret = vsp1_pipeline_stop(pipe);
672 if (ret == -ETIMEDOUT)
673 dev_err(vsp1->dev, "DRM pipeline stop timeout\n");
674
675 for (i = 0; i < ARRAY_SIZE(pipe->inputs); ++i) {
676 struct vsp1_rwpf *rpf = pipe->inputs[i];
677
678 if (!rpf)
679 continue;
680
681 /*
682 * Remove the RPF from the pipe and the list of BRx
683 * inputs.
684 */
685 WARN_ON(!rpf->entity.pipe);
686 rpf->entity.pipe = NULL;
687 list_del(&rpf->entity.list_pipe);
688 pipe->inputs[i] = NULL;
689
690 brx->inputs[rpf->brx_input].rpf = NULL;
691 }
692
693 drm_pipe->du_complete = NULL;
694 pipe->num_inputs = 0;
695
696 dev_dbg(vsp1->dev, "%s: pipe %u: releasing %s\n",
697 __func__, pipe->lif->index,
698 BRX_NAME(pipe->brx));
699
700 list_del(&pipe->brx->list_pipe);
701 pipe->brx->pipe = NULL;
702 pipe->brx = NULL;
703
704 mutex_unlock(&vsp1->drm->lock);
705
706 vsp1_dlm_reset(pipe->output->dlm);
707 vsp1_device_put(vsp1);
708
709 dev_dbg(vsp1->dev, "%s: pipeline disabled\n", __func__);
710
711 return 0;
712 }
713
714 /* Reset the underrun counter */
715 pipe->underrun_count = 0;
716
717 drm_pipe->width = cfg->width;
718 drm_pipe->height = cfg->height;
719 pipe->interlaced = cfg->interlaced;
720
721 dev_dbg(vsp1->dev, "%s: configuring LIF%u with format %ux%u%s\n",
722 __func__, pipe_index, cfg->width, cfg->height,
723 pipe->interlaced ? "i" : "");
724
725 mutex_lock(&vsp1->drm->lock);
726
727 /* Setup formats through the pipeline. */
728 ret = vsp1_du_pipeline_setup_inputs(vsp1, pipe);
729 if (ret < 0)
730 goto unlock;
731
732 ret = vsp1_du_pipeline_setup_output(vsp1, pipe);
733 if (ret < 0)
734 goto unlock;
735
> 736 vsp1_pipeline_dump(pipe, "LIF setup");
737
738 /* Enable the VSP1. */
739 ret = vsp1_device_get(vsp1);
740 if (ret < 0)
741 goto unlock;
742
743 /*
744 * Register a callback to allow us to notify the DRM driver of frame
745 * completion events.
746 */
747 drm_pipe->du_complete = cfg->callback;
748 drm_pipe->du_private = cfg->callback_data;
749
750 /* Disable the display interrupts. */
751 vsp1_write(vsp1, VI6_DISP_IRQ_STA(pipe_index), 0);
752 vsp1_write(vsp1, VI6_DISP_IRQ_ENB(pipe_index), 0);
753
754 /* Configure all entities in the pipeline. */
755 vsp1_du_pipeline_configure(pipe);
756
757 unlock:
758 mutex_unlock(&vsp1->drm->lock);
759
760 if (ret < 0)
761 return ret;
762
763 /* Start the pipeline. */
764 spin_lock_irqsave(&pipe->irqlock, flags);
765 vsp1_pipeline_run(pipe);
766 spin_unlock_irqrestore(&pipe->irqlock, flags);
767
768 dev_dbg(vsp1->dev, "%s: pipeline enabled\n", __func__);
769
770 return 0;
771 }
772 EXPORT_SYMBOL_GPL(vsp1_du_setup_lif);
773
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH v2 11/19] media: renesas: vsp1: Add and use function to dump a pipeline to the log
[not found] <20240619001722.9749-12-laurent.pinchart+renesas@ideasonboard.com>
2024-06-19 17:02 ` [PATCH v2 11/19] media: renesas: vsp1: Add and use function to dump a pipeline to the log kernel test robot
@ 2024-06-19 17:24 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-06-19 17:24 UTC (permalink / raw)
To: Laurent Pinchart; +Cc: llvm, oe-kbuild-all
Hi Laurent,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 91798162245991e26949ef62851719bb2177a9c2]
url: https://github.com/intel-lab-lkp/linux/commits/Laurent-Pinchart/media-renesas-vsp1-Drop-vsp1_entity_get_pad_format-wrapper/20240619-081928
base: 91798162245991e26949ef62851719bb2177a9c2
patch link: https://lore.kernel.org/r/20240619001722.9749-12-laurent.pinchart%2Brenesas%40ideasonboard.com
patch subject: [PATCH v2 11/19] media: renesas: vsp1: Add and use function to dump a pipeline to the log
config: arm-randconfig-001-20240619 (https://download.01.org/0day-ci/archive/20240620/202406200116.dABlTcGJ-lkp@intel.com/config)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 78ee473784e5ef6f0b19ce4cb111fb6e4d23c6b2)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240620/202406200116.dABlTcGJ-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/202406200116.dABlTcGJ-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/media/platform/renesas/vsp1/vsp1_pipe.c:16:
In file included from include/media/v4l2-subdev.h:15:
In file included from include/media/v4l2-common.h:105:
In file included from include/linux/i2c.h:19:
In file included from include/linux/regulator/consumer.h:35:
In file included from include/linux/suspend.h:5:
In file included from include/linux/swap.h:9:
In file included from include/linux/memcontrol.h:21:
In file included from include/linux/mm.h:2253:
include/linux/vmstat.h:514:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
514 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
>> drivers/media/platform/renesas/vsp1/vsp1_pipe.c:304:43: warning: omitting the parameter name in a function definition is a C23 extension [-Wc23-extensions]
304 | void __vsp1_pipeline_dump(struct _ddebug *, struct vsp1_pipeline *pipe,
| ^
2 warnings generated.
vim +304 drivers/media/platform/renesas/vsp1/vsp1_pipe.c
303
> 304 void __vsp1_pipeline_dump(struct _ddebug *, struct vsp1_pipeline *pipe,
305 const char *msg)
306 {
307 struct vsp1_device *vsp1 = pipe->output->entity.vsp1;
308 struct vsp1_entity *entity;
309 bool first = true;
310
311 printk(KERN_DEBUG "%s: %s: pipe: ", dev_name(vsp1->dev), msg);
312
313 list_for_each_entry(entity, &pipe->entities, list_pipe) {
314 const char *name;
315
316 name = strchrnul(entity->subdev.name, ' ');
317 name = name ? name + 1 : entity->subdev.name;
318
319 pr_cont("%s%s", first ? "" : ", ", name);
320 first = false;
321 }
322
323 pr_cont("\n");
324 }
325
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread