* drivers/mmc/host/sdhci-esdhc-imx.c:1640 sdhci_esdhc_imx_probe() warn: missing error code 'err'
@ 2021-03-23 13:49 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-03-23 13:49 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 13473 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Krzysztof Kozlowski <krzk@kernel.org>
CC: Ulf Hansson <ulf.hansson@linaro.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 84196390620ac0e5070ae36af84c137c6216a7dc
commit: 54d8454436a205682bd89d66d8d9eedbc8452d15 mmc: host: Enable compile testing of multiple drivers
date: 7 months ago
:::::: branch date: 19 hours ago
:::::: commit date: 7 months ago
config: openrisc-randconfig-m031-20210323 (attached as .config)
compiler: or1k-linux-gcc (GCC) 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>
New smatch warnings:
drivers/mmc/host/sdhci-esdhc-imx.c:1640 sdhci_esdhc_imx_probe() warn: missing error code 'err'
Old smatch warnings:
drivers/mmc/host/sdhci-esdhc-imx.c:1380 sdhci_esdhc_imx_hwinit() warn: inconsistent indenting
vim +/err +1640 drivers/mmc/host/sdhci-esdhc-imx.c
91fa4252878afc Dong Aisheng 2015-07-22 1599
c3be1efd41a97f Bill Pemberton 2012-11-19 1600 static int sdhci_esdhc_imx_probe(struct platform_device *pdev)
95f25efe0ce22e Wolfram Sang 2010-10-15 1601 {
abfafc2d10ee2a Shawn Guo 2011-06-30 1602 const struct of_device_id *of_id =
abfafc2d10ee2a Shawn Guo 2011-06-30 1603 of_match_device(imx_esdhc_dt_ids, &pdev->dev);
85d6509dc8ca24 Shawn Guo 2011-05-27 1604 struct sdhci_pltfm_host *pltfm_host;
85d6509dc8ca24 Shawn Guo 2011-05-27 1605 struct sdhci_host *host;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1606 struct cqhci_host *cq_host;
0c6d49ce53bc18 Wolfram Sang 2011-02-26 1607 int err;
e149860d16d96a Richard Zhu 2011-03-25 1608 struct pltfm_imx_data *imx_data;
95f25efe0ce22e Wolfram Sang 2010-10-15 1609
070e6d3ff5a696 Jisheng Zhang 2016-02-16 1610 host = sdhci_pltfm_init(pdev, &sdhci_esdhc_imx_pdata,
070e6d3ff5a696 Jisheng Zhang 2016-02-16 1611 sizeof(*imx_data));
85d6509dc8ca24 Shawn Guo 2011-05-27 1612 if (IS_ERR(host))
85d6509dc8ca24 Shawn Guo 2011-05-27 1613 return PTR_ERR(host);
85d6509dc8ca24 Shawn Guo 2011-05-27 1614
85d6509dc8ca24 Shawn Guo 2011-05-27 1615 pltfm_host = sdhci_priv(host);
85d6509dc8ca24 Shawn Guo 2011-05-27 1616
070e6d3ff5a696 Jisheng Zhang 2016-02-16 1617 imx_data = sdhci_pltfm_priv(pltfm_host);
57ed3314e0bfa9 Shawn Guo 2011-06-30 1618
f47c4bbfa283df Shawn Guo 2013-10-17 1619 imx_data->socdata = of_id ? of_id->data : (struct esdhc_soc_data *)
3770ee8f95a2aa Shawn Guo 2013-10-17 1620 pdev->id_entry->driver_data;
85d6509dc8ca24 Shawn Guo 2011-05-27 1621
1c4989b000aeac BOUGH CHEN 2019-04-29 1622 if (imx_data->socdata->flags & ESDHC_FLAG_PMQOS)
d1b98305916bc0 Rafael J. Wysocki 2020-02-12 1623 cpu_latency_qos_add_request(&imx_data->pm_qos_req, 0);
1c4989b000aeac BOUGH CHEN 2019-04-29 1624
52dac6150580f3 Sascha Hauer 2012-03-07 1625 imx_data->clk_ipg = devm_clk_get(&pdev->dev, "ipg");
52dac6150580f3 Sascha Hauer 2012-03-07 1626 if (IS_ERR(imx_data->clk_ipg)) {
52dac6150580f3 Sascha Hauer 2012-03-07 1627 err = PTR_ERR(imx_data->clk_ipg);
e3af31c6c61fd0 Shawn Guo 2012-11-26 1628 goto free_sdhci;
95f25efe0ce22e Wolfram Sang 2010-10-15 1629 }
52dac6150580f3 Sascha Hauer 2012-03-07 1630
52dac6150580f3 Sascha Hauer 2012-03-07 1631 imx_data->clk_ahb = devm_clk_get(&pdev->dev, "ahb");
52dac6150580f3 Sascha Hauer 2012-03-07 1632 if (IS_ERR(imx_data->clk_ahb)) {
52dac6150580f3 Sascha Hauer 2012-03-07 1633 err = PTR_ERR(imx_data->clk_ahb);
e3af31c6c61fd0 Shawn Guo 2012-11-26 1634 goto free_sdhci;
52dac6150580f3 Sascha Hauer 2012-03-07 1635 }
52dac6150580f3 Sascha Hauer 2012-03-07 1636
52dac6150580f3 Sascha Hauer 2012-03-07 1637 imx_data->clk_per = devm_clk_get(&pdev->dev, "per");
52dac6150580f3 Sascha Hauer 2012-03-07 1638 if (IS_ERR(imx_data->clk_per)) {
52dac6150580f3 Sascha Hauer 2012-03-07 1639 err = PTR_ERR(imx_data->clk_per);
e3af31c6c61fd0 Shawn Guo 2012-11-26 @1640 goto free_sdhci;
52dac6150580f3 Sascha Hauer 2012-03-07 1641 }
52dac6150580f3 Sascha Hauer 2012-03-07 1642
52dac6150580f3 Sascha Hauer 2012-03-07 1643 pltfm_host->clk = imx_data->clk_per;
a974862faee199 Dong Aisheng 2013-12-26 1644 pltfm_host->clock = clk_get_rate(pltfm_host->clk);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1645 err = clk_prepare_enable(imx_data->clk_per);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1646 if (err)
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1647 goto free_sdhci;
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1648 err = clk_prepare_enable(imx_data->clk_ipg);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1649 if (err)
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1650 goto disable_per_clk;
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1651 err = clk_prepare_enable(imx_data->clk_ahb);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1652 if (err)
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1653 goto disable_ipg_clk;
95f25efe0ce22e Wolfram Sang 2010-10-15 1654
ad93220de7da1f Dong Aisheng 2013-09-13 1655 imx_data->pinctrl = devm_pinctrl_get(&pdev->dev);
9e70ff99ee871e Haibo Chen 2020-08-24 1656 if (IS_ERR(imx_data->pinctrl))
b62eee9f804ed1 Haibo Chen 2020-02-19 1657 dev_warn(mmc_dev(host->mmc), "could not get pinctrl\n");
e62d8b8fe73518 Dong Aisheng 2012-05-11 1658
69ed60e07bd2bb Dong Aisheng 2013-10-18 1659 if (esdhc_is_usdhc(imx_data)) {
69ed60e07bd2bb Dong Aisheng 2013-10-18 1660 host->quirks2 |= SDHCI_QUIRK2_PRESET_VALUE_BROKEN;
09c8192be713a3 Stefan Agner 2018-06-28 1661 host->mmc->caps |= MMC_CAP_1_8V_DDR | MMC_CAP_3_3V_DDR;
f6140462611308 Haibo Chen 2020-05-27 1662
f6140462611308 Haibo Chen 2020-05-27 1663 /* GPIO CD can be set as a wakeup source */
f6140462611308 Haibo Chen 2020-05-27 1664 host->mmc->caps |= MMC_CAP_CD_WAKE;
f6140462611308 Haibo Chen 2020-05-27 1665
4245afff8b2414 Dong Aisheng 2015-05-27 1666 if (!(imx_data->socdata->flags & ESDHC_FLAG_HS200))
4245afff8b2414 Dong Aisheng 2015-05-27 1667 host->quirks2 |= SDHCI_QUIRK2_BROKEN_HS200;
a75dcbf490ac1b Dong Aisheng 2016-07-12 1668
a75dcbf490ac1b Dong Aisheng 2016-07-12 1669 /* clear tuning bits in case ROM has set it already */
a75dcbf490ac1b Dong Aisheng 2016-07-12 1670 writel(0x0, host->ioaddr + ESDHC_MIX_CTRL);
869f8a69bb3a4a Adrian Hunter 2018-11-15 1671 writel(0x0, host->ioaddr + SDHCI_AUTO_CMD_STATUS);
a75dcbf490ac1b Dong Aisheng 2016-07-12 1672 writel(0x0, host->ioaddr + ESDHC_TUNE_CTRL_STATUS);
de3e1dd09b726d BOUGH CHEN 2018-12-21 1673
de3e1dd09b726d BOUGH CHEN 2018-12-21 1674 /*
de3e1dd09b726d BOUGH CHEN 2018-12-21 1675 * Link usdhc specific mmc_host_ops execute_tuning function,
de3e1dd09b726d BOUGH CHEN 2018-12-21 1676 * to replace the standard one in sdhci_ops.
de3e1dd09b726d BOUGH CHEN 2018-12-21 1677 */
de3e1dd09b726d BOUGH CHEN 2018-12-21 1678 host->mmc_host_ops.execute_tuning = usdhc_execute_tuning;
69ed60e07bd2bb Dong Aisheng 2013-10-18 1679 }
f750ba9b8db2a9 Shawn Guo 2011-11-10 1680
6e9fd28e1f2422 Dong Aisheng 2013-10-18 1681 if (imx_data->socdata->flags & ESDHC_FLAG_MAN_TUNING)
6e9fd28e1f2422 Dong Aisheng 2013-10-18 1682 sdhci_esdhc_ops.platform_execute_tuning =
6e9fd28e1f2422 Dong Aisheng 2013-10-18 1683 esdhc_executing_tuning;
8b2bb0adce2c0c Dong Aisheng 2013-11-04 1684
18094430d6b504 Dong Aisheng 2015-05-27 1685 if (imx_data->socdata->flags & ESDHC_FLAG_ERR004536)
18094430d6b504 Dong Aisheng 2015-05-27 1686 host->quirks |= SDHCI_QUIRK_BROKEN_ADMA;
18094430d6b504 Dong Aisheng 2015-05-27 1687
28b07674f28709 Haibo Chen 2015-08-11 1688 if (imx_data->socdata->flags & ESDHC_FLAG_HS400)
28b07674f28709 Haibo Chen 2015-08-11 1689 host->quirks2 |= SDHCI_QUIRK2_CAPS_BIT63_FOR_HS400;
28b07674f28709 Haibo Chen 2015-08-11 1690
74898cbcbfc4be Haibo Chen 2020-02-19 1691 if (imx_data->socdata->flags & ESDHC_FLAG_BROKEN_AUTO_CMD23)
74898cbcbfc4be Haibo Chen 2020-02-19 1692 host->quirks2 |= SDHCI_QUIRK2_ACMD23_BROKEN;
74898cbcbfc4be Haibo Chen 2020-02-19 1693
029e2476f9e675 BOUGH CHEN 2019-01-07 1694 if (imx_data->socdata->flags & ESDHC_FLAG_HS400_ES) {
029e2476f9e675 BOUGH CHEN 2019-01-07 1695 host->mmc->caps2 |= MMC_CAP2_HS400_ES;
029e2476f9e675 BOUGH CHEN 2019-01-07 1696 host->mmc_host_ops.hs400_enhanced_strobe =
029e2476f9e675 BOUGH CHEN 2019-01-07 1697 esdhc_hs400_enhanced_strobe;
029e2476f9e675 BOUGH CHEN 2019-01-07 1698 }
029e2476f9e675 BOUGH CHEN 2019-01-07 1699
bb6e358169bf62 BOUGH CHEN 2019-01-07 1700 if (imx_data->socdata->flags & ESDHC_FLAG_CQHCI) {
bcdb530125a2db BOUGH CHEN 2019-01-07 1701 host->mmc->caps2 |= MMC_CAP2_CQE | MMC_CAP2_CQE_DCMD;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1702 cq_host = devm_kzalloc(&pdev->dev, sizeof(*cq_host), GFP_KERNEL);
9a633f3bfb9784 Wei Yongjun 2019-01-16 1703 if (!cq_host) {
9a633f3bfb9784 Wei Yongjun 2019-01-16 1704 err = -ENOMEM;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1705 goto disable_ahb_clk;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1706 }
bb6e358169bf62 BOUGH CHEN 2019-01-07 1707
bb6e358169bf62 BOUGH CHEN 2019-01-07 1708 cq_host->mmio = host->ioaddr + ESDHC_CQHCI_ADDR_OFFSET;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1709 cq_host->ops = &esdhc_cqhci_ops;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1710
bb6e358169bf62 BOUGH CHEN 2019-01-07 1711 err = cqhci_init(cq_host, host->mmc, false);
bb6e358169bf62 BOUGH CHEN 2019-01-07 1712 if (err)
bb6e358169bf62 BOUGH CHEN 2019-01-07 1713 goto disable_ahb_clk;
bb6e358169bf62 BOUGH CHEN 2019-01-07 1714 }
bb6e358169bf62 BOUGH CHEN 2019-01-07 1715
91fa4252878afc Dong Aisheng 2015-07-22 1716 if (of_id)
91fa4252878afc Dong Aisheng 2015-07-22 1717 err = sdhci_esdhc_imx_probe_dt(pdev, host, imx_data);
91fa4252878afc Dong Aisheng 2015-07-22 1718 else
91fa4252878afc Dong Aisheng 2015-07-22 1719 err = sdhci_esdhc_imx_probe_nondt(pdev, host, imx_data);
91fa4252878afc Dong Aisheng 2015-07-22 1720 if (err)
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1721 goto disable_ahb_clk;
ad93220de7da1f Dong Aisheng 2013-09-13 1722
f3f5cf3dfc3a1b Dong Aisheng 2016-07-12 1723 sdhci_esdhc_imx_hwinit(host);
f3f5cf3dfc3a1b Dong Aisheng 2016-07-12 1724
85d6509dc8ca24 Shawn Guo 2011-05-27 1725 err = sdhci_add_host(host);
85d6509dc8ca24 Shawn Guo 2011-05-27 1726 if (err)
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1727 goto disable_ahb_clk;
85d6509dc8ca24 Shawn Guo 2011-05-27 1728
89d7e5c131228a Dong Aisheng 2013-11-04 1729 pm_runtime_set_active(&pdev->dev);
89d7e5c131228a Dong Aisheng 2013-11-04 1730 pm_runtime_set_autosuspend_delay(&pdev->dev, 50);
89d7e5c131228a Dong Aisheng 2013-11-04 1731 pm_runtime_use_autosuspend(&pdev->dev);
89d7e5c131228a Dong Aisheng 2013-11-04 1732 pm_suspend_ignore_children(&pdev->dev, 1);
77903c01d8c6c5 Ulf Hansson 2014-12-11 1733 pm_runtime_enable(&pdev->dev);
89d7e5c131228a Dong Aisheng 2013-11-04 1734
95f25efe0ce22e Wolfram Sang 2010-10-15 1735 return 0;
7e29c3060369c2 Wolfram Sang 2011-02-26 1736
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1737 disable_ahb_clk:
52dac6150580f3 Sascha Hauer 2012-03-07 1738 clk_disable_unprepare(imx_data->clk_ahb);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1739 disable_ipg_clk:
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1740 clk_disable_unprepare(imx_data->clk_ipg);
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1741 disable_per_clk:
17b1eb7f0bf3dc Fabio Estevam 2017-05-16 1742 clk_disable_unprepare(imx_data->clk_per);
e3af31c6c61fd0 Shawn Guo 2012-11-26 1743 free_sdhci:
1c4989b000aeac BOUGH CHEN 2019-04-29 1744 if (imx_data->socdata->flags & ESDHC_FLAG_PMQOS)
d1b98305916bc0 Rafael J. Wysocki 2020-02-12 1745 cpu_latency_qos_remove_request(&imx_data->pm_qos_req);
85d6509dc8ca24 Shawn Guo 2011-05-27 1746 sdhci_pltfm_free(pdev);
85d6509dc8ca24 Shawn Guo 2011-05-27 1747 return err;
95f25efe0ce22e Wolfram Sang 2010-10-15 1748 }
95f25efe0ce22e Wolfram Sang 2010-10-15 1749
:::::: The code at line 1640 was first introduced by commit
:::::: e3af31c6c61fd036af459e5d3c1260a6cbb7810e mmc: sdhci-imx-esdhc: use more devm_* functions
:::::: TO: Shawn Guo <shawn.guo@linaro.org>
:::::: CC: Chris Ball <cjb@laptop.org>
---
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: 24607 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-03-23 13:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-23 13:49 drivers/mmc/host/sdhci-esdhc-imx.c:1640 sdhci_esdhc_imx_probe() warn: missing error code 'err' kernel test robot
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.