Hi AKASHI, [FYI, it's a private test report for your RFC patch.] [auto build test WARNING on linus/master] [also build test WARNING on v5.10-rc2] [cannot apply to v3.1 next-20201105] [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/AKASHI-Takahiro/Add-support-UHS-II-for-GL9755/20201106-103058 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 521b619acdc8f1f5acdac15b84f81fd9515b2aff config: x86_64-randconfig-a006-20201104 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 09ec07827b1128504457a93dee80b2ceee1af600) 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 # install x86_64 cross compiling tool for clang build # apt-get install binutils-x86-64-linux-gnu # https://github.com/0day-ci/linux/commit/d95febed81c44315d5b757c9dca1b7dd006c0bd3 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review AKASHI-Takahiro/Add-support-UHS-II-for-GL9755/20201106-103058 git checkout d95febed81c44315d5b757c9dca1b7dd006c0bd3 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> drivers/mmc/host/sdhci-uhs2.c:113:6: warning: variable 'pwr' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] if (mode != MMC_POWER_OFF) { ^~~~~~~~~~~~~~~~~~~~~ drivers/mmc/host/sdhci-uhs2.c:122:19: note: uninitialized use occurs here if (host->pwr == pwr) ^~~ drivers/mmc/host/sdhci-uhs2.c:113:2: note: remove the 'if' if its condition is always true if (mode != MMC_POWER_OFF) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/mmc/host/sdhci-uhs2.c:105:8: note: initialize the variable 'pwr' to silence this warning u8 pwr; ^ = '\0' drivers/mmc/host/sdhci-uhs2.c:187:12: warning: unused function 'sdhci_uhs2_host_ops_init' [-Wunused-function] static int sdhci_uhs2_host_ops_init(struct sdhci_host *host) ^ 2 warnings generated. vim +113 drivers/mmc/host/sdhci-uhs2.c 100 101 void sdhci_uhs2_set_power(struct sdhci_host *host, unsigned char mode, 102 unsigned short vdd) 103 { 104 struct mmc_host *mmc = host->mmc; 105 u8 pwr; 106 107 /* FIXME: check if flags & MMC_UHS2_SUPPORT? */ 108 if (!(host->mmc->caps & MMC_CAP_UHS2)) { 109 sdhci_set_power(host, mode, vdd); 110 return; 111 } 112 > 113 if (mode != MMC_POWER_OFF) { 114 pwr = sdhci_get_vdd_value(vdd); 115 if (!pwr) 116 WARN(1, "%s: Invalid vdd %#x\n", 117 mmc_hostname(host->mmc), vdd); 118 119 pwr |= SDHCI_VDD2_POWER_180; 120 } 121 122 if (host->pwr == pwr) 123 return; 124 host ->pwr = pwr; 125 126 if (pwr == 0) { 127 sdhci_writeb(host, 0, SDHCI_POWER_CONTROL); 128 129 if (!IS_ERR(host->mmc->supply.vmmc)) 130 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, 0); 131 if (!IS_ERR_OR_NULL(host->mmc->supply.vmmc2)) 132 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc2, 0); 133 134 if (host->quirks2 & SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON) 135 sdhci_runtime_pm_bus_off(host); 136 } else { 137 if (!IS_ERR(host->mmc->supply.vmmc)) 138 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, vdd); 139 if (!IS_ERR_OR_NULL(host->mmc->supply.vmmc2)) 140 /* support 1.8v only for now */ 141 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc2, 142 fls(MMC_VDD2_165_195) - 1); 143 144 /* 145 * Spec says that we should clear the power reg before setting 146 * a new value. Some controllers don't seem to like this though. 147 */ 148 if (!(host->quirks & SDHCI_QUIRK_SINGLE_POWER_WRITE)) 149 sdhci_writeb(host, 0, SDHCI_POWER_CONTROL); 150 151 /* 152 * At least the Marvell CaFe chip gets confused if we set the 153 * voltage and set turn on power at the same time, so set the 154 * voltage first. 155 */ 156 if (host->quirks & SDHCI_QUIRK_NO_SIMULT_VDD_AND_POWER) 157 sdhci_writeb(host, pwr, SDHCI_POWER_CONTROL); 158 159 /* vdd first */ 160 pwr |= SDHCI_POWER_ON; 161 sdhci_writeb(host, pwr & 0xf, SDHCI_POWER_CONTROL); 162 mdelay(5); 163 164 pwr |= SDHCI_VDD2_POWER_ON; 165 sdhci_writeb(host, pwr, SDHCI_POWER_CONTROL); 166 mdelay(5); 167 168 if (host->quirks2 & SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON) 169 sdhci_runtime_pm_bus_on(host); 170 171 /* 172 * Some controllers need an extra 10ms delay of 10ms before 173 * they can apply clock after applying power 174 */ 175 if (host->quirks & SDHCI_QUIRK_DELAY_AFTER_POWER) 176 mdelay(10); 177 } 178 } 179 EXPORT_SYMBOL_GPL(sdhci_uhs2_set_power); 180 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org