Hi, kernel test robot noticed the following build warnings: [auto build test WARNING on shawnguo/for-next] [also build test WARNING on linus/master v6.12-rc3 next-20241014] [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/haibo-chen-nxp-com/mmc-sdhci-export-APIs-for-sdhci-irq-wakeup/20241014-140300 base: https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next patch link: https://lore.kernel.org/r/20241014060130.1162629-4-haibo.chen%40nxp.com patch subject: [PATCH 3/4] mmc: host: sdhci-esdhc-imx: save tuning value for the SDIO card as wakeup source config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20241015/202410150906.OEI0jyKN-lkp@xxxxxxxxx/config) compiler: alpha-linux-gcc (GCC) 13.3.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241015/202410150906.OEI0jyKN-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202410150906.OEI0jyKN-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): >> drivers/mmc/host/sdhci-esdhc-imx.c:1592:13: warning: 'sdhc_esdhc_tuning_restore' defined but not used [-Wunused-function] 1592 | static void sdhc_esdhc_tuning_restore(struct sdhci_host *host) | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/mmc/host/sdhci-esdhc-imx.c:1569:13: warning: 'sdhc_esdhc_tuning_save' defined but not used [-Wunused-function] 1569 | static void sdhc_esdhc_tuning_save(struct sdhci_host *host) | ^~~~~~~~~~~~~~~~~~~~~~ vim +/sdhc_esdhc_tuning_restore +1592 drivers/mmc/host/sdhci-esdhc-imx.c 1568 > 1569 static void sdhc_esdhc_tuning_save(struct sdhci_host *host) 1570 { 1571 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); 1572 struct pltfm_imx_data *imx_data = sdhci_pltfm_priv(pltfm_host); 1573 u32 reg; 1574 1575 /* 1576 * SD/eMMC do not need this tuning save because it will re-init 1577 * after system resume back. 1578 * Here save the tuning delay value for SDIO device since it may 1579 * keep power during system PM. And for usdhc, only SDR50 and 1580 * SDR104 mode for SDIO devide need to do tuning, and need to 1581 * save/restore. 1582 */ 1583 if ((host->timing == MMC_TIMING_UHS_SDR50) | 1584 (host->timing == MMC_TIMING_UHS_SDR104)) { 1585 reg = readl(host->ioaddr + ESDHC_TUNE_CTRL_STATUS); 1586 reg = (reg & ESDHC_TUNE_CTRL_STATUS_TAP_SEL_PRE_MASK) >> 1587 ESDHC_TUNE_CTRL_STATUS_TAP_SEL_PRE_SHIFT; 1588 imx_data->boarddata.saved_tuning_delay_cell = reg; 1589 } 1590 } 1591 > 1592 static void sdhc_esdhc_tuning_restore(struct sdhci_host *host) 1593 { 1594 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); 1595 struct pltfm_imx_data *imx_data = sdhci_pltfm_priv(pltfm_host); 1596 u32 reg; 1597 1598 if ((host->timing == MMC_TIMING_UHS_SDR50) | 1599 (host->timing == MMC_TIMING_UHS_SDR104)) { 1600 /* 1601 * restore the tuning delay value actually is a 1602 * manual tuning method, so clear the standard 1603 * tuning enable bit here. Will set back this 1604 * ESDHC_STD_TUNING_EN in esdhc_reset_tuning() 1605 * when trigger re-tuning. 1606 */ 1607 reg = readl(host->ioaddr + ESDHC_TUNING_CTRL); 1608 reg &= ~ESDHC_STD_TUNING_EN; 1609 writel(reg, host->ioaddr + ESDHC_TUNING_CTRL); 1610 1611 reg = readl(host->ioaddr + ESDHC_MIX_CTRL); 1612 reg |= ESDHC_MIX_CTRL_SMPCLK_SEL | ESDHC_MIX_CTRL_FBCLK_SEL; 1613 writel(reg, host->ioaddr + ESDHC_MIX_CTRL); 1614 1615 writel(imx_data->boarddata.saved_tuning_delay_cell << 1616 ESDHC_TUNE_CTRL_STATUS_DLY_CELL_SET_PRE_SHIFT, 1617 host->ioaddr + ESDHC_TUNE_CTRL_STATUS); 1618 } 1619 } 1620 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki