From: kernel test robot <lkp@intel.com> To: Viorel Suman <viorel.suman@nxp.com> Cc: clang-built-linux@googlegroups.com, kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, Mark Brown <broonie@kernel.org> Subject: sound/soc/fsl/fsl_xcvr.c:1048:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] Date: Fri, 20 Aug 2021 10:26:06 +0800 [thread overview] Message-ID: <202108201004.SfReyBA0-lkp@intel.com> (raw) [-- Attachment #1: Type: text/plain, Size: 17041 bytes --] tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: d992fe5318d8d7af9510b879439a3c7f283da442 commit: 28564486866fa889b78264360022c94836fa8072 ASoC: fsl_xcvr: Add XCVR ASoC CPU DAI driver date: 10 months ago config: arm-randconfig-c002-20210816 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 44d0a99a12ec7ead4d2f5ef649ba05b40f6d463d) 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 arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=28564486866fa889b78264360022c94836fa8072 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout 28564486866fa889b78264360022c94836fa8072 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm clang-analyzer If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> clang-analyzer warnings: (new ones prefixed by >>) include/linux/minmax.h:130:36: note: expanded from macro 'clamp_t' #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:110:27: note: expanded from macro 'min_t' #define min_t(type, x, y) __careful_cmp((type)(x), (type)(y), <) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:44:3: note: expanded from macro '__careful_cmp' __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:39:3: note: expanded from macro '__cmp_once' __cmp(unique_x, unique_y, op); }) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:34:26: note: expanded from macro '__cmp' #define __cmp(x, y, op) ((x) op (y) ? (x) : (y)) ^~~ drivers/hwmon/lm75.h:27:14: note: '?' condition is true int ntemp = clamp_val(temp, LM75_TEMP_MIN, LM75_TEMP_MAX); ^ include/linux/minmax.h:143:32: note: expanded from macro 'clamp_val' #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi) ^ include/linux/minmax.h:130:36: note: expanded from macro 'clamp_t' #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi) ^ include/linux/minmax.h:110:27: note: expanded from macro 'min_t' #define min_t(type, x, y) __careful_cmp((type)(x), (type)(y), <) ^ include/linux/minmax.h:44:3: note: expanded from macro '__careful_cmp' __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op)) ^ include/linux/minmax.h:39:3: note: expanded from macro '__cmp_once' __cmp(unique_x, unique_y, op); }) ^ include/linux/minmax.h:34:26: note: expanded from macro '__cmp' #define __cmp(x, y, op) ((x) op (y) ? (x) : (y)) ^ drivers/hwmon/lm75.h:29:12: note: 'ntemp' is < 0 ntemp += (ntemp < 0 ? -250 : 250); ^~~~~ drivers/hwmon/lm75.h:29:12: note: '?' condition is true drivers/hwmon/lm75.h:30:29: note: The result of the left shift is undefined because the left operand is negative return (u16)((ntemp / 500) << 7); ~~~~~~~~~~~~~ ^ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 2 warnings generated. Suppressed 2 warnings (2 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 10 warnings generated. sound/soc/fsl/fsl_spdif.c:153:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:153:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:169:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:169:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:221:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:221:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:238:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:238:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:270:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:270:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:372:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:372:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:844:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:844:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 4 warnings generated. >> sound/soc/fsl/fsl_xcvr.c:1048:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct device *dev = &xcvr->pdev->dev; ^~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_xcvr.c:1048:17: note: Value stored to 'dev' during its initialization is never read struct device *dev = &xcvr->pdev->dev; ^~~ ~~~~~~~~~~~~~~~~ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 4 warnings generated. sound/soc/img/img-spdif-in.c:787:30: warning: The result of the left shift is undefined because the left operand is negative [clang-analyzer-core.UndefinedBinaryOperatorResult] reg |= (spdif->lock_release << IMG_SPDIF_IN_CTL_LOCKLO_SHIFT) & ~~~~~~~~~~~~~~~~~~~ ^ sound/soc/img/img-spdif-in.c:728:6: note: Assuming 'spdif' is non-null if (!spdif) ^~~~~~ sound/soc/img/img-spdif-in.c:728:2: note: Taking false branch if (!spdif) ^ sound/soc/img/img-spdif-in.c:731:2: note: Calling 'platform_set_drvdata' platform_set_drvdata(pdev, spdif); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_device.h:239:2: note: Calling 'dev_set_drvdata' dev_set_drvdata(&pdev->dev, data); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/device.h:663:1: note: Returning without writing to 'data->lock_release' } ^ include/linux/platform_device.h:239:2: note: Returning from 'dev_set_drvdata' dev_set_drvdata(&pdev->dev, data); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_device.h:240:1: note: Returning without writing to 'data->lock_release' } ^ sound/soc/img/img-spdif-in.c:731:2: note: Returning from 'platform_set_drvdata' platform_set_drvdata(pdev, spdif); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:6: note: Calling 'IS_ERR' if (IS_ERR(base)) ^~~~~~~~~~~~ include/linux/err.h:36:9: note: Assuming the condition is false return IS_ERR_VALUE((unsigned long)ptr); ^ include/linux/err.h:22:34: note: expanded from macro 'IS_ERR_VALUE' #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO) ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:78:42: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ include/linux/err.h:36:2: note: Returning zero, which participates in a condition later return IS_ERR_VALUE((unsigned long)ptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:6: note: Returning from 'IS_ERR' if (IS_ERR(base)) ^~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:2: note: Taking false branch if (IS_ERR(base)) ^ sound/soc/img/img-spdif-in.c:743:6: note: Calling 'IS_ERR' if (IS_ERR(spdif->clk_sys)) { ^~~~~~~~~~~~~~~~~~~~~~ include/linux/err.h:36:9: note: Assuming the condition is false return IS_ERR_VALUE((unsigned long)ptr); ^ include/linux/err.h:22:34: note: expanded from macro 'IS_ERR_VALUE' #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO) ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:78:42: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ include/linux/err.h:36:2: note: Returning zero, which participates in a condition later return IS_ERR_VALUE((unsigned long)ptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:743:6: note: Returning from 'IS_ERR' if (IS_ERR(spdif->clk_sys)) { ^~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:743:2: note: Taking false branch if (IS_ERR(spdif->clk_sys)) { ^ sound/soc/img/img-spdif-in.c:750:7: note: Calling 'pm_runtime_enabled' if (!pm_runtime_enabled(&pdev->dev)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/pm_runtime.h:263:61: note: Returning zero, which participates in a condition later static inline bool pm_runtime_enabled(struct device *dev) { return false; } ^~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:750:7: note: Returning from 'pm_runtime_enabled' if (!pm_runtime_enabled(&pdev->dev)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:750:2: note: Taking true branch if (!pm_runtime_enabled(&pdev->dev)) { ^ sound/soc/img/img-spdif-in.c:751:9: note: Calling 'img_spdif_in_runtime_resume' ret = img_spdif_in_runtime_resume(&pdev->dev); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:104:8: note: Calling 'clk_prepare_enable' ret = clk_prepare_enable(spdif->clk_sys); vim +/dev +1048 sound/soc/fsl/fsl_xcvr.c 1044 1045 static irqreturn_t irq0_isr(int irq, void *devid) 1046 { 1047 struct fsl_xcvr *xcvr = (struct fsl_xcvr *)devid; > 1048 struct device *dev = &xcvr->pdev->dev; 1049 struct regmap *regmap = xcvr->regmap; 1050 void __iomem *reg_ctrl, *reg_buff; 1051 u32 isr, isr_clr = 0, val, i; 1052 1053 regmap_read(regmap, FSL_XCVR_EXT_ISR, &isr); 1054 1055 if (isr & FSL_XCVR_IRQ_NEW_CS) { 1056 dev_dbg(dev, "Received new CS block\n"); 1057 isr_clr |= FSL_XCVR_IRQ_NEW_CS; 1058 /* Data RAM is 4KiB, last two pages: 8 and 9. Select page 8. */ 1059 regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, 1060 FSL_XCVR_EXT_CTRL_PAGE_MASK, 1061 FSL_XCVR_EXT_CTRL_PAGE(8)); 1062 1063 /* Find updated CS buffer */ 1064 reg_ctrl = xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_0; 1065 reg_buff = xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_0; 1066 memcpy_fromio(&val, reg_ctrl, sizeof(val)); 1067 if (!val) { 1068 reg_ctrl = xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_1; 1069 reg_buff = xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_1; 1070 memcpy_fromio(&val, reg_ctrl, sizeof(val)); 1071 } 1072 1073 if (val) { 1074 /* copy CS buffer */ 1075 memcpy_fromio(&xcvr->rx_iec958.status, reg_buff, 1076 sizeof(xcvr->rx_iec958.status)); 1077 for (i = 0; i < 6; i++) { 1078 val = *(u32 *)(xcvr->rx_iec958.status + i*4); 1079 *(u32 *)(xcvr->rx_iec958.status + i*4) = 1080 bitrev32(val); 1081 } 1082 /* clear CS control register */ 1083 memset_io(reg_ctrl, 0, sizeof(val)); 1084 } 1085 } 1086 if (isr & FSL_XCVR_IRQ_NEW_UD) { 1087 dev_dbg(dev, "Received new UD block\n"); 1088 isr_clr |= FSL_XCVR_IRQ_NEW_UD; 1089 } 1090 if (isr & FSL_XCVR_IRQ_MUTE) { 1091 dev_dbg(dev, "HW mute bit detected\n"); 1092 isr_clr |= FSL_XCVR_IRQ_MUTE; 1093 } 1094 if (isr & FSL_XCVR_IRQ_FIFO_UOFL_ERR) { 1095 dev_dbg(dev, "RX/TX FIFO full/empty\n"); 1096 isr_clr |= FSL_XCVR_IRQ_FIFO_UOFL_ERR; 1097 } 1098 if (isr & FSL_XCVR_IRQ_ARC_MODE) { 1099 dev_dbg(dev, "CMDC SM falls out of eARC mode\n"); 1100 isr_clr |= FSL_XCVR_IRQ_ARC_MODE; 1101 } 1102 if (isr & FSL_XCVR_IRQ_DMA_RD_REQ) { 1103 dev_dbg(dev, "DMA read request\n"); 1104 isr_clr |= FSL_XCVR_IRQ_DMA_RD_REQ; 1105 } 1106 if (isr & FSL_XCVR_IRQ_DMA_WR_REQ) { 1107 dev_dbg(dev, "DMA write request\n"); 1108 isr_clr |= FSL_XCVR_IRQ_DMA_WR_REQ; 1109 } 1110 1111 if (isr_clr) { 1112 regmap_write(regmap, FSL_XCVR_EXT_ISR_CLR, isr_clr); 1113 return IRQ_HANDLED; 1114 } 1115 1116 return IRQ_NONE; 1117 } 1118 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 26908 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: sound/soc/fsl/fsl_xcvr.c:1048:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] Date: Fri, 20 Aug 2021 10:26:06 +0800 [thread overview] Message-ID: <202108201004.SfReyBA0-lkp@intel.com> (raw) [-- Attachment #1: Type: text/plain, Size: 17349 bytes --] tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: d992fe5318d8d7af9510b879439a3c7f283da442 commit: 28564486866fa889b78264360022c94836fa8072 ASoC: fsl_xcvr: Add XCVR ASoC CPU DAI driver date: 10 months ago config: arm-randconfig-c002-20210816 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 44d0a99a12ec7ead4d2f5ef649ba05b40f6d463d) 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 arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=28564486866fa889b78264360022c94836fa8072 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout 28564486866fa889b78264360022c94836fa8072 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm clang-analyzer If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> clang-analyzer warnings: (new ones prefixed by >>) include/linux/minmax.h:130:36: note: expanded from macro 'clamp_t' #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:110:27: note: expanded from macro 'min_t' #define min_t(type, x, y) __careful_cmp((type)(x), (type)(y), <) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:44:3: note: expanded from macro '__careful_cmp' __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:39:3: note: expanded from macro '__cmp_once' __cmp(unique_x, unique_y, op); }) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:34:26: note: expanded from macro '__cmp' #define __cmp(x, y, op) ((x) op (y) ? (x) : (y)) ^~~ drivers/hwmon/lm75.h:27:14: note: '?' condition is true int ntemp = clamp_val(temp, LM75_TEMP_MIN, LM75_TEMP_MAX); ^ include/linux/minmax.h:143:32: note: expanded from macro 'clamp_val' #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi) ^ include/linux/minmax.h:130:36: note: expanded from macro 'clamp_t' #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi) ^ include/linux/minmax.h:110:27: note: expanded from macro 'min_t' #define min_t(type, x, y) __careful_cmp((type)(x), (type)(y), <) ^ include/linux/minmax.h:44:3: note: expanded from macro '__careful_cmp' __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op)) ^ include/linux/minmax.h:39:3: note: expanded from macro '__cmp_once' __cmp(unique_x, unique_y, op); }) ^ include/linux/minmax.h:34:26: note: expanded from macro '__cmp' #define __cmp(x, y, op) ((x) op (y) ? (x) : (y)) ^ drivers/hwmon/lm75.h:29:12: note: 'ntemp' is < 0 ntemp += (ntemp < 0 ? -250 : 250); ^~~~~ drivers/hwmon/lm75.h:29:12: note: '?' condition is true drivers/hwmon/lm75.h:30:29: note: The result of the left shift is undefined because the left operand is negative return (u16)((ntemp / 500) << 7); ~~~~~~~~~~~~~ ^ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 2 warnings generated. Suppressed 2 warnings (2 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 10 warnings generated. sound/soc/fsl/fsl_spdif.c:153:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:153:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:169:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:169:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:221:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:221:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:238:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:238:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:270:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:270:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:372:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:372:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:844:26: warning: Value stored to 'pdev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_spdif.c:844:26: note: Value stored to 'pdev' during its initialization is never read struct platform_device *pdev = spdif_priv->pdev; ^~~~ ~~~~~~~~~~~~~~~~ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 4 warnings generated. >> sound/soc/fsl/fsl_xcvr.c:1048:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] struct device *dev = &xcvr->pdev->dev; ^~~ ~~~~~~~~~~~~~~~~ sound/soc/fsl/fsl_xcvr.c:1048:17: note: Value stored to 'dev' during its initialization is never read struct device *dev = &xcvr->pdev->dev; ^~~ ~~~~~~~~~~~~~~~~ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 4 warnings generated. sound/soc/img/img-spdif-in.c:787:30: warning: The result of the left shift is undefined because the left operand is negative [clang-analyzer-core.UndefinedBinaryOperatorResult] reg |= (spdif->lock_release << IMG_SPDIF_IN_CTL_LOCKLO_SHIFT) & ~~~~~~~~~~~~~~~~~~~ ^ sound/soc/img/img-spdif-in.c:728:6: note: Assuming 'spdif' is non-null if (!spdif) ^~~~~~ sound/soc/img/img-spdif-in.c:728:2: note: Taking false branch if (!spdif) ^ sound/soc/img/img-spdif-in.c:731:2: note: Calling 'platform_set_drvdata' platform_set_drvdata(pdev, spdif); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_device.h:239:2: note: Calling 'dev_set_drvdata' dev_set_drvdata(&pdev->dev, data); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/device.h:663:1: note: Returning without writing to 'data->lock_release' } ^ include/linux/platform_device.h:239:2: note: Returning from 'dev_set_drvdata' dev_set_drvdata(&pdev->dev, data); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_device.h:240:1: note: Returning without writing to 'data->lock_release' } ^ sound/soc/img/img-spdif-in.c:731:2: note: Returning from 'platform_set_drvdata' platform_set_drvdata(pdev, spdif); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:6: note: Calling 'IS_ERR' if (IS_ERR(base)) ^~~~~~~~~~~~ include/linux/err.h:36:9: note: Assuming the condition is false return IS_ERR_VALUE((unsigned long)ptr); ^ include/linux/err.h:22:34: note: expanded from macro 'IS_ERR_VALUE' #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO) ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:78:42: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ include/linux/err.h:36:2: note: Returning zero, which participates in a condition later return IS_ERR_VALUE((unsigned long)ptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:6: note: Returning from 'IS_ERR' if (IS_ERR(base)) ^~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:737:2: note: Taking false branch if (IS_ERR(base)) ^ sound/soc/img/img-spdif-in.c:743:6: note: Calling 'IS_ERR' if (IS_ERR(spdif->clk_sys)) { ^~~~~~~~~~~~~~~~~~~~~~ include/linux/err.h:36:9: note: Assuming the condition is false return IS_ERR_VALUE((unsigned long)ptr); ^ include/linux/err.h:22:34: note: expanded from macro 'IS_ERR_VALUE' #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO) ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:78:42: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ include/linux/err.h:36:2: note: Returning zero, which participates in a condition later return IS_ERR_VALUE((unsigned long)ptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:743:6: note: Returning from 'IS_ERR' if (IS_ERR(spdif->clk_sys)) { ^~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:743:2: note: Taking false branch if (IS_ERR(spdif->clk_sys)) { ^ sound/soc/img/img-spdif-in.c:750:7: note: Calling 'pm_runtime_enabled' if (!pm_runtime_enabled(&pdev->dev)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/pm_runtime.h:263:61: note: Returning zero, which participates in a condition later static inline bool pm_runtime_enabled(struct device *dev) { return false; } ^~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:750:7: note: Returning from 'pm_runtime_enabled' if (!pm_runtime_enabled(&pdev->dev)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:750:2: note: Taking true branch if (!pm_runtime_enabled(&pdev->dev)) { ^ sound/soc/img/img-spdif-in.c:751:9: note: Calling 'img_spdif_in_runtime_resume' ret = img_spdif_in_runtime_resume(&pdev->dev); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sound/soc/img/img-spdif-in.c:104:8: note: Calling 'clk_prepare_enable' ret = clk_prepare_enable(spdif->clk_sys); vim +/dev +1048 sound/soc/fsl/fsl_xcvr.c 1044 1045 static irqreturn_t irq0_isr(int irq, void *devid) 1046 { 1047 struct fsl_xcvr *xcvr = (struct fsl_xcvr *)devid; > 1048 struct device *dev = &xcvr->pdev->dev; 1049 struct regmap *regmap = xcvr->regmap; 1050 void __iomem *reg_ctrl, *reg_buff; 1051 u32 isr, isr_clr = 0, val, i; 1052 1053 regmap_read(regmap, FSL_XCVR_EXT_ISR, &isr); 1054 1055 if (isr & FSL_XCVR_IRQ_NEW_CS) { 1056 dev_dbg(dev, "Received new CS block\n"); 1057 isr_clr |= FSL_XCVR_IRQ_NEW_CS; 1058 /* Data RAM is 4KiB, last two pages: 8 and 9. Select page 8. */ 1059 regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, 1060 FSL_XCVR_EXT_CTRL_PAGE_MASK, 1061 FSL_XCVR_EXT_CTRL_PAGE(8)); 1062 1063 /* Find updated CS buffer */ 1064 reg_ctrl = xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_0; 1065 reg_buff = xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_0; 1066 memcpy_fromio(&val, reg_ctrl, sizeof(val)); 1067 if (!val) { 1068 reg_ctrl = xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_1; 1069 reg_buff = xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_1; 1070 memcpy_fromio(&val, reg_ctrl, sizeof(val)); 1071 } 1072 1073 if (val) { 1074 /* copy CS buffer */ 1075 memcpy_fromio(&xcvr->rx_iec958.status, reg_buff, 1076 sizeof(xcvr->rx_iec958.status)); 1077 for (i = 0; i < 6; i++) { 1078 val = *(u32 *)(xcvr->rx_iec958.status + i*4); 1079 *(u32 *)(xcvr->rx_iec958.status + i*4) = 1080 bitrev32(val); 1081 } 1082 /* clear CS control register */ 1083 memset_io(reg_ctrl, 0, sizeof(val)); 1084 } 1085 } 1086 if (isr & FSL_XCVR_IRQ_NEW_UD) { 1087 dev_dbg(dev, "Received new UD block\n"); 1088 isr_clr |= FSL_XCVR_IRQ_NEW_UD; 1089 } 1090 if (isr & FSL_XCVR_IRQ_MUTE) { 1091 dev_dbg(dev, "HW mute bit detected\n"); 1092 isr_clr |= FSL_XCVR_IRQ_MUTE; 1093 } 1094 if (isr & FSL_XCVR_IRQ_FIFO_UOFL_ERR) { 1095 dev_dbg(dev, "RX/TX FIFO full/empty\n"); 1096 isr_clr |= FSL_XCVR_IRQ_FIFO_UOFL_ERR; 1097 } 1098 if (isr & FSL_XCVR_IRQ_ARC_MODE) { 1099 dev_dbg(dev, "CMDC SM falls out of eARC mode\n"); 1100 isr_clr |= FSL_XCVR_IRQ_ARC_MODE; 1101 } 1102 if (isr & FSL_XCVR_IRQ_DMA_RD_REQ) { 1103 dev_dbg(dev, "DMA read request\n"); 1104 isr_clr |= FSL_XCVR_IRQ_DMA_RD_REQ; 1105 } 1106 if (isr & FSL_XCVR_IRQ_DMA_WR_REQ) { 1107 dev_dbg(dev, "DMA write request\n"); 1108 isr_clr |= FSL_XCVR_IRQ_DMA_WR_REQ; 1109 } 1110 1111 if (isr_clr) { 1112 regmap_write(regmap, FSL_XCVR_EXT_ISR_CLR, isr_clr); 1113 return IRQ_HANDLED; 1114 } 1115 1116 return IRQ_NONE; 1117 } 1118 --- 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: 26908 bytes --]
next reply other threads:[~2021-08-20 2:26 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-08-20 2:26 kernel test robot [this message] 2021-08-20 2:26 ` sound/soc/fsl/fsl_xcvr.c:1048:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] kernel test robot -- strict thread matches above, loose matches on Subject: below -- 2021-08-28 12:53 kernel test robot 2021-08-27 7:50 kernel test robot 2021-08-16 23:59 kernel test robot 2021-08-16 23:59 ` kernel test robot
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202108201004.SfReyBA0-lkp@intel.com \ --to=lkp@intel.com \ --cc=broonie@kernel.org \ --cc=clang-built-linux@googlegroups.com \ --cc=kbuild-all@lists.01.org \ --cc=linux-kernel@vger.kernel.org \ --cc=viorel.suman@nxp.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.