tree: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git pci/host-cleanups-wip head: ee9b4e4188d1ca0e60edc96ed54acebe8ec19dc9 commit: d2de4b27af4b2a37bf64554adec03de52b076f99 [24/95] PCI: altera: Rename CRA accessors config: arm-allmodconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (Debian 6.1.1-9) 6.1.1 20160705 reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout d2de4b27af4b2a37bf64554adec03de52b076f99 # save the attached .config to linux build tree make.cross ARCH=arm All errors (new ones prefixed by >>): drivers/pci/host/pcie-altera.c:62:9: error: expected identifier or '(' before ':' token : TLP_FMTTYPE_CFGRD1) << 24) | \ ^ drivers/pci/host/pcie-altera.c:95:43: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) ^~~~~~~~~~~ In file included from include/linux/swab.h:4:0, from include/uapi/linux/byteorder/big_endian.h:12, from include/linux/byteorder/big_endian.h:4, from arch/arm/include/uapi/asm/byteorder.h:19, from include/asm-generic/bitops/le.h:5, from arch/arm/include/asm/bitops.h:340, from include/linux/bitops.h:36, from include/linux/kernel.h:10, from include/linux/delay.h:10, from drivers/pci/host/pcie-altera.c:20: drivers/pci/host/pcie-altera.c: In function 'altera_cra_readl': drivers/pci/host/pcie-altera.c:97:29: error: dereferencing pointer to incomplete type 'struct altera_pcie' return readl_relaxed(altera->cra_base + reg); ^ include/uapi/linux/swab.h:113:54: note: in definition of macro '__swab32' #define __swab32(x) (__u32)__builtin_bswap32((__u32)(x)) ^ include/linux/byteorder/generic.h:88:21: note: in expansion of macro '__le32_to_cpu' #define le32_to_cpu __le32_to_cpu ^~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:97:9: note: in expansion of macro 'readl_relaxed' return readl_relaxed(altera->cra_base + reg); ^~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:100:45: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static inline void altera_cra_writel(struct altera_pcie *altera, ^~~~~~~~~~~ In file included from include/linux/io.h:25:0, from include/linux/irq.h:24, from include/linux/irqchip/chained_irq.h:21, from drivers/pci/host/pcie-altera.c:22: drivers/pci/host/pcie-altera.c: In function 'altera_cra_writel': drivers/pci/host/pcie-altera.c:103:30: error: dereferencing pointer to incomplete type 'struct altera_pcie' writel_relaxed(value, altera->cra_base + reg); ^ arch/arm/include/asm/io.h:297:71: note: in definition of macro 'writel_relaxed' #define writel_relaxed(v,c) __raw_writel((__force u32) cpu_to_le32(v),c) ^ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:106:43: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static bool altera_pcie_link_is_up(struct altera_pcie *altera) ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'altera_pcie_link_is_up': >> drivers/pci/host/pcie-altera.c:108:30: error: passing argument 1 of 'altera_cra_readl' from incompatible pointer type [-Werror=incompatible-pointer-types] return !!((altera_cra_readl(altera, RP_LTSSM) & RP_LTSSM_MASK) == LTSSM_L0); ^~~~~~ drivers/pci/host/pcie-altera.c:95:19: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) ^~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:130:33: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static void tlp_write_tx(struct altera_pcie *altera, ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'tlp_write_tx': >> drivers/pci/host/pcie-altera.c:133:20: error: passing argument 1 of 'altera_cra_writel' from incompatible pointer type [-Werror=incompatible-pointer-types] altera_cra_writel(altera, tlp_rp_regdata->reg0, RP_TX_REG0); ^~~~~~ drivers/pci/host/pcie-altera.c:100:20: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline void altera_cra_writel(struct altera_pcie *altera, ^~~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:134:20: error: passing argument 1 of 'altera_cra_writel' from incompatible pointer type [-Werror=incompatible-pointer-types] altera_cra_writel(altera, tlp_rp_regdata->reg1, RP_TX_REG1); ^~~~~~ drivers/pci/host/pcie-altera.c:100:20: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline void altera_cra_writel(struct altera_pcie *altera, ^~~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:135:20: error: passing argument 1 of 'altera_cra_writel' from incompatible pointer type [-Werror=incompatible-pointer-types] altera_cra_writel(altera, tlp_rp_regdata->ctrl, RP_TX_CNTRL); ^~~~~~ drivers/pci/host/pcie-altera.c:100:20: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline void altera_cra_writel(struct altera_pcie *altera, ^~~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:138:45: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static bool altera_pcie_valid_config(struct altera_pcie *altera, ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'altera_pcie_valid_config': drivers/pci/host/pcie-altera.c:142:27: error: dereferencing pointer to incomplete type 'struct altera_pcie' if (bus->number != altera->root_bus_nr) { ^~ drivers/pci/host/pcie-altera.c:143:31: error: passing argument 1 of 'altera_pcie_link_is_up' from incompatible pointer type [-Werror=incompatible-pointer-types] if (!altera_pcie_link_is_up(altera)) ^~~~~~ drivers/pci/host/pcie-altera.c:106:13: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static bool altera_pcie_link_is_up(struct altera_pcie *altera) ^~~~~~~~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:154:35: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static int tlp_read_packet(struct altera_pcie *altera, u32 *value) ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'tlp_read_packet': drivers/pci/host/pcie-altera.c:167:27: error: passing argument 1 of 'altera_cra_readl' from incompatible pointer type [-Werror=incompatible-pointer-types] ctrl = altera_cra_readl(altera, RP_RXCPL_STATUS); ^~~~~~ drivers/pci/host/pcie-altera.c:95:19: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) ^~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:169:28: error: passing argument 1 of 'altera_cra_readl' from incompatible pointer type [-Werror=incompatible-pointer-types] reg0 = altera_cra_readl(altera, RP_RXCPL_REG0); ^~~~~~ drivers/pci/host/pcie-altera.c:95:19: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) ^~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:170:28: error: passing argument 1 of 'altera_cra_readl' from incompatible pointer type [-Werror=incompatible-pointer-types] reg1 = altera_cra_readl(altera, RP_RXCPL_REG1); ^~~~~~ drivers/pci/host/pcie-altera.c:95:19: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) ^~~~~~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:193:37: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static void tlp_write_packet(struct altera_pcie *altera, u32 *headers, ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'tlp_write_packet': drivers/pci/host/pcie-altera.c:201:15: error: passing argument 1 of 'tlp_write_tx' from incompatible pointer type [-Werror=incompatible-pointer-types] tlp_write_tx(altera, &tlp_rp_regdata); ^~~~~~ drivers/pci/host/pcie-altera.c:130:13: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static void tlp_write_tx(struct altera_pcie *altera, ^~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:207:16: error: passing argument 1 of 'tlp_write_tx' from incompatible pointer type [-Werror=incompatible-pointer-types] tlp_write_tx(altera, &tlp_rp_regdata); ^~~~~~ drivers/pci/host/pcie-altera.c:130:13: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static void tlp_write_tx(struct altera_pcie *altera, ^~~~~~~~~~~~ drivers/pci/host/pcie-altera.c:217:15: error: passing argument 1 of 'tlp_write_tx' from incompatible pointer type [-Werror=incompatible-pointer-types] tlp_write_tx(altera, &tlp_rp_regdata); ^~~~~~ drivers/pci/host/pcie-altera.c:130:13: note: expected 'struct altera_pcie *' but argument is of type 'struct altera_pcie *' static void tlp_write_tx(struct altera_pcie *altera, ^~~~~~~~~~~~ drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:220:38: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static int tlp_cfg_dword_read(struct altera_pcie *altera, u8 bus, u32 devfn, ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c: In function 'tlp_cfg_dword_read': drivers/pci/host/pcie-altera.c:61:22: error: dereferencing pointer to incomplete type 'struct altera_pcie' ((((bus == altera->root_bus_nr) ? TLP_FMTTYPE_CFGRD0 ^ drivers/pci/host/pcie-altera.c:225:15: note: in expansion of macro 'TLP_CFG_DW0' headers[0] = TLP_CFG_DW0(altera, bus); ^~~~~~~~~~~ drivers/pci/host/pcie-altera.c:225:39: error: expected ':' before ';' token headers[0] = TLP_CFG_DW0(altera, bus); ^ drivers/pci/host/pcie-altera.c:232:1: error: expected ')' before '}' token } ^ drivers/pci/host/pcie-altera.c:232:1: error: expected ')' before '}' token drivers/pci/host/pcie-altera.c:232:1: error: expected ';' before '}' token drivers/pci/host/pcie-altera.c:232:1: warning: no return statement in function returning non-void [-Wreturn-type] drivers/pci/host/pcie-altera.c: At top level: drivers/pci/host/pcie-altera.c:234:39: warning: 'struct altera_pcie' declared inside parameter list will not be visible outside of this definition or declaration static int tlp_cfg_dword_write(struct altera_pcie *altera, u8 bus, u32 devfn, vim +/altera_cra_readl +108 drivers/pci/host/pcie-altera.c 89 struct tlp_rp_regpair_t { 90 u32 ctrl; 91 u32 reg0; 92 u32 reg1; 93 }; 94 > 95 static inline u32 altera_cra_readl(struct altera_pcie *altera, const u32 reg) 96 { 97 return readl_relaxed(altera->cra_base + reg); 98 } 99 100 static inline void altera_cra_writel(struct altera_pcie *altera, 101 const u32 value, const u32 reg) 102 { 103 writel_relaxed(value, altera->cra_base + reg); 104 } 105 > 106 static bool altera_pcie_link_is_up(struct altera_pcie *altera) 107 { > 108 return !!((altera_cra_readl(altera, RP_LTSSM) & RP_LTSSM_MASK) == LTSSM_L0); 109 } 110 111 /* 112 * Altera PCIe port uses BAR0 of RC's configuration space as the translation 113 * from PCI bus to native BUS. Entire DDR region is mapped into PCIe space 114 * using these registers, so it can be reached by DMA from EP devices. 115 * This BAR0 will also access to MSI vector when receiving MSI/MSIX interrupt 116 * from EP devices, eventually trigger interrupt to GIC. The BAR0 of bridge 117 * should be hidden during enumeration to avoid the sizing and resource 118 * allocation by PCIe core. 119 */ 120 static bool altera_pcie_hide_rc_bar(struct pci_bus *bus, unsigned int devfn, 121 int offset) 122 { 123 if (pci_is_root_bus(bus) && (devfn == 0) && 124 (offset == PCI_BASE_ADDRESS_0)) 125 return true; 126 127 return false; 128 } 129 130 static void tlp_write_tx(struct altera_pcie *altera, 131 struct tlp_rp_regpair_t *tlp_rp_regdata) 132 { > 133 altera_cra_writel(altera, tlp_rp_regdata->reg0, RP_TX_REG0); 134 altera_cra_writel(altera, tlp_rp_regdata->reg1, RP_TX_REG1); 135 altera_cra_writel(altera, tlp_rp_regdata->ctrl, RP_TX_CNTRL); 136 } --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip