Re: [lpieralisi-pci:pci/aardvark 2/2] drivers/pci/controller/pci-aardvark.c:1071:54: error: 'PCI_EXP_SLTCAP_PSN_SHIFT' undeclared; did you mean 'PCI_EXP_SLTCAP_PSN'?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



seems that patch 04/18 is needed. Was it merged into another repository?

Marek


On Thu, 19 May 2022 01:26:22 +0800
kernel test robot <lkp@xxxxxxxxx> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git pci/aardvark
> head:   bf8dd34079057e2c761eb914b70b49f4a455fc18
> commit: bf8dd34079057e2c761eb914b70b49f4a455fc18 [2/2] PCI: aardvark: Fix reporting Slot capabilities on emulated bridge
> config: ia64-buildonly-randconfig-r003-20220518 (https://download.01.org/0day-ci/archive/20220519/202205190153.mz8wMTVG-lkp@xxxxxxxxx/config)
> compiler: ia64-linux-gcc (GCC) 11.3.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://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git/commit/?id=bf8dd34079057e2c761eb914b70b49f4a455fc18
>         git remote add lpieralisi-pci https://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git
>         git fetch --no-tags lpieralisi-pci pci/aardvark
>         git checkout bf8dd34079057e2c761eb914b70b49f4a455fc18
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/pci/controller/
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from arch/ia64/include/asm/pgtable.h:153,
>                     from include/linux/pgtable.h:6,
>                     from arch/ia64/include/asm/uaccess.h:40,
>                     from include/linux/uaccess.h:11,
>                     from arch/ia64/include/asm/sections.h:11,
>                     from include/linux/interrupt.h:21,
>                     from drivers/pci/controller/pci-aardvark.c:13:
>    arch/ia64/include/asm/mmu_context.h: In function 'reload_context':
>    arch/ia64/include/asm/mmu_context.h:127:48: warning: variable 'old_rr4' set but not used [-Wunused-but-set-variable]
>      127 |         unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4;
>          |                                                ^~~~~~~
>    In file included from include/linux/byteorder/little_endian.h:5,
>                     from arch/ia64/include/uapi/asm/byteorder.h:5,
>                     from include/asm-generic/bitops/le.h:6,
>                     from arch/ia64/include/asm/bitops.h:446,
>                     from include/linux/bitops.h:33,
>                     from include/linux/thread_info.h:27,
>                     from include/asm-generic/preempt.h:5,
>                     from ./arch/ia64/include/generated/asm/preempt.h:1,
>                     from include/linux/preempt.h:78,
>                     from include/linux/rcupdate.h:27,
>                     from include/linux/rculist.h:11,
>                     from include/linux/pid.h:5,
>                     from include/linux/sched.h:14,
>                     from include/linux/delay.h:23,
>                     from drivers/pci/controller/pci-aardvark.c:11:
>    drivers/pci/controller/pci-aardvark.c: In function 'advk_sw_pci_bridge_init':
> >> drivers/pci/controller/pci-aardvark.c:1071:54: error: 'PCI_EXP_SLTCAP_PSN_SHIFT' undeclared (first use in this function); did you mean 'PCI_EXP_SLTCAP_PSN'?  
>     1071 |         bridge->pcie_conf.slotcap = cpu_to_le32(1 << PCI_EXP_SLTCAP_PSN_SHIFT);
>          |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~
>    include/uapi/linux/byteorder/little_endian.h:34:51: note: in definition of macro '__cpu_to_le32'
>       34 | #define __cpu_to_le32(x) ((__force __le32)(__u32)(x))
>          |                                                   ^
>    drivers/pci/controller/pci-aardvark.c:1071:37: note: in expansion of macro 'cpu_to_le32'
>     1071 |         bridge->pcie_conf.slotcap = cpu_to_le32(1 << PCI_EXP_SLTCAP_PSN_SHIFT);
>          |                                     ^~~~~~~~~~~
>    drivers/pci/controller/pci-aardvark.c:1071:54: note: each undeclared identifier is reported only once for each function it appears in
>     1071 |         bridge->pcie_conf.slotcap = cpu_to_le32(1 << PCI_EXP_SLTCAP_PSN_SHIFT);
>          |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~
>    include/uapi/linux/byteorder/little_endian.h:34:51: note: in definition of macro '__cpu_to_le32'
>       34 | #define __cpu_to_le32(x) ((__force __le32)(__u32)(x))
>          |                                                   ^
>    drivers/pci/controller/pci-aardvark.c:1071:37: note: in expansion of macro 'cpu_to_le32'
>     1071 |         bridge->pcie_conf.slotcap = cpu_to_le32(1 << PCI_EXP_SLTCAP_PSN_SHIFT);
>          |                                     ^~~~~~~~~~~
> 
> 
> vim +1071 drivers/pci/controller/pci-aardvark.c
> 
>   1028	
>   1029	/*
>   1030	 * Initialize the configuration space of the PCI-to-PCI bridge
>   1031	 * associated with the given PCIe interface.
>   1032	 */
>   1033	static int advk_sw_pci_bridge_init(struct advk_pcie *pcie)
>   1034	{
>   1035		struct pci_bridge_emul *bridge = &pcie->bridge;
>   1036	
>   1037		bridge->conf.vendor =
>   1038			cpu_to_le16(advk_readl(pcie, PCIE_CORE_DEV_ID_REG) & 0xffff);
>   1039		bridge->conf.device =
>   1040			cpu_to_le16(advk_readl(pcie, PCIE_CORE_DEV_ID_REG) >> 16);
>   1041		bridge->conf.class_revision =
>   1042			cpu_to_le32(advk_readl(pcie, PCIE_CORE_DEV_REV_REG) & 0xff);
>   1043	
>   1044		/* Support 32 bits I/O addressing */
>   1045		bridge->conf.iobase = PCI_IO_RANGE_TYPE_32;
>   1046		bridge->conf.iolimit = PCI_IO_RANGE_TYPE_32;
>   1047	
>   1048		/* Support 64 bits memory pref */
>   1049		bridge->conf.pref_mem_base = cpu_to_le16(PCI_PREF_RANGE_TYPE_64);
>   1050		bridge->conf.pref_mem_limit = cpu_to_le16(PCI_PREF_RANGE_TYPE_64);
>   1051	
>   1052		/* Support interrupt A for MSI feature */
>   1053		bridge->conf.intpin = PCI_INTERRUPT_INTA;
>   1054	
>   1055		/*
>   1056		 * Aardvark HW provides PCIe Capability structure in version 2 and
>   1057		 * indicate slot support, which is emulated.
>   1058		 */
>   1059		bridge->pcie_conf.cap = cpu_to_le16(2 | PCI_EXP_FLAGS_SLOT);
>   1060	
>   1061		/*
>   1062		 * Set Presence Detect State bit permanently since there is no support
>   1063		 * for unplugging the card nor detecting whether it is plugged. (If a
>   1064		 * platform exists in the future that supports it, via a GPIO for
>   1065		 * example, it should be implemented via this bit.)
>   1066		 *
>   1067		 * Set physical slot number to 1 since there is only one port and zero
>   1068		 * value is reserved for ports within the same silicon as Root Port
>   1069		 * which is not our case.
>   1070		 */
> > 1071		bridge->pcie_conf.slotcap = cpu_to_le32(1 << PCI_EXP_SLTCAP_PSN_SHIFT);  
>   1072		bridge->pcie_conf.slotsta = cpu_to_le16(PCI_EXP_SLTSTA_PDS);
>   1073	
>   1074		/* Indicates supports for Completion Retry Status */
>   1075		bridge->pcie_conf.rootcap = cpu_to_le16(PCI_EXP_RTCAP_CRSVIS);
>   1076	
>   1077		bridge->has_pcie = true;
>   1078		bridge->data = pcie;
>   1079		bridge->ops = &advk_pci_bridge_emul_ops;
>   1080	
>   1081		return pci_bridge_emul_init(bridge, 0);
>   1082	}
>   1083	
> 




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux