From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org, Vishal Sagar <vishal.sagar@xilinx.com>
Cc: lkp@intel.com, kbuild-all@lists.01.org,
linux-arm-kernel@lists.infradead.org,
Michal Simek <monstr@monstr.eu>, Hyun Kwon <hyun.kwon@xilinx.com>
Subject: [xlnx:xlnx_rebase_v5.4 1296/1699] drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
Date: Wed, 3 Mar 2021 08:31:47 +0300 [thread overview]
Message-ID: <20210303053146.GV2087@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 7958 bytes --]
Hi Vishal,
First bad commit (maybe != root cause):
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.4
head: 700725af75ecddb674ccadf3f6d06b9bd5df79a5
commit: 0b197959bbbdb68e1da974bd013339f08704b178 [1296/1699] staging: xlnxsync: Fix the uapi header license
config: x86_64-randconfig-m001-20210302 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
drivers/usb/dwc3/gadget.c:2140 dwc3_gadget_start() warn: 'irq' not released on lines: 2140.
drivers/usb/dwc3/gadget_hibernation.c:368 gadget_hibernation_interrupt() warn: inconsistent indenting
drivers/gpio/gpio-xilinx.c:698 xgpio_of_probe() warn: missing error code 'status'
vim +120 drivers/soc/xilinx/xlnx_vcu_core.c
461f3f52ff70cf Rajan Vaja 2020-01-13 28 static int xvcu_core_probe(struct platform_device *pdev)
461f3f52ff70cf Rajan Vaja 2020-01-13 29 {
461f3f52ff70cf Rajan Vaja 2020-01-13 30 struct xvcu_device *xvcu;
461f3f52ff70cf Rajan Vaja 2020-01-13 31 struct resource *res;
461f3f52ff70cf Rajan Vaja 2020-01-13 32 int ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 33
461f3f52ff70cf Rajan Vaja 2020-01-13 34 xvcu = devm_kzalloc(&pdev->dev, sizeof(*xvcu), GFP_KERNEL);
461f3f52ff70cf Rajan Vaja 2020-01-13 35 if (!xvcu)
461f3f52ff70cf Rajan Vaja 2020-01-13 36 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 37
461f3f52ff70cf Rajan Vaja 2020-01-13 38 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vcu_slcr");
461f3f52ff70cf Rajan Vaja 2020-01-13 39 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 40 dev_err(&pdev->dev, "get vcu_slcr memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 41 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 42 }
461f3f52ff70cf Rajan Vaja 2020-01-13 43
461f3f52ff70cf Rajan Vaja 2020-01-13 44 xvcu->vcu_slcr_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 45 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 46 if (!xvcu->vcu_slcr_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 47 dev_err(&pdev->dev, "vcu_slcr register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 48 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 49 }
461f3f52ff70cf Rajan Vaja 2020-01-13 50
461f3f52ff70cf Rajan Vaja 2020-01-13 51 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "logicore");
461f3f52ff70cf Rajan Vaja 2020-01-13 52 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 53 dev_err(&pdev->dev, "get logicore memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 54 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 55 }
461f3f52ff70cf Rajan Vaja 2020-01-13 56
461f3f52ff70cf Rajan Vaja 2020-01-13 57 xvcu->logicore_reg_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 58 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 59 if (!xvcu->logicore_reg_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 60 dev_err(&pdev->dev, "logicore register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 61 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 62 }
461f3f52ff70cf Rajan Vaja 2020-01-13 63
461f3f52ff70cf Rajan Vaja 2020-01-13 64 dev_set_drvdata(&pdev->dev, xvcu);
461f3f52ff70cf Rajan Vaja 2020-01-13 65
461f3f52ff70cf Rajan Vaja 2020-01-13 66 xvcu->aclk = devm_clk_get(&pdev->dev, "aclk");
461f3f52ff70cf Rajan Vaja 2020-01-13 67 if (IS_ERR(xvcu->aclk)) {
461f3f52ff70cf Rajan Vaja 2020-01-13 68 dev_err(&pdev->dev, "Could not get aclk clock\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 69 return PTR_ERR(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 70 }
461f3f52ff70cf Rajan Vaja 2020-01-13 71
461f3f52ff70cf Rajan Vaja 2020-01-13 72 ret = clk_prepare_enable(xvcu->aclk);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
461f3f52ff70cf Rajan Vaja 2020-01-13 73 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 74 dev_err(&pdev->dev, "aclk clock enable failed\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 75 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 76 }
461f3f52ff70cf Rajan Vaja 2020-01-13 77
461f3f52ff70cf Rajan Vaja 2020-01-13 78 /*
461f3f52ff70cf Rajan Vaja 2020-01-13 79 * Do the Gasket isolation and put the VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 80 * Bit 0 : Gasket isolation
461f3f52ff70cf Rajan Vaja 2020-01-13 81 * Bit 1 : put VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 82 */
09ffb01764320a Dhaval Shah 2020-01-13 83 xvcu->reset_gpio = devm_gpiod_get_optional(&pdev->dev, "reset",
09ffb01764320a Dhaval Shah 2020-01-13 84 GPIOD_OUT_LOW);
09ffb01764320a Dhaval Shah 2020-01-13 85 if (IS_ERR(xvcu->reset_gpio)) {
09ffb01764320a Dhaval Shah 2020-01-13 86 ret = PTR_ERR(xvcu->reset_gpio);
09ffb01764320a Dhaval Shah 2020-01-13 87 dev_err(&pdev->dev, "failed to get reset gpio for vcu.\n");
disable unprepare the clock?
09ffb01764320a Dhaval Shah 2020-01-13 88 return ret;
09ffb01764320a Dhaval Shah 2020-01-13 89 }
09ffb01764320a Dhaval Shah 2020-01-13 90
09ffb01764320a Dhaval Shah 2020-01-13 91 if (xvcu->reset_gpio) {
09ffb01764320a Dhaval Shah 2020-01-13 92 gpiod_set_value(xvcu->reset_gpio, 0);
09ffb01764320a Dhaval Shah 2020-01-13 93 /* min 2 clock cycle of vcu pll_ref, slowest freq is 33.33KHz */
09ffb01764320a Dhaval Shah 2020-01-13 94 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 95 gpiod_set_value(xvcu->reset_gpio, 1);
09ffb01764320a Dhaval Shah 2020-01-13 96 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 97 } else {
09ffb01764320a Dhaval Shah 2020-01-13 98 dev_warn(&pdev->dev, "No reset gpio info from dts for vcu. This may lead to incorrect functionality if VCU isolation is removed post initialization.\n");
09ffb01764320a Dhaval Shah 2020-01-13 99 }
09ffb01764320a Dhaval Shah 2020-01-13 100
461f3f52ff70cf Rajan Vaja 2020-01-13 101 iowrite32(VCU_GASKET_VALUE, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 102
461f3f52ff70cf Rajan Vaja 2020-01-13 103 ret = mfd_add_devices(&pdev->dev, PLATFORM_DEVID_NONE, xvcu_devs,
461f3f52ff70cf Rajan Vaja 2020-01-13 104 ARRAY_SIZE(xvcu_devs), NULL, 0, NULL);
461f3f52ff70cf Rajan Vaja 2020-01-13 105 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 106 dev_err(&pdev->dev, "failed to add MFD devices %d\n", ret);
461f3f52ff70cf Rajan Vaja 2020-01-13 107 goto err_mfd_add_devices;
461f3f52ff70cf Rajan Vaja 2020-01-13 108 }
461f3f52ff70cf Rajan Vaja 2020-01-13 109
461f3f52ff70cf Rajan Vaja 2020-01-13 110 dev_dbg(&pdev->dev, "Successfully added MFD devices\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 111
461f3f52ff70cf Rajan Vaja 2020-01-13 112 return 0;
461f3f52ff70cf Rajan Vaja 2020-01-13 113
461f3f52ff70cf Rajan Vaja 2020-01-13 114 err_mfd_add_devices:
461f3f52ff70cf Rajan Vaja 2020-01-13 115 /* Add the the Gasket isolation and put the VCU in reset. */
461f3f52ff70cf Rajan Vaja 2020-01-13 116 iowrite32(0, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 117
461f3f52ff70cf Rajan Vaja 2020-01-13 118 clk_disable_unprepare(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 119
461f3f52ff70cf Rajan Vaja 2020-01-13 @120 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 121 }
---
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: 34551 bytes --]
[-- Attachment #3: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org
Subject: [xlnx:xlnx_rebase_v5.4 1296/1699] drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
Date: Wed, 03 Mar 2021 08:31:47 +0300 [thread overview]
Message-ID: <20210303053146.GV2087@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 8084 bytes --]
Hi Vishal,
First bad commit (maybe != root cause):
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.4
head: 700725af75ecddb674ccadf3f6d06b9bd5df79a5
commit: 0b197959bbbdb68e1da974bd013339f08704b178 [1296/1699] staging: xlnxsync: Fix the uapi header license
config: x86_64-randconfig-m001-20210302 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
drivers/usb/dwc3/gadget.c:2140 dwc3_gadget_start() warn: 'irq' not released on lines: 2140.
drivers/usb/dwc3/gadget_hibernation.c:368 gadget_hibernation_interrupt() warn: inconsistent indenting
drivers/gpio/gpio-xilinx.c:698 xgpio_of_probe() warn: missing error code 'status'
vim +120 drivers/soc/xilinx/xlnx_vcu_core.c
461f3f52ff70cf Rajan Vaja 2020-01-13 28 static int xvcu_core_probe(struct platform_device *pdev)
461f3f52ff70cf Rajan Vaja 2020-01-13 29 {
461f3f52ff70cf Rajan Vaja 2020-01-13 30 struct xvcu_device *xvcu;
461f3f52ff70cf Rajan Vaja 2020-01-13 31 struct resource *res;
461f3f52ff70cf Rajan Vaja 2020-01-13 32 int ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 33
461f3f52ff70cf Rajan Vaja 2020-01-13 34 xvcu = devm_kzalloc(&pdev->dev, sizeof(*xvcu), GFP_KERNEL);
461f3f52ff70cf Rajan Vaja 2020-01-13 35 if (!xvcu)
461f3f52ff70cf Rajan Vaja 2020-01-13 36 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 37
461f3f52ff70cf Rajan Vaja 2020-01-13 38 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vcu_slcr");
461f3f52ff70cf Rajan Vaja 2020-01-13 39 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 40 dev_err(&pdev->dev, "get vcu_slcr memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 41 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 42 }
461f3f52ff70cf Rajan Vaja 2020-01-13 43
461f3f52ff70cf Rajan Vaja 2020-01-13 44 xvcu->vcu_slcr_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 45 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 46 if (!xvcu->vcu_slcr_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 47 dev_err(&pdev->dev, "vcu_slcr register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 48 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 49 }
461f3f52ff70cf Rajan Vaja 2020-01-13 50
461f3f52ff70cf Rajan Vaja 2020-01-13 51 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "logicore");
461f3f52ff70cf Rajan Vaja 2020-01-13 52 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 53 dev_err(&pdev->dev, "get logicore memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 54 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 55 }
461f3f52ff70cf Rajan Vaja 2020-01-13 56
461f3f52ff70cf Rajan Vaja 2020-01-13 57 xvcu->logicore_reg_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 58 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 59 if (!xvcu->logicore_reg_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 60 dev_err(&pdev->dev, "logicore register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 61 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 62 }
461f3f52ff70cf Rajan Vaja 2020-01-13 63
461f3f52ff70cf Rajan Vaja 2020-01-13 64 dev_set_drvdata(&pdev->dev, xvcu);
461f3f52ff70cf Rajan Vaja 2020-01-13 65
461f3f52ff70cf Rajan Vaja 2020-01-13 66 xvcu->aclk = devm_clk_get(&pdev->dev, "aclk");
461f3f52ff70cf Rajan Vaja 2020-01-13 67 if (IS_ERR(xvcu->aclk)) {
461f3f52ff70cf Rajan Vaja 2020-01-13 68 dev_err(&pdev->dev, "Could not get aclk clock\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 69 return PTR_ERR(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 70 }
461f3f52ff70cf Rajan Vaja 2020-01-13 71
461f3f52ff70cf Rajan Vaja 2020-01-13 72 ret = clk_prepare_enable(xvcu->aclk);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
461f3f52ff70cf Rajan Vaja 2020-01-13 73 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 74 dev_err(&pdev->dev, "aclk clock enable failed\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 75 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 76 }
461f3f52ff70cf Rajan Vaja 2020-01-13 77
461f3f52ff70cf Rajan Vaja 2020-01-13 78 /*
461f3f52ff70cf Rajan Vaja 2020-01-13 79 * Do the Gasket isolation and put the VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 80 * Bit 0 : Gasket isolation
461f3f52ff70cf Rajan Vaja 2020-01-13 81 * Bit 1 : put VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 82 */
09ffb01764320a Dhaval Shah 2020-01-13 83 xvcu->reset_gpio = devm_gpiod_get_optional(&pdev->dev, "reset",
09ffb01764320a Dhaval Shah 2020-01-13 84 GPIOD_OUT_LOW);
09ffb01764320a Dhaval Shah 2020-01-13 85 if (IS_ERR(xvcu->reset_gpio)) {
09ffb01764320a Dhaval Shah 2020-01-13 86 ret = PTR_ERR(xvcu->reset_gpio);
09ffb01764320a Dhaval Shah 2020-01-13 87 dev_err(&pdev->dev, "failed to get reset gpio for vcu.\n");
disable unprepare the clock?
09ffb01764320a Dhaval Shah 2020-01-13 88 return ret;
09ffb01764320a Dhaval Shah 2020-01-13 89 }
09ffb01764320a Dhaval Shah 2020-01-13 90
09ffb01764320a Dhaval Shah 2020-01-13 91 if (xvcu->reset_gpio) {
09ffb01764320a Dhaval Shah 2020-01-13 92 gpiod_set_value(xvcu->reset_gpio, 0);
09ffb01764320a Dhaval Shah 2020-01-13 93 /* min 2 clock cycle of vcu pll_ref, slowest freq is 33.33KHz */
09ffb01764320a Dhaval Shah 2020-01-13 94 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 95 gpiod_set_value(xvcu->reset_gpio, 1);
09ffb01764320a Dhaval Shah 2020-01-13 96 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 97 } else {
09ffb01764320a Dhaval Shah 2020-01-13 98 dev_warn(&pdev->dev, "No reset gpio info from dts for vcu. This may lead to incorrect functionality if VCU isolation is removed post initialization.\n");
09ffb01764320a Dhaval Shah 2020-01-13 99 }
09ffb01764320a Dhaval Shah 2020-01-13 100
461f3f52ff70cf Rajan Vaja 2020-01-13 101 iowrite32(VCU_GASKET_VALUE, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 102
461f3f52ff70cf Rajan Vaja 2020-01-13 103 ret = mfd_add_devices(&pdev->dev, PLATFORM_DEVID_NONE, xvcu_devs,
461f3f52ff70cf Rajan Vaja 2020-01-13 104 ARRAY_SIZE(xvcu_devs), NULL, 0, NULL);
461f3f52ff70cf Rajan Vaja 2020-01-13 105 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 106 dev_err(&pdev->dev, "failed to add MFD devices %d\n", ret);
461f3f52ff70cf Rajan Vaja 2020-01-13 107 goto err_mfd_add_devices;
461f3f52ff70cf Rajan Vaja 2020-01-13 108 }
461f3f52ff70cf Rajan Vaja 2020-01-13 109
461f3f52ff70cf Rajan Vaja 2020-01-13 110 dev_dbg(&pdev->dev, "Successfully added MFD devices\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 111
461f3f52ff70cf Rajan Vaja 2020-01-13 112 return 0;
461f3f52ff70cf Rajan Vaja 2020-01-13 113
461f3f52ff70cf Rajan Vaja 2020-01-13 114 err_mfd_add_devices:
461f3f52ff70cf Rajan Vaja 2020-01-13 115 /* Add the the Gasket isolation and put the VCU in reset. */
461f3f52ff70cf Rajan Vaja 2020-01-13 116 iowrite32(0, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 117
461f3f52ff70cf Rajan Vaja 2020-01-13 118 clk_disable_unprepare(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 119
461f3f52ff70cf Rajan Vaja 2020-01-13 @120 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 121 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34551 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: [xlnx:xlnx_rebase_v5.4 1296/1699] drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
Date: Wed, 03 Mar 2021 08:31:47 +0300 [thread overview]
Message-ID: <20210303053146.GV2087@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 8084 bytes --]
Hi Vishal,
First bad commit (maybe != root cause):
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.4
head: 700725af75ecddb674ccadf3f6d06b9bd5df79a5
commit: 0b197959bbbdb68e1da974bd013339f08704b178 [1296/1699] staging: xlnxsync: Fix the uapi header license
config: x86_64-randconfig-m001-20210302 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88.
drivers/usb/dwc3/gadget.c:2140 dwc3_gadget_start() warn: 'irq' not released on lines: 2140.
drivers/usb/dwc3/gadget_hibernation.c:368 gadget_hibernation_interrupt() warn: inconsistent indenting
drivers/gpio/gpio-xilinx.c:698 xgpio_of_probe() warn: missing error code 'status'
vim +120 drivers/soc/xilinx/xlnx_vcu_core.c
461f3f52ff70cf Rajan Vaja 2020-01-13 28 static int xvcu_core_probe(struct platform_device *pdev)
461f3f52ff70cf Rajan Vaja 2020-01-13 29 {
461f3f52ff70cf Rajan Vaja 2020-01-13 30 struct xvcu_device *xvcu;
461f3f52ff70cf Rajan Vaja 2020-01-13 31 struct resource *res;
461f3f52ff70cf Rajan Vaja 2020-01-13 32 int ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 33
461f3f52ff70cf Rajan Vaja 2020-01-13 34 xvcu = devm_kzalloc(&pdev->dev, sizeof(*xvcu), GFP_KERNEL);
461f3f52ff70cf Rajan Vaja 2020-01-13 35 if (!xvcu)
461f3f52ff70cf Rajan Vaja 2020-01-13 36 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 37
461f3f52ff70cf Rajan Vaja 2020-01-13 38 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vcu_slcr");
461f3f52ff70cf Rajan Vaja 2020-01-13 39 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 40 dev_err(&pdev->dev, "get vcu_slcr memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 41 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 42 }
461f3f52ff70cf Rajan Vaja 2020-01-13 43
461f3f52ff70cf Rajan Vaja 2020-01-13 44 xvcu->vcu_slcr_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 45 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 46 if (!xvcu->vcu_slcr_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 47 dev_err(&pdev->dev, "vcu_slcr register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 48 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 49 }
461f3f52ff70cf Rajan Vaja 2020-01-13 50
461f3f52ff70cf Rajan Vaja 2020-01-13 51 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "logicore");
461f3f52ff70cf Rajan Vaja 2020-01-13 52 if (!res) {
461f3f52ff70cf Rajan Vaja 2020-01-13 53 dev_err(&pdev->dev, "get logicore memory resource failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 54 return -ENODEV;
461f3f52ff70cf Rajan Vaja 2020-01-13 55 }
461f3f52ff70cf Rajan Vaja 2020-01-13 56
461f3f52ff70cf Rajan Vaja 2020-01-13 57 xvcu->logicore_reg_ba = devm_ioremap_nocache(&pdev->dev, res->start,
461f3f52ff70cf Rajan Vaja 2020-01-13 58 resource_size(res));
461f3f52ff70cf Rajan Vaja 2020-01-13 59 if (!xvcu->logicore_reg_ba) {
461f3f52ff70cf Rajan Vaja 2020-01-13 60 dev_err(&pdev->dev, "logicore register mapping failed.\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 61 return -ENOMEM;
461f3f52ff70cf Rajan Vaja 2020-01-13 62 }
461f3f52ff70cf Rajan Vaja 2020-01-13 63
461f3f52ff70cf Rajan Vaja 2020-01-13 64 dev_set_drvdata(&pdev->dev, xvcu);
461f3f52ff70cf Rajan Vaja 2020-01-13 65
461f3f52ff70cf Rajan Vaja 2020-01-13 66 xvcu->aclk = devm_clk_get(&pdev->dev, "aclk");
461f3f52ff70cf Rajan Vaja 2020-01-13 67 if (IS_ERR(xvcu->aclk)) {
461f3f52ff70cf Rajan Vaja 2020-01-13 68 dev_err(&pdev->dev, "Could not get aclk clock\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 69 return PTR_ERR(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 70 }
461f3f52ff70cf Rajan Vaja 2020-01-13 71
461f3f52ff70cf Rajan Vaja 2020-01-13 72 ret = clk_prepare_enable(xvcu->aclk);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
461f3f52ff70cf Rajan Vaja 2020-01-13 73 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 74 dev_err(&pdev->dev, "aclk clock enable failed\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 75 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 76 }
461f3f52ff70cf Rajan Vaja 2020-01-13 77
461f3f52ff70cf Rajan Vaja 2020-01-13 78 /*
461f3f52ff70cf Rajan Vaja 2020-01-13 79 * Do the Gasket isolation and put the VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 80 * Bit 0 : Gasket isolation
461f3f52ff70cf Rajan Vaja 2020-01-13 81 * Bit 1 : put VCU out of reset
461f3f52ff70cf Rajan Vaja 2020-01-13 82 */
09ffb01764320a Dhaval Shah 2020-01-13 83 xvcu->reset_gpio = devm_gpiod_get_optional(&pdev->dev, "reset",
09ffb01764320a Dhaval Shah 2020-01-13 84 GPIOD_OUT_LOW);
09ffb01764320a Dhaval Shah 2020-01-13 85 if (IS_ERR(xvcu->reset_gpio)) {
09ffb01764320a Dhaval Shah 2020-01-13 86 ret = PTR_ERR(xvcu->reset_gpio);
09ffb01764320a Dhaval Shah 2020-01-13 87 dev_err(&pdev->dev, "failed to get reset gpio for vcu.\n");
disable unprepare the clock?
09ffb01764320a Dhaval Shah 2020-01-13 88 return ret;
09ffb01764320a Dhaval Shah 2020-01-13 89 }
09ffb01764320a Dhaval Shah 2020-01-13 90
09ffb01764320a Dhaval Shah 2020-01-13 91 if (xvcu->reset_gpio) {
09ffb01764320a Dhaval Shah 2020-01-13 92 gpiod_set_value(xvcu->reset_gpio, 0);
09ffb01764320a Dhaval Shah 2020-01-13 93 /* min 2 clock cycle of vcu pll_ref, slowest freq is 33.33KHz */
09ffb01764320a Dhaval Shah 2020-01-13 94 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 95 gpiod_set_value(xvcu->reset_gpio, 1);
09ffb01764320a Dhaval Shah 2020-01-13 96 usleep_range(60, 120);
09ffb01764320a Dhaval Shah 2020-01-13 97 } else {
09ffb01764320a Dhaval Shah 2020-01-13 98 dev_warn(&pdev->dev, "No reset gpio info from dts for vcu. This may lead to incorrect functionality if VCU isolation is removed post initialization.\n");
09ffb01764320a Dhaval Shah 2020-01-13 99 }
09ffb01764320a Dhaval Shah 2020-01-13 100
461f3f52ff70cf Rajan Vaja 2020-01-13 101 iowrite32(VCU_GASKET_VALUE, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 102
461f3f52ff70cf Rajan Vaja 2020-01-13 103 ret = mfd_add_devices(&pdev->dev, PLATFORM_DEVID_NONE, xvcu_devs,
461f3f52ff70cf Rajan Vaja 2020-01-13 104 ARRAY_SIZE(xvcu_devs), NULL, 0, NULL);
461f3f52ff70cf Rajan Vaja 2020-01-13 105 if (ret) {
461f3f52ff70cf Rajan Vaja 2020-01-13 106 dev_err(&pdev->dev, "failed to add MFD devices %d\n", ret);
461f3f52ff70cf Rajan Vaja 2020-01-13 107 goto err_mfd_add_devices;
461f3f52ff70cf Rajan Vaja 2020-01-13 108 }
461f3f52ff70cf Rajan Vaja 2020-01-13 109
461f3f52ff70cf Rajan Vaja 2020-01-13 110 dev_dbg(&pdev->dev, "Successfully added MFD devices\n");
461f3f52ff70cf Rajan Vaja 2020-01-13 111
461f3f52ff70cf Rajan Vaja 2020-01-13 112 return 0;
461f3f52ff70cf Rajan Vaja 2020-01-13 113
461f3f52ff70cf Rajan Vaja 2020-01-13 114 err_mfd_add_devices:
461f3f52ff70cf Rajan Vaja 2020-01-13 115 /* Add the the Gasket isolation and put the VCU in reset. */
461f3f52ff70cf Rajan Vaja 2020-01-13 116 iowrite32(0, xvcu->logicore_reg_ba + VCU_GASKET_INIT);
461f3f52ff70cf Rajan Vaja 2020-01-13 117
461f3f52ff70cf Rajan Vaja 2020-01-13 118 clk_disable_unprepare(xvcu->aclk);
461f3f52ff70cf Rajan Vaja 2020-01-13 119
461f3f52ff70cf Rajan Vaja 2020-01-13 @120 return ret;
461f3f52ff70cf Rajan Vaja 2020-01-13 121 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34551 bytes --]
next reply other threads:[~2021-03-03 21:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-03 5:31 Dan Carpenter [this message]
2021-03-03 5:31 ` [xlnx:xlnx_rebase_v5.4 1296/1699] drivers/soc/xilinx/xlnx_vcu_core.c:120 xvcu_core_probe() warn: 'xvcu->aclk' not released on lines: 88 Dan Carpenter
2021-03-03 5:31 ` Dan Carpenter
-- strict thread matches above, loose matches on Subject: below --
2021-03-02 16:05 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=20210303053146.GV2087@kadam \
--to=dan.carpenter@oracle.com \
--cc=hyun.kwon@xilinx.com \
--cc=kbuild-all@lists.01.org \
--cc=kbuild@lists.01.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=lkp@intel.com \
--cc=monstr@monstr.eu \
--cc=vishal.sagar@xilinx.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 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.