Hi "Saheed, [FYI, it's a private test report for your RFC patch.] [auto build test ERROR on wsa/i2c/for-next] [also build test ERROR on linus/master v5.8-rc7] [cannot apply to ras/edac-for-next ide/master next-20200731] [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/Saheed-O-Bolarinwa/Drop-uses-of-pci_read_config_-return-value/20200801-202925 base: https://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-next config: x86_64-allmodconfig (attached as .config) compiler: gcc-9 (Debian 9.3.0-14) 9.3.0 reproduce (this is a W=1 build): # save the attached .config to linux build tree make W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): drivers/infiniband/hw/hfi1/pcie.c: In function 'load_eq_table': >> drivers/infiniband/hw/hfi1/pcie.c:788:24: error: expected ')' before '~' token 788 | if (violation == (32)~0) { | ~ ^ | ) drivers/infiniband/hw/hfi1/pcie.c:774:6: warning: unused variable 'ret' [-Wunused-variable] 774 | int ret; | ^~~ vim +788 drivers/infiniband/hw/hfi1/pcie.c 754 755 /* helper to format the value to write to hardware */ 756 #define eq_value(pre, curr, post) \ 757 ((((u32)(pre)) << \ 758 PCIE_CFG_REG_PL102_GEN3_EQ_PRE_CURSOR_PSET_SHIFT) \ 759 | (((u32)(curr)) << PCIE_CFG_REG_PL102_GEN3_EQ_CURSOR_PSET_SHIFT) \ 760 | (((u32)(post)) << \ 761 PCIE_CFG_REG_PL102_GEN3_EQ_POST_CURSOR_PSET_SHIFT)) 762 763 /* 764 * Load the given EQ preset table into the PCIe hardware. 765 */ 766 static int load_eq_table(struct hfi1_devdata *dd, const u8 eq[11][3], u8 fs, 767 u8 div) 768 { 769 struct pci_dev *pdev = dd->pcidev; 770 u32 hit_error = 0; 771 u32 violation; 772 u32 i; 773 u8 c_minus1, c0, c_plus1; 774 int ret; 775 776 for (i = 0; i < 11; i++) { 777 /* set index */ 778 pci_write_config_dword(pdev, PCIE_CFG_REG_PL103, i); 779 /* write the value */ 780 c_minus1 = eq[i][PREC] / div; 781 c0 = fs - (eq[i][PREC] / div) - (eq[i][POST] / div); 782 c_plus1 = eq[i][POST] / div; 783 pci_write_config_dword(pdev, PCIE_CFG_REG_PL102, 784 eq_value(c_minus1, c0, c_plus1)); 785 /* check if these coefficients violate EQ rules */ 786 pci_read_config_dword(dd->pcidev, 787 PCIE_CFG_REG_PL105, &violation); > 788 if (violation == (32)~0) { 789 dd_dev_err(dd, "Unable to read from PCI config\n"); 790 hit_error = 1; 791 break; 792 } 793 794 if (violation 795 & PCIE_CFG_REG_PL105_GEN3_EQ_VIOLATE_COEF_RULES_SMASK){ 796 if (hit_error == 0) { 797 dd_dev_err(dd, 798 "Gen3 EQ Table Coefficient rule violations\n"); 799 dd_dev_err(dd, " prec attn post\n"); 800 } 801 dd_dev_err(dd, " p%02d: %02x %02x %02x\n", 802 i, (u32)eq[i][0], (u32)eq[i][1], 803 (u32)eq[i][2]); 804 dd_dev_err(dd, " %02x %02x %02x\n", 805 (u32)c_minus1, (u32)c0, (u32)c_plus1); 806 hit_error = 1; 807 } 808 } 809 if (hit_error) 810 return -EINVAL; 811 return 0; 812 } 813 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org