Re: [PATCH v2] irqchip/gicv3: Workaround for NVIDIA erratum T241-FABRIC-4
From: kernel test robot
Date: Wed Mar 15 2023 - 18:08:19 EST
Hi Shanker,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on arm64/for-next/core]
[also build test ERROR on tip/irq/core soc/for-next linus/master v6.3-rc2 next-20230315]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Shanker-Donthineni/irqchip-gicv3-Workaround-for-NVIDIA-erratum-T241-FABRIC-4/20230314-215648
base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
patch link: https://lore.kernel.org/r/20230314135128.2930580-1-sdonthineni%40nvidia.com
patch subject: [PATCH v2] irqchip/gicv3: Workaround for NVIDIA erratum T241-FABRIC-4
config: arm-buildonly-randconfig-r003-20230312 (https://download.01.org/0day-ci/archive/20230316/202303160555.3zGOmtIL-lkp@xxxxxxxxx/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project 67409911353323ca5edf2049ef0df54132fa1ca7)
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://github.com/intel-lab-lkp/linux/commit/f796361134151057b68a259013204e8fa5516aee
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Shanker-Donthineni/irqchip-gicv3-Workaround-for-NVIDIA-erratum-T241-FABRIC-4/20230314-215648
git checkout f796361134151057b68a259013204e8fa5516aee
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Link: https://lore.kernel.org/oe-kbuild-all/202303160555.3zGOmtIL-lkp@xxxxxxxxx/
All errors (new ones prefixed by >>):
>> drivers/irqchip/irq-gic-v3.c:1775:21: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
chip_bmask |= BIT(FIELD_GET(T241_CHIPN_MASK,
^
>> drivers/irqchip/irq-gic-v3.c:1786:12: error: call to undeclared function 'FIELD_PREP'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
phys |= FIELD_PREP(T241_CHIPN_MASK, i);
^
2 errors generated.
vim +/FIELD_GET +1775 drivers/irqchip/irq-gic-v3.c
1760
1761 static bool gic_enable_quirk_nvidia_t241(void *data)
1762 {
1763 unsigned long chip_bmask = 0;
1764 phys_addr_t phys;
1765 u32 i;
1766
1767 /* Check JEP106 code for NVIDIA T241 chip (036b:0241) */
1768 if ((smccc_soc_id_version < 0) ||
1769 ((smccc_soc_id_version & SMCCC_SOC_ID_MASK) != SMCCC_SOC_ID_T241)) {
1770 return false;
1771 }
1772
1773 /* Find the chips based on GICR regions PHYS addr */
1774 for (i = 0; i < gic_data.nr_redist_regions; i++) {
> 1775 chip_bmask |= BIT(FIELD_GET(T241_CHIPN_MASK,
1776 gic_data.redist_regions[i].phys_base));
1777 }
1778
1779 if (hweight32(chip_bmask) < 3)
1780 return false;
1781
1782 /* Setup GICD alias regions */
1783 for (i = 0; i < ARRAY_SIZE(t241_dist_base_alias); i++) {
1784 if (chip_bmask & BIT(i)) {
1785 phys = gic_data.dist_phys_base + T241_CHIP_GICDA_OFFSET;
> 1786 phys |= FIELD_PREP(T241_CHIPN_MASK, i);
1787 t241_dist_base_alias[i] = ioremap(phys, SZ_64K);
1788 WARN_ON_ONCE(!t241_dist_base_alias[i]);
1789 }
1790 }
1791 static_branch_enable(&gic_nvidia_t241_erratum);
1792 return true;
1793 }
1794
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests