arch/arm/mach-sa1100/assabet.c:635:8: error: implicit declaration of function 'pmd_off_k'; did you mean

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

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   3aaf0a27ffc29b19a62314edd684b9bc6346f9a8
commit: e05c7b1f2bc4b7b28199b9a7572f73436d97317e mm: pgtable: add shortcuts for accessing kernel PMD and PTE
date:   8 months ago
config: arm-randconfig-r014-20210203 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.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/torvalds/linux.git/commit/?id=e05c7b1f2bc4b7b28199b9a7572f73436d97317e
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e05c7b1f2bc4b7b28199b9a7572f73436d97317e
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

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

   arch/arm/mach-sa1100/assabet.c: In function 'map_sa1100_gpio_regs':
   arch/arm/mach-sa1100/assabet.c:630:38: error: 'PMD_MASK' undeclared (first use in this function); did you mean 'P4D_MASK'?
     630 |  unsigned long phys = __PREG(GPLR) & PMD_MASK;
         |                                      ^~~~~~~~
         |                                      P4D_MASK
   arch/arm/mach-sa1100/assabet.c:630:38: note: each undeclared identifier is reported only once for each function it appears in
   In file included from include/vdso/const.h:5,
                    from include/linux/const.h:4,
                    from include/linux/bits.h:5,
                    from include/linux/bitops.h:5,
                    from include/linux/kernel.h:12,
                    from arch/arm/mach-sa1100/assabet.c:10:
   arch/arm/include/asm/pgtable-2level-hwdef.h:19:29: error: 'pmdval_t' undeclared (first use in this function)
      19 | #define PMD_TYPE_SECT  (_AT(pmdval_t, 2) << 0)
         |                             ^~~~~~~~
   include/uapi/linux/const.h:22:20: note: in definition of macro '_AT'
      22 | #define _AT(T,X) ((T)(X))
         |                    ^
   arch/arm/mach-sa1100/assabet.c:632:13: note: in expansion of macro 'PMD_TYPE_SECT'
     632 |  int prot = PMD_TYPE_SECT | PMD_SECT_AP_WRITE | PMD_DOMAIN(DOMAIN_IO);
         |             ^~~~~~~~~~~~~
>> arch/arm/mach-sa1100/assabet.c:635:8: error: implicit declaration of function 'pmd_off_k'; did you mean 'pmd_offset'? [-Werror=implicit-function-declaration]
     635 |  pmd = pmd_off_k(virt);
         |        ^~~~~~~~~
         |        pmd_offset
>> arch/arm/mach-sa1100/assabet.c:635:6: warning: assignment to 'pmd_t *' {aka 'long unsigned int *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
     635 |  pmd = pmd_off_k(virt);
         |      ^
   arch/arm/mach-sa1100/assabet.c:637:2: error: implicit declaration of function 'flush_pmd_entry' [-Werror=implicit-function-declaration]
     637 |  flush_pmd_entry(pmd);
         |  ^~~~~~~~~~~~~~~
   arch/arm/mach-sa1100/assabet.c: At top level:
   arch/arm/mach-sa1100/assabet.c:740:13: warning: no previous prototype for 'assabet_init_irq' [-Wmissing-prototypes]
     740 | void __init assabet_init_irq(void)
         |             ^~~~~~~~~~~~~~~~
   arch/arm/mach-sa1100/assabet.c:693:24: warning: 'assabet_io_desc' defined but not used [-Wunused-variable]
     693 | static struct map_desc assabet_io_desc[] __initdata = {
         |                        ^~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +635 arch/arm/mach-sa1100/assabet.c

   621	
   622	/*
   623	 * On Assabet, we must probe for the Neponset board _before_
   624	 * paging_init() has occurred to actually determine the amount
   625	 * of RAM available.  To do so, we map the appropriate IO section
   626	 * in the page table here in order to access GPIO registers.
   627	 */
   628	static void __init map_sa1100_gpio_regs( void )
   629	{
   630		unsigned long phys = __PREG(GPLR) & PMD_MASK;
   631		unsigned long virt = (unsigned long)io_p2v(phys);
   632		int prot = PMD_TYPE_SECT | PMD_SECT_AP_WRITE | PMD_DOMAIN(DOMAIN_IO);
   633		pmd_t *pmd;
   634	
 > 635		pmd = pmd_off_k(virt);
   636		*pmd = __pmd(phys | prot);
   637		flush_pmd_entry(pmd);
   638	}
   639	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[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