[linux-next:master 4620/4884] kernel/irq/generic-chip.c:210:9: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations

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

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   0f5f12ac05f36f117e793656c3f560625e927f1b
commit: 17229c19e5bf0b5dc8b68dc4ca4e7012e7da4747 [4620/4884] mips: remove extraneous asm-generic/iomap.h include
config: mips-allnoconfig (https://download.01.org/0day-ci/archive/20231205/202312051917.ldwRetjX-lkp@xxxxxxxxx/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231205/202312051917.ldwRetjX-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312051917.ldwRetjX-lkp@xxxxxxxxx/

Note: the linux-next/master HEAD 0f5f12ac05f36f117e793656c3f560625e927f1b builds fine.
      It may have been fixed somewhere.

All error/warnings (new ones prefixed by >>):

>> kernel/irq/generic-chip.c:210:9: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     210 |         return ioread32be(addr);
         |                ^
>> kernel/irq/generic-chip.c:215:2: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     215 |         iowrite32be(val, addr);
         |         ^
   2 errors generated.
--
>> kernel/iomem.c:110:10: error: call to undeclared function 'ioremap_wt'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     110 |                 addr = ioremap_wt(offset, size);
         |                        ^
   kernel/iomem.c:110:10: note: did you mean 'ioremap_prot'?
   arch/mips/include/asm/io.h:152:15: note: 'ioremap_prot' declared here
     152 | void __iomem *ioremap_prot(phys_addr_t offset, unsigned long size,
         |               ^
>> kernel/iomem.c:110:8: error: incompatible integer to pointer conversion assigning to 'void *' from 'int' [-Wint-conversion]
     110 |                 addr = ioremap_wt(offset, size);
         |                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~
   2 errors generated.
--
   In file included from lib/iomap.c:7:
>> include/linux/pci.h:306:46: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     306 | enum pci_bus_speed pcie_get_speed_cap(struct pci_dev *dev);
         |                                              ^
   include/linux/pci.h:307:48: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     307 | enum pcie_link_width pcie_get_width_cap(struct pci_dev *dev);
         |                                                ^
>> lib/iomap.c:79:14: warning: no previous prototype for function 'ioread8' [-Wmissing-prototypes]
      79 | unsigned int ioread8(const void __iomem *addr)
         |              ^
   lib/iomap.c:79:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      79 | unsigned int ioread8(const void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:85:14: warning: no previous prototype for function 'ioread16' [-Wmissing-prototypes]
      85 | unsigned int ioread16(const void __iomem *addr)
         |              ^
   lib/iomap.c:85:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      85 | unsigned int ioread16(const void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:91:14: warning: no previous prototype for function 'ioread16be' [-Wmissing-prototypes]
      91 | unsigned int ioread16be(const void __iomem *addr)
         |              ^
   lib/iomap.c:91:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      91 | unsigned int ioread16be(const void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:97:14: warning: no previous prototype for function 'ioread32' [-Wmissing-prototypes]
      97 | unsigned int ioread32(const void __iomem *addr)
         |              ^
   lib/iomap.c:97:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      97 | unsigned int ioread32(const void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:103:14: warning: no previous prototype for function 'ioread32be' [-Wmissing-prototypes]
     103 | unsigned int ioread32be(const void __iomem *addr)
         |              ^
   lib/iomap.c:103:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     103 | unsigned int ioread32be(const void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:203:6: warning: no previous prototype for function 'iowrite8' [-Wmissing-prototypes]
     203 | void iowrite8(u8 val, void __iomem *addr)
         |      ^
   lib/iomap.c:203:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     203 | void iowrite8(u8 val, void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:209:6: warning: no previous prototype for function 'iowrite16' [-Wmissing-prototypes]
     209 | void iowrite16(u16 val, void __iomem *addr)
         |      ^
   lib/iomap.c:209:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     209 | void iowrite16(u16 val, void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:215:6: warning: no previous prototype for function 'iowrite16be' [-Wmissing-prototypes]
     215 | void iowrite16be(u16 val, void __iomem *addr)
         |      ^
   lib/iomap.c:215:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     215 | void iowrite16be(u16 val, void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:221:6: warning: no previous prototype for function 'iowrite32' [-Wmissing-prototypes]
     221 | void iowrite32(u32 val, void __iomem *addr)
         |      ^
   lib/iomap.c:221:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     221 | void iowrite32(u32 val, void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:227:6: warning: no previous prototype for function 'iowrite32be' [-Wmissing-prototypes]
     227 | void iowrite32be(u32 val, void __iomem *addr)
         |      ^
   lib/iomap.c:227:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     227 | void iowrite32be(u32 val, void __iomem *addr)
         | ^
         | static 
>> lib/iomap.c:360:6: warning: no previous prototype for function 'ioread8_rep' [-Wmissing-prototypes]
     360 | void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count)
         |      ^
   lib/iomap.c:360:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     360 | void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:366:6: warning: no previous prototype for function 'ioread16_rep' [-Wmissing-prototypes]
     366 | void ioread16_rep(const void __iomem *addr, void *dst, unsigned long count)
         |      ^
   lib/iomap.c:366:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     366 | void ioread16_rep(const void __iomem *addr, void *dst, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:372:6: warning: no previous prototype for function 'ioread32_rep' [-Wmissing-prototypes]
     372 | void ioread32_rep(const void __iomem *addr, void *dst, unsigned long count)
         |      ^
   lib/iomap.c:372:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     372 | void ioread32_rep(const void __iomem *addr, void *dst, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:382:6: warning: no previous prototype for function 'iowrite8_rep' [-Wmissing-prototypes]
     382 | void iowrite8_rep(void __iomem *addr, const void *src, unsigned long count)
         |      ^
   lib/iomap.c:382:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     382 | void iowrite8_rep(void __iomem *addr, const void *src, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:388:6: warning: no previous prototype for function 'iowrite16_rep' [-Wmissing-prototypes]
     388 | void iowrite16_rep(void __iomem *addr, const void *src, unsigned long count)
         |      ^
   lib/iomap.c:388:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     388 | void iowrite16_rep(void __iomem *addr, const void *src, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:394:6: warning: no previous prototype for function 'iowrite32_rep' [-Wmissing-prototypes]
     394 | void iowrite32_rep(void __iomem *addr, const void *src, unsigned long count)
         |      ^
   lib/iomap.c:394:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     394 | void iowrite32_rep(void __iomem *addr, const void *src, unsigned long count)
         | ^
         | static 
>> lib/iomap.c:406:15: warning: no previous prototype for function 'ioport_map' [-Wmissing-prototypes]
     406 | void __iomem *ioport_map(unsigned long port, unsigned int nr)
         |               ^
   lib/iomap.c:406:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     406 | void __iomem *ioport_map(unsigned long port, unsigned int nr)
         | ^
         | static 
>> lib/iomap.c:413:6: warning: no previous prototype for function 'ioport_unmap' [-Wmissing-prototypes]
     413 | void ioport_unmap(void __iomem *addr)
         |      ^
   lib/iomap.c:413:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     413 | void ioport_unmap(void __iomem *addr)
         | ^
         | static 
   20 warnings generated.
--
   In file included from lib/pci_iomap.c:7:
>> include/linux/pci.h:306:46: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     306 | enum pci_bus_speed pcie_get_speed_cap(struct pci_dev *dev);
         |                                              ^
   include/linux/pci.h:307:48: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     307 | enum pcie_link_width pcie_get_width_cap(struct pci_dev *dev);
         |                                                ^
   2 warnings generated.
--
   In file included from lib/devres.c:3:
>> include/linux/pci.h:306:46: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     306 | enum pci_bus_speed pcie_get_speed_cap(struct pci_dev *dev);
         |                                              ^
   include/linux/pci.h:307:48: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     307 | enum pcie_link_width pcie_get_width_cap(struct pci_dev *dev);
         |                                                ^
>> lib/devres.c:48:10: error: call to undeclared function 'ioremap_np'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      48 |                 addr = ioremap_np(offset, size);
         |                        ^
   lib/devres.c:48:8: error: incompatible integer to pointer conversion assigning to 'void *' from 'int' [-Wint-conversion]
      48 |                 addr = ioremap_np(offset, size);
         |                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~
>> lib/devres.c:256:2: error: call to undeclared function 'ioport_unmap'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     256 |         ioport_unmap(*(void __iomem **)res);
         |         ^
>> lib/devres.c:286:9: error: call to undeclared function 'ioport_map'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     286 |         addr = ioport_map(port, nr);
         |                ^
   lib/devres.c:286:7: error: incompatible integer to pointer conversion assigning to 'void *' from 'int' [-Wint-conversion]
     286 |         addr = ioport_map(port, nr);
         |              ^ ~~~~~~~~~~~~~~~~~~~~
   lib/devres.c:307:2: error: call to undeclared function 'ioport_unmap'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     307 |         ioport_unmap(addr);
         |         ^
   2 warnings and 6 errors generated.
--
>> drivers/clk/clk-divider.c:32:10: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      32 |                 return ioread32be(divider->reg);
         |                        ^
>> drivers/clk/clk-divider.c:40:3: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      40 |                 iowrite32be(val, divider->reg);
         |                 ^
   2 errors generated.
--
>> drivers/clk/clk-gate.c:30:10: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      30 |                 return ioread32be(gate->reg);
         |                        ^
>> drivers/clk/clk-gate.c:38:3: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      38 |                 iowrite32be(val, gate->reg);
         |                 ^
   2 errors generated.
--
>> drivers/clk/clk-multiplier.c:18:10: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      18 |                 return ioread32be(mult->reg);
         |                        ^
>> drivers/clk/clk-multiplier.c:26:3: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      26 |                 iowrite32be(val, mult->reg);
         |                 ^
   2 errors generated.
--
>> drivers/clk/clk-mux.c:30:10: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      30 |                 return ioread32be(mux->reg);
         |                        ^
>> drivers/clk/clk-mux.c:38:3: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      38 |                 iowrite32be(val, mux->reg);
         |                 ^
   2 errors generated.
--
>> drivers/clk/clk-fractional-divider.c:56:10: error: call to undeclared function 'ioread32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      56 |                 return ioread32be(fd->reg);
         |                        ^
>> drivers/clk/clk-fractional-divider.c:64:3: error: call to undeclared function 'iowrite32be'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      64 |                 iowrite32be(val, fd->reg);
         |                 ^
   2 errors generated.
--
   In file included from drivers/of/address.c:11:
>> include/linux/pci.h:306:46: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     306 | enum pci_bus_speed pcie_get_speed_cap(struct pci_dev *dev);
         |                                              ^
   include/linux/pci.h:307:48: warning: declaration of 'struct pci_dev' will not be visible outside of this function [-Wvisibility]
     307 | enum pcie_link_width pcie_get_width_cap(struct pci_dev *dev);
         |                                                ^
>> drivers/of/address.c:1154:10: error: call to undeclared function 'ioremap_np'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    1154 |                 return ioremap_np(res.start, resource_size(&res));
         |                        ^
>> drivers/of/address.c:1154:10: error: incompatible integer to pointer conversion returning 'int' from a function with result type 'void *' [-Wint-conversion]
    1154 |                 return ioremap_np(res.start, resource_size(&res));
         |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/of/address.c:1189:9: error: call to undeclared function 'ioremap_np'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    1189 |                 mem = ioremap_np(res.start, resource_size(&res));
         |                       ^
>> drivers/of/address.c:1189:7: error: incompatible integer to pointer conversion assigning to 'void *' from 'int' [-Wint-conversion]
    1189 |                 mem = ioremap_np(res.start, resource_size(&res));
         |                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   2 warnings and 4 errors generated.
..


vim +/ioread32be +210 kernel/irq/generic-chip.c

7d8280624797bbe Thomas Gleixner 2011-04-03  207  
b79055952badbd7 Kevin Cernekee  2014-11-06  208  static u32 irq_readl_be(void __iomem *addr)
b79055952badbd7 Kevin Cernekee  2014-11-06  209  {
b79055952badbd7 Kevin Cernekee  2014-11-06 @210  	return ioread32be(addr);
b79055952badbd7 Kevin Cernekee  2014-11-06  211  }
b79055952badbd7 Kevin Cernekee  2014-11-06  212  
b79055952badbd7 Kevin Cernekee  2014-11-06  213  static void irq_writel_be(u32 val, void __iomem *addr)
b79055952badbd7 Kevin Cernekee  2014-11-06  214  {
b79055952badbd7 Kevin Cernekee  2014-11-06 @215  	iowrite32be(val, addr);
b79055952badbd7 Kevin Cernekee  2014-11-06  216  }
b79055952badbd7 Kevin Cernekee  2014-11-06  217  

:::::: The code at line 210 was first introduced by commit
:::::: b79055952badbd73710685643bab44104f2509ea genirq: Generic chip: Add big endian I/O accessors

:::::: TO: Kevin Cernekee <cernekee@xxxxxxxxx>
:::::: CC: Jason Cooper <jason@xxxxxxxxxxxxxx>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux