public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>, linux-media@vger.kernel.org
Cc: kbuild-all@lists.01.org,
	"Niklas Söderlund" <niklas.soderlund@ragnatech.se>,
	"Kieran Bingham" <kieran.bingham+renesas@ideasonboard.com>,
	"Andrey Konovalov" <andrey.konovalov@linaro.org>
Subject: Re: [PATCH 3/6] v4l: async: Rename async nf functions, clean up long lines
Date: Wed, 23 Jun 2021 03:02:40 +0800	[thread overview]
Message-ID: <202106230232.x4yspeOq-lkp@intel.com> (raw)
In-Reply-To: <20210622112200.13914-4-sakari.ailus@linux.intel.com>

[-- Attachment #1: Type: text/plain, Size: 8394 bytes --]

Hi Sakari,

I love your patch! Yet something to improve:

[auto build test ERROR on linuxtv-media/master]
[cannot apply to rockchip/for-next tegra/for-next v5.13-rc7 next-20210622]
[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]

url:    https://github.com/0day-ci/linux/commits/Sakari-Ailus/V4L2-driver-documentation-v4l2-async-improvements/20210622-192925
base:   git://linuxtv.org/media_tree.git master
config: sparc-allyesconfig (attached as .config)
compiler: sparc64-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
        # https://github.com/0day-ci/linux/commit/922378435e59e00aef32ba7590991f0e9b24acac
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Sakari-Ailus/V4L2-driver-documentation-v4l2-async-improvements/20210622-192925
        git checkout 922378435e59e00aef32ba7590991f0e9b24acac
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=sparc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/media/platform/atmel/atmel-sama7g5-isc.c: In function 'microchip_xisc_probe':
>> drivers/media/platform/atmel/atmel-sama7g5-isc.c:511:9: error: implicit declaration of function 'v4l2_async_nf_add_fwnode_remote_subdev'; did you mean 'v4l2_async_nf_add_fwnode_remote'? [-Werror=implicit-function-declaration]
     511 |   asd = v4l2_async_nf_add_fwnode_remote_subdev(
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |         v4l2_async_nf_add_fwnode_remote
>> drivers/media/platform/atmel/atmel-sama7g5-isc.c:514:6: error: expected expression before 'struct'
     514 |      struct v4l2_async_subdev);
         |      ^~~~~~
   cc1: some warnings being treated as errors


vim +511 drivers/media/platform/atmel/atmel-sama7g5-isc.c

   373	
   374	static int microchip_xisc_probe(struct platform_device *pdev)
   375	{
   376		struct device *dev = &pdev->dev;
   377		struct isc_device *isc;
   378		struct resource *res;
   379		void __iomem *io_base;
   380		struct isc_subdev_entity *subdev_entity;
   381		int irq;
   382		int ret;
   383		u32 ver;
   384	
   385		isc = devm_kzalloc(dev, sizeof(*isc), GFP_KERNEL);
   386		if (!isc)
   387			return -ENOMEM;
   388	
   389		platform_set_drvdata(pdev, isc);
   390		isc->dev = dev;
   391	
   392		res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
   393		io_base = devm_ioremap_resource(dev, res);
   394		if (IS_ERR(io_base))
   395			return PTR_ERR(io_base);
   396	
   397		isc->regmap = devm_regmap_init_mmio(dev, io_base, &isc_regmap_config);
   398		if (IS_ERR(isc->regmap)) {
   399			ret = PTR_ERR(isc->regmap);
   400			dev_err(dev, "failed to init register map: %d\n", ret);
   401			return ret;
   402		}
   403	
   404		irq = platform_get_irq(pdev, 0);
   405		if (irq < 0)
   406			return irq;
   407	
   408		ret = devm_request_irq(dev, irq, isc_interrupt, 0,
   409				       "microchip-sama7g5-xisc", isc);
   410		if (ret < 0) {
   411			dev_err(dev, "can't register ISR for IRQ %u (ret=%i)\n",
   412				irq, ret);
   413			return ret;
   414		}
   415	
   416		isc->gamma_table = isc_sama7g5_gamma_table;
   417		isc->gamma_max = 0;
   418	
   419		isc->max_width = ISC_SAMA7G5_MAX_SUPPORT_WIDTH;
   420		isc->max_height = ISC_SAMA7G5_MAX_SUPPORT_HEIGHT;
   421	
   422		isc->config_dpc = isc_sama7g5_config_dpc;
   423		isc->config_csc = isc_sama7g5_config_csc;
   424		isc->config_cbc = isc_sama7g5_config_cbc;
   425		isc->config_cc = isc_sama7g5_config_cc;
   426		isc->config_gam = isc_sama7g5_config_gam;
   427		isc->config_rlp = isc_sama7g5_config_rlp;
   428		isc->config_ctrls = isc_sama7g5_config_ctrls;
   429	
   430		isc->adapt_pipeline = isc_sama7g5_adapt_pipeline;
   431	
   432		isc->offsets.csc = ISC_SAMA7G5_CSC_OFFSET;
   433		isc->offsets.cbc = ISC_SAMA7G5_CBC_OFFSET;
   434		isc->offsets.sub422 = ISC_SAMA7G5_SUB422_OFFSET;
   435		isc->offsets.sub420 = ISC_SAMA7G5_SUB420_OFFSET;
   436		isc->offsets.rlp = ISC_SAMA7G5_RLP_OFFSET;
   437		isc->offsets.his = ISC_SAMA7G5_HIS_OFFSET;
   438		isc->offsets.dma = ISC_SAMA7G5_DMA_OFFSET;
   439		isc->offsets.version = ISC_SAMA7G5_VERSION_OFFSET;
   440		isc->offsets.his_entry = ISC_SAMA7G5_HIS_ENTRY_OFFSET;
   441	
   442		isc->controller_formats = sama7g5_controller_formats;
   443		isc->controller_formats_size = ARRAY_SIZE(sama7g5_controller_formats);
   444		isc->formats_list = sama7g5_formats_list;
   445		isc->formats_list_size = ARRAY_SIZE(sama7g5_formats_list);
   446	
   447		/* sama7g5-isc RAM access port is full AXI4 - 32 bits per beat */
   448		isc->dcfg = ISC_DCFG_YMBSIZE_BEATS32 | ISC_DCFG_CMBSIZE_BEATS32;
   449	
   450		ret = isc_pipeline_init(isc);
   451		if (ret)
   452			return ret;
   453	
   454		isc->hclock = devm_clk_get(dev, "hclock");
   455		if (IS_ERR(isc->hclock)) {
   456			ret = PTR_ERR(isc->hclock);
   457			dev_err(dev, "failed to get hclock: %d\n", ret);
   458			return ret;
   459		}
   460	
   461		ret = clk_prepare_enable(isc->hclock);
   462		if (ret) {
   463			dev_err(dev, "failed to enable hclock: %d\n", ret);
   464			return ret;
   465		}
   466	
   467		ret = isc_clk_init(isc);
   468		if (ret) {
   469			dev_err(dev, "failed to init isc clock: %d\n", ret);
   470			goto unprepare_hclk;
   471		}
   472	
   473		isc->ispck = isc->isc_clks[ISC_ISPCK].clk;
   474	
   475		ret = clk_prepare_enable(isc->ispck);
   476		if (ret) {
   477			dev_err(dev, "failed to enable ispck: %d\n", ret);
   478			goto unprepare_hclk;
   479		}
   480	
   481		/* ispck should be greater or equal to hclock */
   482		ret = clk_set_rate(isc->ispck, clk_get_rate(isc->hclock));
   483		if (ret) {
   484			dev_err(dev, "failed to set ispck rate: %d\n", ret);
   485			goto unprepare_clk;
   486		}
   487	
   488		ret = v4l2_device_register(dev, &isc->v4l2_dev);
   489		if (ret) {
   490			dev_err(dev, "unable to register v4l2 device.\n");
   491			goto unprepare_clk;
   492		}
   493	
   494		ret = xisc_parse_dt(dev, isc);
   495		if (ret) {
   496			dev_err(dev, "fail to parse device tree\n");
   497			goto unregister_v4l2_device;
   498		}
   499	
   500		if (list_empty(&isc->subdev_entities)) {
   501			dev_err(dev, "no subdev found\n");
   502			ret = -ENODEV;
   503			goto unregister_v4l2_device;
   504		}
   505	
   506		list_for_each_entry(subdev_entity, &isc->subdev_entities, list) {
   507			struct v4l2_async_subdev *asd;
   508	
   509			v4l2_async_nf_init(&subdev_entity->notifier);
   510	
 > 511			asd = v4l2_async_nf_add_fwnode_remote_subdev(
   512						&subdev_entity->notifier,
   513						of_fwnode_handle(subdev_entity->epn),
 > 514						struct v4l2_async_subdev);
   515	
   516			of_node_put(subdev_entity->epn);
   517			subdev_entity->epn = NULL;
   518	
   519			if (IS_ERR(asd)) {
   520				ret = PTR_ERR(asd);
   521				goto cleanup_subdev;
   522			}
   523	
   524			subdev_entity->notifier.ops = &isc_async_ops;
   525	
   526			ret = v4l2_async_nf_register(&isc->v4l2_dev,
   527						     &subdev_entity->notifier);
   528			if (ret) {
   529				dev_err(dev, "fail to register async notifier\n");
   530				goto cleanup_subdev;
   531			}
   532	
   533			if (video_is_registered(&isc->video_dev))
   534				break;
   535		}
   536	
   537		pm_runtime_set_active(dev);
   538		pm_runtime_enable(dev);
   539		pm_request_idle(dev);
   540	
   541		regmap_read(isc->regmap, ISC_VERSION + isc->offsets.version, &ver);
   542		dev_info(dev, "Microchip XISC version %x\n", ver);
   543	
   544		return 0;
   545	
   546	cleanup_subdev:
   547		isc_subdev_cleanup(isc);
   548	
   549	unregister_v4l2_device:
   550		v4l2_device_unregister(&isc->v4l2_dev);
   551	
   552	unprepare_clk:
   553		clk_disable_unprepare(isc->ispck);
   554	unprepare_hclk:
   555		clk_disable_unprepare(isc->hclock);
   556	
   557		isc_clk_cleanup(isc);
   558	
   559		return ret;
   560	}
   561	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 69654 bytes --]

  reply	other threads:[~2021-06-22 19:03 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-22 11:21 [PATCH 0/6] V4L2 driver documentation, v4l2-async improvements Sakari Ailus
2021-06-22 11:21 ` [PATCH 1/6] Documentation: media: Improve camera sensor documentation Sakari Ailus
2021-06-23 15:11   ` Jacopo Mondi
2021-06-23 15:50     ` Sakari Ailus
2021-06-24  4:50       ` Andrey Konovalov
2021-06-24  8:11         ` Sakari Ailus
2021-06-22 11:21 ` [PATCH 2/6] Documentation: media: Fix v4l2-async kerneldoc syntax Sakari Ailus
2021-06-23 15:13   ` Jacopo Mondi
2021-06-22 11:21 ` [PATCH 3/6] v4l: async: Rename async nf functions, clean up long lines Sakari Ailus
2021-06-22 19:02   ` kernel test robot [this message]
2021-06-22 20:47   ` kernel test robot
2021-06-23  8:10   ` [PATCH v2 " Sakari Ailus
2021-06-22 11:21 ` [PATCH 4/6] media: v4l2-fwnode: Simplify v4l2_async_nf_parse_fwnode_endpoints() Sakari Ailus
2021-06-23 15:13   ` Jacopo Mondi
2021-06-22 11:21 ` [PATCH 5/6] media: rcar-vin: Remove explicit device availability check Sakari Ailus
2021-06-23 15:14   ` Jacopo Mondi
2021-06-22 11:22 ` [PATCH 6/6] Documentation: v4l: Fix V4L2_CID_PIXEL_RATE documentation Sakari Ailus
2021-06-23 15:15   ` Jacopo Mondi
2021-06-24  5:22   ` Andrey Konovalov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202106230232.x4yspeOq-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=andrey.konovalov@linaro.org \
    --cc=kbuild-all@lists.01.org \
    --cc=kieran.bingham+renesas@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=niklas.soderlund@ragnatech.se \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox