From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: Re: [PATCH] media: atmel: atmel-isc: Fix PM disable depth imbalance in atmel_isc_probe
Date: Thu, 06 Jan 2022 02:52:01 +0800 [thread overview]
Message-ID: <202201060215.P1FTGS2p-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 17458 bytes --]
CC: kbuild-all(a)lists.01.org
In-Reply-To: <20220105111056.4662-1-linmq006@gmail.com>
References: <20220105111056.4662-1-linmq006@gmail.com>
TO: Miaoqian Lin <linmq006@gmail.com>
CC: linmq006(a)gmail.com
CC: Eugen Hristev <eugen.hristev@microchip.com>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: linux-media(a)vger.kernel.org
CC: Nicolas Ferre <nicolas.ferre@microchip.com>
CC: Alexandre Belloni <alexandre.belloni@bootlin.com>
CC: Ludovic Desroches <ludovic.desroches@microchip.com>
CC: Hans Verkuil <hverkuil@xs4all.nl>
CC: linux-arm-kernel(a)lists.infradead.org
CC: linux-kernel(a)vger.kernel.org
Hi Miaoqian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on media-tree/master]
[also build test WARNING on v5.16-rc8 next-20220105]
[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/Miaoqian-Lin/media-atmel-atmel-isc-Fix-PM-disable-depth-imbalance-in-atmel_isc_probe/20220105-191228
base: git://linuxtv.org/media_tree.git master
:::::: branch date: 8 hours ago
:::::: commit date: 8 hours ago
config: alpha-randconfig-s031-20220105 (https://download.01.org/0day-ci/archive/20220106/202201060215.P1FTGS2p-lkp(a)intel.com/config)
compiler: alpha-linux-gcc (GCC) 11.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/f116d8f81c642486900c9589a7c10d137d7eb0a2
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Miaoqian-Lin/media-atmel-atmel-isc-Fix-PM-disable-depth-imbalance-in-atmel_isc_probe/20220105-191228
git checkout f116d8f81c642486900c9589a7c10d137d7eb0a2
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=alpha SHELL=/bin/bash drivers/media/platform/atmel/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/media/platform/atmel/atmel-sama5d2-isc.c:562:1: sparse: sparse: unused label 'disable_pm_runtime'
vim +/disable_pm_runtime +562 drivers/media/platform/atmel/atmel-sama5d2-isc.c
0a0e265515db76 Eugen Hristev 2019-06-12 380
0a0e265515db76 Eugen Hristev 2019-06-12 381 static int atmel_isc_probe(struct platform_device *pdev)
0a0e265515db76 Eugen Hristev 2019-06-12 382 {
0a0e265515db76 Eugen Hristev 2019-06-12 383 struct device *dev = &pdev->dev;
0a0e265515db76 Eugen Hristev 2019-06-12 384 struct isc_device *isc;
0a0e265515db76 Eugen Hristev 2019-06-12 385 struct resource *res;
0a0e265515db76 Eugen Hristev 2019-06-12 386 void __iomem *io_base;
0a0e265515db76 Eugen Hristev 2019-06-12 387 struct isc_subdev_entity *subdev_entity;
0a0e265515db76 Eugen Hristev 2019-06-12 388 int irq;
0a0e265515db76 Eugen Hristev 2019-06-12 389 int ret;
d51470069eb169 Eugen Hristev 2021-04-13 390 u32 ver;
0a0e265515db76 Eugen Hristev 2019-06-12 391
0a0e265515db76 Eugen Hristev 2019-06-12 392 isc = devm_kzalloc(dev, sizeof(*isc), GFP_KERNEL);
0a0e265515db76 Eugen Hristev 2019-06-12 393 if (!isc)
0a0e265515db76 Eugen Hristev 2019-06-12 394 return -ENOMEM;
0a0e265515db76 Eugen Hristev 2019-06-12 395
0a0e265515db76 Eugen Hristev 2019-06-12 396 platform_set_drvdata(pdev, isc);
0a0e265515db76 Eugen Hristev 2019-06-12 397 isc->dev = dev;
0a0e265515db76 Eugen Hristev 2019-06-12 398
0a0e265515db76 Eugen Hristev 2019-06-12 399 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
0a0e265515db76 Eugen Hristev 2019-06-12 400 io_base = devm_ioremap_resource(dev, res);
0a0e265515db76 Eugen Hristev 2019-06-12 401 if (IS_ERR(io_base))
0a0e265515db76 Eugen Hristev 2019-06-12 402 return PTR_ERR(io_base);
0a0e265515db76 Eugen Hristev 2019-06-12 403
0a0e265515db76 Eugen Hristev 2019-06-12 404 isc->regmap = devm_regmap_init_mmio(dev, io_base, &isc_regmap_config);
0a0e265515db76 Eugen Hristev 2019-06-12 405 if (IS_ERR(isc->regmap)) {
0a0e265515db76 Eugen Hristev 2019-06-12 406 ret = PTR_ERR(isc->regmap);
0a0e265515db76 Eugen Hristev 2019-06-12 407 dev_err(dev, "failed to init register map: %d\n", ret);
0a0e265515db76 Eugen Hristev 2019-06-12 408 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 409 }
0a0e265515db76 Eugen Hristev 2019-06-12 410
0a0e265515db76 Eugen Hristev 2019-06-12 411 irq = platform_get_irq(pdev, 0);
97299a3035328d Stephen Boyd 2019-07-30 412 if (irq < 0)
97299a3035328d Stephen Boyd 2019-07-30 413 return irq;
0a0e265515db76 Eugen Hristev 2019-06-12 414
0a0e265515db76 Eugen Hristev 2019-06-12 415 ret = devm_request_irq(dev, irq, isc_interrupt, 0,
d5475b3c901a00 Eugen Hristev 2021-04-13 416 "atmel-sama5d2-isc", isc);
0a0e265515db76 Eugen Hristev 2019-06-12 417 if (ret < 0) {
0a0e265515db76 Eugen Hristev 2019-06-12 418 dev_err(dev, "can't register ISR for IRQ %u (ret=%i)\n",
0a0e265515db76 Eugen Hristev 2019-06-12 419 irq, ret);
0a0e265515db76 Eugen Hristev 2019-06-12 420 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 421 }
0a0e265515db76 Eugen Hristev 2019-06-12 422
f84bc784fa614a Eugen Hristev 2021-04-13 423 isc->gamma_table = isc_sama5d2_gamma_table;
f84bc784fa614a Eugen Hristev 2021-04-13 424 isc->gamma_max = 2;
f84bc784fa614a Eugen Hristev 2021-04-13 425
f794bc16a52da7 Eugen Hristev 2021-04-13 426 isc->max_width = ISC_SAMA5D2_MAX_SUPPORT_WIDTH;
f794bc16a52da7 Eugen Hristev 2021-04-13 427 isc->max_height = ISC_SAMA5D2_MAX_SUPPORT_HEIGHT;
f794bc16a52da7 Eugen Hristev 2021-04-13 428
883285556388af Eugen Hristev 2021-04-13 429 isc->config_dpc = isc_sama5d2_config_dpc;
2ede3975c0a853 Eugen Hristev 2021-04-13 430 isc->config_csc = isc_sama5d2_config_csc;
d3b2ee5478c856 Eugen Hristev 2021-04-13 431 isc->config_cbc = isc_sama5d2_config_cbc;
2873f85bd318bf Eugen Hristev 2021-04-13 432 isc->config_cc = isc_sama5d2_config_cc;
e48848a6af150e Eugen Hristev 2021-04-13 433 isc->config_gam = isc_sama5d2_config_gam;
ef9b7779688b2d Eugen Hristev 2021-04-13 434 isc->config_rlp = isc_sama5d2_config_rlp;
8f1b451c87ee05 Eugen Hristev 2021-04-13 435 isc->config_ctrls = isc_sama5d2_config_ctrls;
2ede3975c0a853 Eugen Hristev 2021-04-13 436
049a38fc9681b3 Eugen Hristev 2021-04-13 437 isc->adapt_pipeline = isc_sama5d2_adapt_pipeline;
049a38fc9681b3 Eugen Hristev 2021-04-13 438
ffeeb01d11397b Eugen Hristev 2021-04-13 439 isc->offsets.csc = ISC_SAMA5D2_CSC_OFFSET;
4fc9e8a775d4b3 Eugen Hristev 2021-04-13 440 isc->offsets.cbc = ISC_SAMA5D2_CBC_OFFSET;
87b62b6d55dd78 Eugen Hristev 2021-04-13 441 isc->offsets.sub422 = ISC_SAMA5D2_SUB422_OFFSET;
87b62b6d55dd78 Eugen Hristev 2021-04-13 442 isc->offsets.sub420 = ISC_SAMA5D2_SUB420_OFFSET;
40ee17d1b41ccc Eugen Hristev 2021-04-13 443 isc->offsets.rlp = ISC_SAMA5D2_RLP_OFFSET;
1a3ac5d51541b6 Eugen Hristev 2021-04-13 444 isc->offsets.his = ISC_SAMA5D2_HIS_OFFSET;
e891009857716e Eugen Hristev 2021-04-13 445 isc->offsets.dma = ISC_SAMA5D2_DMA_OFFSET;
d51470069eb169 Eugen Hristev 2021-04-13 446 isc->offsets.version = ISC_SAMA5D2_VERSION_OFFSET;
629de518e6f3b8 Eugen Hristev 2021-04-13 447 isc->offsets.his_entry = ISC_SAMA5D2_HIS_ENTRY_OFFSET;
ffeeb01d11397b Eugen Hristev 2021-04-13 448
415dbe4efafa29 Eugen Hristev 2021-04-13 449 isc->controller_formats = sama5d2_controller_formats;
415dbe4efafa29 Eugen Hristev 2021-04-13 450 isc->controller_formats_size = ARRAY_SIZE(sama5d2_controller_formats);
415dbe4efafa29 Eugen Hristev 2021-04-13 451 isc->formats_list = sama5d2_formats_list;
415dbe4efafa29 Eugen Hristev 2021-04-13 452 isc->formats_list_size = ARRAY_SIZE(sama5d2_formats_list);
415dbe4efafa29 Eugen Hristev 2021-04-13 453
cd5af39467bdc7 Eugen Hristev 2021-04-13 454 /* sama5d2-isc - 8 bits per beat */
cd5af39467bdc7 Eugen Hristev 2021-04-13 455 isc->dcfg = ISC_DCFG_YMBSIZE_BEATS8 | ISC_DCFG_CMBSIZE_BEATS8;
cd5af39467bdc7 Eugen Hristev 2021-04-13 456
d7f26849ed7cc8 Eugen Hristev 2021-09-13 457 /* sama5d2-isc : ISPCK is required and mandatory */
d7f26849ed7cc8 Eugen Hristev 2021-09-13 458 isc->ispck_required = true;
d7f26849ed7cc8 Eugen Hristev 2021-09-13 459
0a0e265515db76 Eugen Hristev 2019-06-12 460 ret = isc_pipeline_init(isc);
0a0e265515db76 Eugen Hristev 2019-06-12 461 if (ret)
0a0e265515db76 Eugen Hristev 2019-06-12 462 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 463
0a0e265515db76 Eugen Hristev 2019-06-12 464 isc->hclock = devm_clk_get(dev, "hclock");
0a0e265515db76 Eugen Hristev 2019-06-12 465 if (IS_ERR(isc->hclock)) {
0a0e265515db76 Eugen Hristev 2019-06-12 466 ret = PTR_ERR(isc->hclock);
0a0e265515db76 Eugen Hristev 2019-06-12 467 dev_err(dev, "failed to get hclock: %d\n", ret);
0a0e265515db76 Eugen Hristev 2019-06-12 468 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 469 }
0a0e265515db76 Eugen Hristev 2019-06-12 470
0a0e265515db76 Eugen Hristev 2019-06-12 471 ret = clk_prepare_enable(isc->hclock);
0a0e265515db76 Eugen Hristev 2019-06-12 472 if (ret) {
0a0e265515db76 Eugen Hristev 2019-06-12 473 dev_err(dev, "failed to enable hclock: %d\n", ret);
0a0e265515db76 Eugen Hristev 2019-06-12 474 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 475 }
0a0e265515db76 Eugen Hristev 2019-06-12 476
0a0e265515db76 Eugen Hristev 2019-06-12 477 ret = isc_clk_init(isc);
0a0e265515db76 Eugen Hristev 2019-06-12 478 if (ret) {
0a0e265515db76 Eugen Hristev 2019-06-12 479 dev_err(dev, "failed to init isc clock: %d\n", ret);
0a0e265515db76 Eugen Hristev 2019-06-12 480 goto unprepare_hclk;
0a0e265515db76 Eugen Hristev 2019-06-12 481 }
0a0e265515db76 Eugen Hristev 2019-06-12 482 ret = v4l2_device_register(dev, &isc->v4l2_dev);
0a0e265515db76 Eugen Hristev 2019-06-12 483 if (ret) {
0a0e265515db76 Eugen Hristev 2019-06-12 484 dev_err(dev, "unable to register v4l2 device.\n");
0a0e265515db76 Eugen Hristev 2019-06-12 485 goto unprepare_clk;
0a0e265515db76 Eugen Hristev 2019-06-12 486 }
0a0e265515db76 Eugen Hristev 2019-06-12 487
0a0e265515db76 Eugen Hristev 2019-06-12 488 ret = isc_parse_dt(dev, isc);
0a0e265515db76 Eugen Hristev 2019-06-12 489 if (ret) {
0a0e265515db76 Eugen Hristev 2019-06-12 490 dev_err(dev, "fail to parse device tree\n");
0a0e265515db76 Eugen Hristev 2019-06-12 491 goto unregister_v4l2_device;
0a0e265515db76 Eugen Hristev 2019-06-12 492 }
0a0e265515db76 Eugen Hristev 2019-06-12 493
0a0e265515db76 Eugen Hristev 2019-06-12 494 if (list_empty(&isc->subdev_entities)) {
0a0e265515db76 Eugen Hristev 2019-06-12 495 dev_err(dev, "no subdev found\n");
0a0e265515db76 Eugen Hristev 2019-06-12 496 ret = -ENODEV;
0a0e265515db76 Eugen Hristev 2019-06-12 497 goto unregister_v4l2_device;
0a0e265515db76 Eugen Hristev 2019-06-12 498 }
0a0e265515db76 Eugen Hristev 2019-06-12 499
0a0e265515db76 Eugen Hristev 2019-06-12 500 list_for_each_entry(subdev_entity, &isc->subdev_entities, list) {
d6701f13bd0747 Ezequiel Garcia 2021-01-18 501 struct v4l2_async_subdev *asd;
3c8c153914812a Sakari Ailus 2021-03-05 502 struct fwnode_handle *fwnode =
3c8c153914812a Sakari Ailus 2021-03-05 503 of_fwnode_handle(subdev_entity->epn);
d6701f13bd0747 Ezequiel Garcia 2021-01-18 504
3c8c153914812a Sakari Ailus 2021-03-05 505 v4l2_async_nf_init(&subdev_entity->notifier);
0a0e265515db76 Eugen Hristev 2019-06-12 506
3c8c153914812a Sakari Ailus 2021-03-05 507 asd = v4l2_async_nf_add_fwnode_remote(&subdev_entity->notifier,
3c8c153914812a Sakari Ailus 2021-03-05 508 fwnode,
b01edcbd409cf7 Laurent Pinchart 2021-01-18 509 struct v4l2_async_subdev);
d6701f13bd0747 Ezequiel Garcia 2021-01-18 510
d6701f13bd0747 Ezequiel Garcia 2021-01-18 511 of_node_put(subdev_entity->epn);
d6701f13bd0747 Ezequiel Garcia 2021-01-18 512 subdev_entity->epn = NULL;
d6701f13bd0747 Ezequiel Garcia 2021-01-18 513
d6701f13bd0747 Ezequiel Garcia 2021-01-18 514 if (IS_ERR(asd)) {
d6701f13bd0747 Ezequiel Garcia 2021-01-18 515 ret = PTR_ERR(asd);
0a0e265515db76 Eugen Hristev 2019-06-12 516 goto cleanup_subdev;
0a0e265515db76 Eugen Hristev 2019-06-12 517 }
0a0e265515db76 Eugen Hristev 2019-06-12 518
0a0e265515db76 Eugen Hristev 2019-06-12 519 subdev_entity->notifier.ops = &isc_async_ops;
0a0e265515db76 Eugen Hristev 2019-06-12 520
3c8c153914812a Sakari Ailus 2021-03-05 521 ret = v4l2_async_nf_register(&isc->v4l2_dev,
0a0e265515db76 Eugen Hristev 2019-06-12 522 &subdev_entity->notifier);
0a0e265515db76 Eugen Hristev 2019-06-12 523 if (ret) {
0a0e265515db76 Eugen Hristev 2019-06-12 524 dev_err(dev, "fail to register async notifier\n");
0a0e265515db76 Eugen Hristev 2019-06-12 525 goto cleanup_subdev;
0a0e265515db76 Eugen Hristev 2019-06-12 526 }
0a0e265515db76 Eugen Hristev 2019-06-12 527
0a0e265515db76 Eugen Hristev 2019-06-12 528 if (video_is_registered(&isc->video_dev))
0a0e265515db76 Eugen Hristev 2019-06-12 529 break;
0a0e265515db76 Eugen Hristev 2019-06-12 530 }
0a0e265515db76 Eugen Hristev 2019-06-12 531
0a0e265515db76 Eugen Hristev 2019-06-12 532 pm_runtime_set_active(dev);
0a0e265515db76 Eugen Hristev 2019-06-12 533 pm_runtime_enable(dev);
0a0e265515db76 Eugen Hristev 2019-06-12 534 pm_request_idle(dev);
0a0e265515db76 Eugen Hristev 2019-06-12 535
d7f26849ed7cc8 Eugen Hristev 2021-09-13 536 isc->ispck = isc->isc_clks[ISC_ISPCK].clk;
d7f26849ed7cc8 Eugen Hristev 2021-09-13 537
d7f26849ed7cc8 Eugen Hristev 2021-09-13 538 ret = clk_prepare_enable(isc->ispck);
d7f26849ed7cc8 Eugen Hristev 2021-09-13 539 if (ret) {
d7f26849ed7cc8 Eugen Hristev 2021-09-13 540 dev_err(dev, "failed to enable ispck: %d\n", ret);
d7f26849ed7cc8 Eugen Hristev 2021-09-13 541 goto cleanup_subdev;
d7f26849ed7cc8 Eugen Hristev 2021-09-13 542 }
d7f26849ed7cc8 Eugen Hristev 2021-09-13 543
d7f26849ed7cc8 Eugen Hristev 2021-09-13 544 /* ispck should be greater or equal to hclock */
d7f26849ed7cc8 Eugen Hristev 2021-09-13 545 ret = clk_set_rate(isc->ispck, clk_get_rate(isc->hclock));
d7f26849ed7cc8 Eugen Hristev 2021-09-13 546 if (ret) {
d7f26849ed7cc8 Eugen Hristev 2021-09-13 547 dev_err(dev, "failed to set ispck rate: %d\n", ret);
d7f26849ed7cc8 Eugen Hristev 2021-09-13 548 goto unprepare_clk;
d7f26849ed7cc8 Eugen Hristev 2021-09-13 549 }
d7f26849ed7cc8 Eugen Hristev 2021-09-13 550
d51470069eb169 Eugen Hristev 2021-04-13 551 regmap_read(isc->regmap, ISC_VERSION + isc->offsets.version, &ver);
d51470069eb169 Eugen Hristev 2021-04-13 552 dev_info(dev, "Microchip ISC version %x\n", ver);
d51470069eb169 Eugen Hristev 2021-04-13 553
0a0e265515db76 Eugen Hristev 2019-06-12 554 return 0;
0a0e265515db76 Eugen Hristev 2019-06-12 555
d7f26849ed7cc8 Eugen Hristev 2021-09-13 556 unprepare_clk:
d7f26849ed7cc8 Eugen Hristev 2021-09-13 557 clk_disable_unprepare(isc->ispck);
d7f26849ed7cc8 Eugen Hristev 2021-09-13 558
0a0e265515db76 Eugen Hristev 2019-06-12 559 cleanup_subdev:
0a0e265515db76 Eugen Hristev 2019-06-12 560 isc_subdev_cleanup(isc);
0a0e265515db76 Eugen Hristev 2019-06-12 561
f116d8f81c6424 Miaoqian Lin 2022-01-05 @562 disable_pm_runtime:
f116d8f81c6424 Miaoqian Lin 2022-01-05 563 pm_runtime_disable(dev);
f116d8f81c6424 Miaoqian Lin 2022-01-05 564
0a0e265515db76 Eugen Hristev 2019-06-12 565 unregister_v4l2_device:
0a0e265515db76 Eugen Hristev 2019-06-12 566 v4l2_device_unregister(&isc->v4l2_dev);
0a0e265515db76 Eugen Hristev 2019-06-12 567
0a0e265515db76 Eugen Hristev 2019-06-12 568 unprepare_hclk:
0a0e265515db76 Eugen Hristev 2019-06-12 569 clk_disable_unprepare(isc->hclock);
0a0e265515db76 Eugen Hristev 2019-06-12 570
0a0e265515db76 Eugen Hristev 2019-06-12 571 isc_clk_cleanup(isc);
0a0e265515db76 Eugen Hristev 2019-06-12 572
0a0e265515db76 Eugen Hristev 2019-06-12 573 return ret;
0a0e265515db76 Eugen Hristev 2019-06-12 574 }
0a0e265515db76 Eugen Hristev 2019-06-12 575
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next reply other threads:[~2022-01-05 18:52 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-05 18:52 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-01-05 11:10 [PATCH] media: atmel: atmel-isc: Fix PM disable depth imbalance in atmel_isc_probe Miaoqian Lin
2022-01-05 11:10 ` Miaoqian Lin
2022-01-06 12:42 ` kernel test robot
2022-01-06 12:42 ` kernel test robot
2022-01-06 12:42 ` kernel test robot
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=202201060215.P1FTGS2p-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.