Hi Piyush, Thank you for the patch! Yet something to improve: [auto build test ERROR on robh/for-next] [also build test ERROR on linus/master v6.2-rc1 next-20221226] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Piyush-Malgujar/drivers-mmc-sdhci-cadence-SD6-controller-support/20221219-222703 base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next patch link: https://lore.kernel.org/r/20221219142418.27949-3-pmalgujar%40marvell.com patch subject: [PATCH 2/5] drivers: mmc: sdhci-cadence: enable MMC_SDHCI_IO_ACCESSORS config: ia64-randconfig-c004-20230101 compiler: ia64-linux-gcc (GCC) 12.1.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/intel-lab-lkp/linux/commit/b087f4c6ad3997c952f7cfa57fb1fc5c4d1816ec git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Piyush-Malgujar/drivers-mmc-sdhci-cadence-SD6-controller-support/20221219-222703 git checkout b087f4c6ad3997c952f7cfa57fb1fc5c4d1816ec # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All errors (new ones prefixed by >>): ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o: in function `sdhci_cdns_probe': >> drivers/mmc/host/sdhci-cadence.c:1730: undefined reference to `sdhci_pltfm_init' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o: in function `sdhci_get_of_property': >> drivers/mmc/host/sdhci-pltfm.h:94: undefined reference to `sdhci_get_property' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o: in function `sdhci_cdns_probe': >> drivers/mmc/host/sdhci-cadence.c:1765: undefined reference to `sdhci_enable_v4_mode' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.c:1767: undefined reference to `__sdhci_read_caps' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.c:1767: undefined reference to `sdhci_add_host' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.c:1773: undefined reference to `sdhci_pltfm_free' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o: in function `sdhci_cdns_sd6_set_clock': >> drivers/mmc/host/sdhci-cadence.c:1375: undefined reference to `sdhci_set_clock' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o: in function `sdhci_cdns_set_uhs_signaling': >> drivers/mmc/host/sdhci-cadence.c:1245: undefined reference to `sdhci_set_uhs_signaling' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel+0x8): undefined reference to `sdhci_pltfm_unregister' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel.ro+0x80): undefined reference to `sdhci_set_bus_width' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel.ro+0x98): undefined reference to `sdhci_reset' >> ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel.ro+0x120): undefined reference to `sdhci_set_clock' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel.ro+0x170): undefined reference to `sdhci_set_bus_width' ia64-linux-ld: drivers/mmc/host/sdhci-cadence.o:(.data.rel.ro+0x188): undefined reference to `sdhci_reset' Kconfig warnings: (for reference only) WARNING: unmet direct dependencies detected for MMC_SDHCI_IO_ACCESSORS Depends on [n]: MMC [=y] && MMC_SDHCI [=n] Selected by [y]: - MMC_SDHCI_CN10K [=y] && MMC [=y] WARNING: unmet direct dependencies detected for MMC_SDHCI_CADENCE Depends on [n]: MMC [=y] && MMC_SDHCI_PLTFM [=n] && OF [=y] Selected by [y]: - MMC_SDHCI_CN10K [=y] && MMC [=y] vim +1730 drivers/mmc/host/sdhci-cadence.c d12990f9900f49 Piotr Sroka 2017-03-06 1705 ff6af28faff53a Masahiro Yamada 2016-12-08 1706 static int sdhci_cdns_probe(struct platform_device *pdev) ff6af28faff53a Masahiro Yamada 2016-12-08 1707 { ff6af28faff53a Masahiro Yamada 2016-12-08 1708 struct sdhci_host *host; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1709 const struct sdhci_cdns_of_data *data; ff6af28faff53a Masahiro Yamada 2016-12-08 1710 struct sdhci_pltfm_host *pltfm_host; ff6af28faff53a Masahiro Yamada 2016-12-08 1711 struct sdhci_cdns_priv *priv; ff6af28faff53a Masahiro Yamada 2016-12-08 1712 struct clk *clk; ff6af28faff53a Masahiro Yamada 2016-12-08 1713 int ret; a89c472d8b55c5 Piotr Sroka 2017-03-21 1714 struct device *dev = &pdev->dev; ff6af28faff53a Masahiro Yamada 2016-12-08 1715 edf98579065950 Piotr Sroka 2017-03-21 1716 clk = devm_clk_get(dev, NULL); ff6af28faff53a Masahiro Yamada 2016-12-08 1717 if (IS_ERR(clk)) ff6af28faff53a Masahiro Yamada 2016-12-08 1718 return PTR_ERR(clk); ff6af28faff53a Masahiro Yamada 2016-12-08 1719 ff6af28faff53a Masahiro Yamada 2016-12-08 1720 ret = clk_prepare_enable(clk); ff6af28faff53a Masahiro Yamada 2016-12-08 1721 if (ret) ff6af28faff53a Masahiro Yamada 2016-12-08 1722 return ret; ff6af28faff53a Masahiro Yamada 2016-12-08 1723 18b587b45c13bb Masahiro Yamada 2020-03-12 1724 data = of_device_get_match_data(dev); 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1725 if (!data) { 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1726 return PTR_ERR(clk); 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1727 goto disable_clk; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1728 } 18b587b45c13bb Masahiro Yamada 2020-03-12 1729 8bcfc23a884699 Dhananjay Kangude 2022-12-19 @1730 host = sdhci_pltfm_init(pdev, data->pltfm_data, sizeof(*priv)); ff6af28faff53a Masahiro Yamada 2016-12-08 1731 if (IS_ERR(host)) { ff6af28faff53a Masahiro Yamada 2016-12-08 1732 ret = PTR_ERR(host); ff6af28faff53a Masahiro Yamada 2016-12-08 1733 goto disable_clk; ff6af28faff53a Masahiro Yamada 2016-12-08 1734 } ff6af28faff53a Masahiro Yamada 2016-12-08 1735 ff6af28faff53a Masahiro Yamada 2016-12-08 1736 pltfm_host = sdhci_priv(host); ff6af28faff53a Masahiro Yamada 2016-12-08 1737 pltfm_host->clk = clk; ff6af28faff53a Masahiro Yamada 2016-12-08 1738 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1739 host->clk_mul = 0; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1740 host->max_clk = SDMCLK_MAX_FREQ; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1741 host->quirks |= SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1742 host->quirks2 |= SDHCI_QUIRK2_PRESET_VALUE_BROKEN; a232a8f2d10750 Masahiro Yamada 2017-08-23 1743 priv = sdhci_pltfm_priv(pltfm_host); ff6af28faff53a Masahiro Yamada 2016-12-08 1744 priv->hrs_addr = host->ioaddr; d12990f9900f49 Piotr Sroka 2017-03-06 1745 priv->enhanced_strobe = false; 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1746 priv->cdns_data = data->cdns_data; ff6af28faff53a Masahiro Yamada 2016-12-08 1747 host->ioaddr += SDHCI_CDNS_SRS_BASE; d12990f9900f49 Piotr Sroka 2017-03-06 1748 host->mmc_host_ops.hs400_enhanced_strobe = d12990f9900f49 Piotr Sroka 2017-03-06 1749 sdhci_cdns_hs400_enhanced_strobe; ff6af28faff53a Masahiro Yamada 2016-12-08 1750 861183f115cd80 Piotr Sroka 2017-04-11 1751 sdhci_get_of_property(pdev); 861183f115cd80 Piotr Sroka 2017-04-11 1752 ff6af28faff53a Masahiro Yamada 2016-12-08 1753 ret = mmc_of_parse(host->mmc); ff6af28faff53a Masahiro Yamada 2016-12-08 1754 if (ret) ff6af28faff53a Masahiro Yamada 2016-12-08 1755 goto free; ff6af28faff53a Masahiro Yamada 2016-12-08 1756 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1757 ret = data->phy_probe(pdev, priv); 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1758 if (ret) 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1759 goto free; a232a8f2d10750 Masahiro Yamada 2017-08-23 1760 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1761 ret = priv->cdns_data->phy_init(priv); a89c472d8b55c5 Piotr Sroka 2017-03-21 1762 if (ret) a89c472d8b55c5 Piotr Sroka 2017-03-21 1763 goto free; ff6af28faff53a Masahiro Yamada 2016-12-08 1764 8bcfc23a884699 Dhananjay Kangude 2022-12-19 @1765 sdhci_enable_v4_mode(host); 8bcfc23a884699 Dhananjay Kangude 2022-12-19 1766 __sdhci_read_caps(host, NULL, NULL, NULL); ff6af28faff53a Masahiro Yamada 2016-12-08 @1767 ret = sdhci_add_host(host); ff6af28faff53a Masahiro Yamada 2016-12-08 1768 if (ret) ff6af28faff53a Masahiro Yamada 2016-12-08 1769 goto free; ff6af28faff53a Masahiro Yamada 2016-12-08 1770 ff6af28faff53a Masahiro Yamada 2016-12-08 1771 return 0; ff6af28faff53a Masahiro Yamada 2016-12-08 1772 free: ff6af28faff53a Masahiro Yamada 2016-12-08 @1773 sdhci_pltfm_free(pdev); ff6af28faff53a Masahiro Yamada 2016-12-08 1774 disable_clk: ff6af28faff53a Masahiro Yamada 2016-12-08 1775 clk_disable_unprepare(clk); ff6af28faff53a Masahiro Yamada 2016-12-08 1776 ff6af28faff53a Masahiro Yamada 2016-12-08 1777 return ret; ff6af28faff53a Masahiro Yamada 2016-12-08 1778 } ff6af28faff53a Masahiro Yamada 2016-12-08 1779 -- 0-DAY CI Kernel Test Service https://01.org/lkp