[tobetter-linux:odroid-5.14.y 21/68] drivers/char/exynos-gpiomem.c:121:22: error: incompatible types when assigning to type 'pgprot_t' {aka 'struct <anonymous>'} from type 'int'

From: kernel test robot
Date: Wed Aug 25 2021 - 06:39:02 EST


tree: https://github.com/tobetter/linux odroid-5.14.y
head: 62bd983c27712ddb2dccb2efe9cdc3a086daf8e0
commit: 7b9acbf68d2938b1533c176b4bdd7becdb40bfc1 [21/68] ODROID-XU4: char: exynos: add /dev/gpiomem device for rootless user GPIO access
config: um-x86_64_defconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/tobetter/linux/commit/7b9acbf68d2938b1533c176b4bdd7becdb40bfc1
git remote add tobetter-linux https://github.com/tobetter/linux
git fetch --no-tags tobetter-linux odroid-5.14.y
git checkout 7b9acbf68d2938b1533c176b4bdd7becdb40bfc1
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=um SUBARCH=x86_64 SHELL=/bin/bash drivers/char/

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

All errors (new ones prefixed by >>):

drivers/char/exynos-gpiomem.c: In function 'exynos_gpiomem_mmap':
drivers/char/exynos-gpiomem.c:121:22: error: implicit declaration of function 'phys_mem_access_prot'; did you mean 'phys_mem_access_prot_allowed'? [-Werror=implicit-function-declaration]
121 | vma->vm_page_prot = phys_mem_access_prot(file, vma->vm_pgoff,
| ^~~~~~~~~~~~~~~~~~~~
| phys_mem_access_prot_allowed
>> drivers/char/exynos-gpiomem.c:121:22: error: incompatible types when assigning to type 'pgprot_t' {aka 'struct <anonymous>'} from type 'int'
cc1: some warnings being treated as errors


vim +121 drivers/char/exynos-gpiomem.c

106
107 static int exynos_gpiomem_mmap(struct file *file, struct vm_area_struct *vma)
108 {
109 int gpio_area = 0;
110
111 while (gpio_area < inst->gpio_area_count) {
112 if ((inst->gpio_regs_phys[gpio_area] >> PAGE_SHIFT) == vma->vm_pgoff)
113 goto found;
114
115 gpio_area++;
116 }
117
118 return -EACCES;
119
120 found:
> 121 vma->vm_page_prot = phys_mem_access_prot(file, vma->vm_pgoff,
122 PAGE_SIZE,
123 vma->vm_page_prot);
124
125 vma->vm_ops = &exynos_gpiomem_vm_ops;
126
127 if (remap_pfn_range(vma, vma->vm_start,
128 vma->vm_pgoff,
129 PAGE_SIZE,
130 vma->vm_page_prot)) {
131 return -EAGAIN;
132 }
133
134 return 0;
135 }
136

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

Attachment: .config.gz
Description: application/gzip