Messages in this thread |  | | Date | Sun, 10 Apr 2022 01:33:01 +0800 | From | kernel test robot <> | Subject | [jarkko-tpmdd:master 3/3] drivers/char/tpm/tpm_tis_synquacer.c:89:12: warning: incompatible pointer to integer conversion passing 'const u8 *' (aka 'const unsigned char *') to parameter of type 'u8' (aka 'unsigned char') |
| |
tree: git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git master head: b6e0cdb87bf37357489de1069d55bd59f008daeb commit: b6e0cdb87bf37357489de1069d55bd59f008daeb [3/3] tpm: Remove read16/read32/write32 calls from tpm_tis_phy_ops config: riscv-randconfig-r042-20220409 (https://download.01.org/0day-ci/archive/20220410/202204100151.9v5nSRu6-lkp@intel.com/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 256c6b0ba14e8a7ab6373b61b7193ea8c0a3651c) 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 riscv cross compiling tool for clang build # apt-get install binutils-riscv64-linux-gnu # https://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git/commit/?id=b6e0cdb87bf37357489de1069d55bd59f008daeb git remote add jarkko-tpmdd git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git git fetch --no-tags jarkko-tpmdd master git checkout b6e0cdb87bf37357489de1069d55bd59f008daeb # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/char/tpm/
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
In file included from drivers/char/tpm/tpm_tis_synquacer.c:14: In file included from drivers/char/tpm/tpm.h:28: include/linux/tpm_eventlog.h:167:6: warning: variable 'mapping_size' set but not used [-Wunused-but-set-variable] int mapping_size; ^ drivers/char/tpm/tpm_tis_synquacer.c:43:9: warning: unused variable 'result_le32' [-Wunused-variable] __le32 result_le32; ^ drivers/char/tpm/tpm_tis_synquacer.c:45:6: warning: unused variable 'result32' [-Wunused-variable] u32 result32; ^ drivers/char/tpm/tpm_tis_synquacer.c:42:9: warning: unused variable 'result_le16' [-Wunused-variable] __le16 result_le16; ^ drivers/char/tpm/tpm_tis_synquacer.c:44:6: warning: unused variable 'result16' [-Wunused-variable] u16 result16; ^ >> drivers/char/tpm/tpm_tis_synquacer.c:89:12: warning: incompatible pointer to integer conversion passing 'const u8 *' (aka 'const unsigned char *') to parameter of type 'u8' (aka 'unsigned char') [-Wint-conversion] iowrite8(&value[3], phy->iobase + addr + 3); ^~~~~~~~~ include/asm-generic/io.h:744:32: note: passing argument to parameter 'value' here static inline void iowrite8(u8 value, volatile void __iomem *addr) ^ drivers/char/tpm/tpm_tis_synquacer.c:90:12: warning: incompatible pointer to integer conversion passing 'const u8 *' (aka 'const unsigned char *') to parameter of type 'u8' (aka 'unsigned char') [-Wint-conversion] iowrite8(&value[2], phy->iobase + addr + 2); ^~~~~~~~~ include/asm-generic/io.h:744:32: note: passing argument to parameter 'value' here static inline void iowrite8(u8 value, volatile void __iomem *addr) ^ drivers/char/tpm/tpm_tis_synquacer.c:91:12: warning: incompatible pointer to integer conversion passing 'const u8 *' (aka 'const unsigned char *') to parameter of type 'u8' (aka 'unsigned char') [-Wint-conversion] iowrite8(&value[1], phy->iobase + addr + 1); ^~~~~~~~~ include/asm-generic/io.h:744:32: note: passing argument to parameter 'value' here static inline void iowrite8(u8 value, volatile void __iomem *addr) ^ drivers/char/tpm/tpm_tis_synquacer.c:92:12: warning: incompatible pointer to integer conversion passing 'const u8 *' (aka 'const unsigned char *') to parameter of type 'u8' (aka 'unsigned char') [-Wint-conversion] iowrite8(&value[0], phy->iobase + addr); ^~~~~~~~~ include/asm-generic/io.h:744:32: note: passing argument to parameter 'value' here static inline void iowrite8(u8 value, volatile void __iomem *addr) ^ drivers/char/tpm/tpm_tis_synquacer.c:73:9: warning: unused variable 'result_le32' [-Wunused-variable] __le32 result_le32; ^ drivers/char/tpm/tpm_tis_synquacer.c:74:6: warning: unused variable 'result16' [-Wunused-variable] u16 result16; ^ drivers/char/tpm/tpm_tis_synquacer.c:72:9: warning: unused variable 'result_le16' [-Wunused-variable] __le16 result_le16; ^ drivers/char/tpm/tpm_tis_synquacer.c:75:6: warning: unused variable 'result32' [-Wunused-variable] u32 result32; ^ 13 warnings generated.
vim +89 drivers/char/tpm/tpm_tis_synquacer.c
66 67 static int tpm_tis_synquacer_write_bytes(struct tpm_tis_data *data, u32 addr, 68 u16 len, const u8 *value, 69 enum tpm_tis_io_mode io_mode) 70 { 71 struct tpm_tis_synquacer_phy *phy = to_tpm_tis_tcg_phy(data); 72 __le16 result_le16; 73 __le32 result_le32; 74 u16 result16; 75 u32 result32; 76 77 switch (io_mode) { 78 case TPM_TIS_PHYS_8: 79 while (len--) 80 iowrite8(*value++, phy->iobase + addr); 81 break; 82 case TPM_TIS_PHYS_16: 83 return -EINVAL; 84 case TPM_TIS_PHYS_32: 85 /* 86 * Due to the limitation of SPI controller on SynQuacer, 87 * 16/32 bits access must be done in byte-wise and descending order. 88 */ > 89 iowrite8(&value[3], phy->iobase + addr + 3); 90 iowrite8(&value[2], phy->iobase + addr + 2); 91 iowrite8(&value[1], phy->iobase + addr + 1); 92 iowrite8(&value[0], phy->iobase + addr); 93 break; 94 } 95 96 return 0; 97 } 98
-- 0-DAY CI Kernel Test Service https://01.org/lkp
|  |