Re: [PATCH 1/2] mmc: cavium: Fix voltage reg. switching for card slots
From: kernel test robot <hidden>
Date: 2021-11-19 03:50:42
Also in:
linux-mmc, lkml, oe-kbuild-all
Hi Wojciech, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on robh/for-next] [also build test WARNING on linus/master v5.16-rc1 next-20211118] [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/Wojciech-Bartczak/mmc-cavium-Fix-MMC-supply-switching-for-cards/20211118-063028 base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next config: ia64-buildonly-randconfig-r005-20211119 (attached as .config) compiler: ia64-linux-gcc (GCC) 11.2.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/0day-ci/linux/commit/1a0194dde9d7f7c97c8257103835b04cbaf50f3b git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Wojciech-Bartczak/mmc-cavium-Fix-MMC-supply-switching-for-cards/20211118-063028 git checkout 1a0194dde9d7f7c97c8257103835b04cbaf50f3b # save the attached .config to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/mmc/host/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> All warnings (new ones prefixed by >>):
quoted
drivers/mmc/host/cavium.c:205: warning: expecting prototype for pre_switch(). Prototype was for switch_vqmmc() instead
vim +205 drivers/mmc/host/cavium.c
ba3869ff32e4a6 Jan Glauber 2017-03-30 195
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 196 /**
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 197 * pre_switch - Switch voltage regulators
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 198 * @prev: Current slot, can be NULL
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 199 * @next: Next slot
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 200 *
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 201 * Switch between regulators used by slots. This call has to be done
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 202 * after call to pre_switch().
ba3869ff32e4a6 Jan Glauber 2017-03-30 203 */
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 204 static void switch_vqmmc(struct cvm_mmc_slot *prev, struct cvm_mmc_slot *next)
ba3869ff32e4a6 Jan Glauber 2017-03-30 @205 {
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 206 bool same_vqmmc = false;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 207 struct regulator *next_vqmmc;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 208 struct regulator *prev_vqmmc;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 209
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 210 next_vqmmc = next->mmc->supply.vqmmc;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 211 if (prev) {
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 212 prev_vqmmc = prev->mmc->supply.vqmmc;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 213 /* Prev slot and next slot share vqmmc? */
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 214 same_vqmmc = prev_vqmmc == next_vqmmc;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 215 /* Disable old regulator, if not the same */
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 216 if (!same_vqmmc && !IS_ERR_OR_NULL(prev_vqmmc))
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 217 regulator_disable(prev_vqmmc);
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 218 }
ba3869ff32e4a6 Jan Glauber 2017-03-30 219
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 220 /* Enable regulator for next slot */
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 221 if (!same_vqmmc && !IS_ERR_OR_NULL(next_vqmmc)) {
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 222 int ret;
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 223
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 224 ret = regulator_enable(next_vqmmc);
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 225 if (ret)
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 226 dev_err(mmc_classdev(next->mmc),
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 227 "Can't enable vqmmc, error (%d)!\n", ret);
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 228 }
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 229 }
1a0194dde9d7f7 Wojciech Bartczak 2021-11-17 230
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Attachments
- .config.gz [application/gzip] 34903 bytes