* drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces)
@ 2020-07-24 23:09 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2020-07-24 23:09 UTC (permalink / raw)
To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 84684 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: f37e99aca03f63aa3f2bd13ceaf769455d12c4b0
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 5 weeks ago
config: arm-randconfig-s032-20200723 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-93-g4c6cbe55-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
--
>> drivers/mtd/maps/dc21285.c:57:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:64:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:71:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:77:21: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:86:11: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:95:11: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:102:11: sparse: sparse: cast removes address space '__iomem' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:819:42: sparse: sparse: cast removes address space '__iomem' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:1094:5: sparse: sparse: symbol 'amdgpu_ttm_gart_bind' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: sparse: incorrect type in initializer (different base types) @@ expected restricted __poll_t ( *poll )( ... ) @@ got unsigned int ( * )( ... ) @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: expected restricted __poll_t ( *poll )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: got unsigned int ( * )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const [noderef] __user *__pu_ptr @@ got signed int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: expected signed int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: got signed int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1307:23: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1341:32: sparse: sparse: cast to restricted __le32
--
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: sparse: incompatible types in conditional expression (different base types):
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: void
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: int
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:526:5: sparse: sparse: symbol 'psp_ta_invoke' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2036:36: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2037:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2038:36: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2040:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2078:44: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2079:49: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2080:42: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2081:42: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2083:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2085:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2088:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2090:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2091:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2093:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2097:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2099:53: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] cpu_addr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: got void *[assigned] cpu_addr
--
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:210:21: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:215:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:216:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:241:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:242:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:243:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:249:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:255:28: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: got void *[assigned] ptr
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:418:42: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *cpu_addr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: got void *cpu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:421:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:422:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:683:35: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: got restricted __le32 [usertype]
--
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:177:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:314:18: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[addressable] cpu_addr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: got void *[addressable] cpu_addr
--
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *ptr @@
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: got void *ptr
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *ptr @@
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: got void *ptr
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:1044:27: sparse: sparse: symbol 'vce_v4_0_ip_funcs' was not declared. Should it be static?
--
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:131:32: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:139:21: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:143:26: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:144:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:146:28: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:147:24: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:153:29: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:154:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:155:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:162:28: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: got void *[assigned] ptr
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:301:42: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *cpu_addr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: got void *cpu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:304:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:305:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: got restricted __le32 [usertype]
--
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
>> drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *kaddr @@
>> drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: got void *kaddr
--
>> drivers/char/nwflash.c:591:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile *static [toplevel] FLASH_BASE @@ got void [noderef] __iomem * @@
drivers/char/nwflash.c:591:28: sparse: expected unsigned char volatile *static [toplevel] FLASH_BASE
>> drivers/char/nwflash.c:591:28: sparse: got void [noderef] __iomem *
>> drivers/char/nwflash.c:598:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
>> drivers/char/nwflash.c:598:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:598:34: sparse: got void *
drivers/char/nwflash.c:608:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
drivers/char/nwflash.c:608:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:608:34: sparse: got void *
drivers/char/nwflash.c:618:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
drivers/char/nwflash.c:618:18: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:618:18: sparse: got void *
--
drivers/scsi/hptiop.c:150:17: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:171:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:171:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:171:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:208:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:208:18: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:208:18: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:209:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:209:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:209:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:244:44: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] result @@ got int @@
drivers/scsi/hptiop.c:244:44: sparse: expected restricted __le32 [usertype] result
drivers/scsi/hptiop.c:244:44: sparse: got int
drivers/scsi/hptiop.c:289:35: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:276:32: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:277:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] cur_rptr @@ got restricted __le32 [usertype] outlist_rptr @@
drivers/scsi/hptiop.c:277:34: sparse: expected unsigned int [usertype] cur_rptr
drivers/scsi/hptiop.c:277:34: sparse: got restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:283:38: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] _tag @@ got restricted __le32 [usertype] val @@
drivers/scsi/hptiop.c:283:38: sparse: expected unsigned int [usertype] _tag
drivers/scsi/hptiop.c:283:38: sparse: got restricted __le32 [usertype] val
drivers/scsi/hptiop.c:288:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int [assigned] [usertype] cur_rptr @@
drivers/scsi/hptiop.c:288:52: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:288:52: sparse: got unsigned int [assigned] [usertype] cur_rptr
drivers/scsi/hptiop.c:369:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:369:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:369:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:370:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:370:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:370:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:453:64: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct hpt_iop_request_get_config *info @@ got struct hpt_iop_request_get_config [noderef] __iomem *config @@
drivers/scsi/hptiop.c:453:64: sparse: expected struct hpt_iop_request_get_config *info
drivers/scsi/hptiop.c:453:64: sparse: got struct hpt_iop_request_get_config [noderef] __iomem *config
drivers/scsi/hptiop.c:455:25: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:557:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:557:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:557:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:637:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct hpt_iopmv_regs *regs @@ got void [noderef] __iomem * @@
drivers/scsi/hptiop.c:637:24: sparse: expected struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:637:24: sparse: got void [noderef] __iomem *
>> drivers/scsi/hptiop.c:643:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct hpt_iopmv_regs *regs @@
>> drivers/scsi/hptiop.c:643:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/scsi/hptiop.c:643:34: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:667:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct hpt_iopmv_regs *regs @@
drivers/scsi/hptiop.c:667:26: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/scsi/hptiop.c:667:26: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:934:27: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:939:34: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:940:30: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:944:43: sparse: sparse: invalid assignment: &=
drivers/scsi/hptiop.c:944:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:944:43: sparse: right side has type int
drivers/scsi/hptiop.c:945:43: sparse: sparse: invalid assignment: ^=
drivers/scsi/hptiop.c:945:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:945:43: sparse: right side has type int
drivers/scsi/hptiop.c:950:57: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:950:48: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] intrfc_len @@ got unsigned int @@
drivers/scsi/hptiop.c:950:48: sparse: expected restricted __le32 [usertype] intrfc_len
drivers/scsi/hptiop.c:950:48: sparse: got unsigned int
drivers/scsi/hptiop.c:951:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:976:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:978:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:981:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:983:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:986:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:988:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:991:35: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] inlist_wptr @@ got unsigned int @@
drivers/scsi/hptiop.c:991:35: sparse: expected restricted __le32 [usertype] inlist_wptr
drivers/scsi/hptiop.c:991:35: sparse: got unsigned int
drivers/scsi/hptiop.c:992:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] @@ got unsigned int @@
drivers/scsi/hptiop.c:992:37: sparse: expected restricted __le32 [usertype]
drivers/scsi/hptiop.c:992:37: sparse: got unsigned int
drivers/scsi/hptiop.c:993:36: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int @@
drivers/scsi/hptiop.c:993:36: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:993:36: sparse: got unsigned int
drivers/scsi/hptiop.c:1536:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1536:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:1536:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:1537:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1537:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:1537:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:150:17: sparse: sparse: dereference of noderef expression
drivers/scsi/hptiop.c:150:17: sparse: sparse: dereference of noderef expression
--
>> drivers/scsi/mvumi.c:81:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *addr @@ got void * @@
drivers/scsi/mvumi.c:81:52: sparse: expected void [noderef] __iomem *addr
drivers/scsi/mvumi.c:81:52: sparse: got void *
drivers/scsi/mvumi.c:90:39: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
drivers/scsi/mvumi.c:90:39: sparse: expected void *
drivers/scsi/mvumi.c:90:39: sparse: got void [noderef] __iomem *
drivers/scsi/mvumi.c:210:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_l @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:210:34: sparse: expected unsigned int [usertype] baseaddr_l
drivers/scsi/mvumi.c:210:34: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:211:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_h @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:211:34: sparse: expected unsigned int [usertype] baseaddr_h
drivers/scsi/mvumi.c:211:34: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:213:17: sparse: sparse: invalid assignment: |=
drivers/scsi/mvumi.c:213:17: sparse: left side has type unsigned int
drivers/scsi/mvumi.c:213:17: sparse: right side has type restricted __le32
drivers/scsi/mvumi.c:213:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] size @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:213:17: sparse: expected unsigned int [usertype] size
drivers/scsi/mvumi.c:213:17: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:242:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_l @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:242:26: sparse: expected unsigned int [usertype] baseaddr_l
drivers/scsi/mvumi.c:242:26: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:243:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_h @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:243:26: sparse: expected unsigned int [usertype] baseaddr_h
drivers/scsi/mvumi.c:243:26: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:245:9: sparse: sparse: invalid assignment: |=
drivers/scsi/mvumi.c:245:9: sparse: left side has type unsigned int
drivers/scsi/mvumi.c:245:9: sparse: right side has type restricted __le32
drivers/scsi/mvumi.c:245:9: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] size @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:245:9: sparse: expected unsigned int [usertype] size
drivers/scsi/mvumi.c:245:9: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:407:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *inb_read_pointer @@
drivers/scsi/mvumi.c:407:40: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:407:40: sparse: got void *inb_read_pointer
drivers/scsi/mvumi.c:429:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *ib_shadow @@
drivers/scsi/mvumi.c:429:30: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:429:30: sparse: got void *ib_shadow
drivers/scsi/mvumi.c:458:31: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *ib_shadow @@
drivers/scsi/mvumi.c:458:31: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:458:31: sparse: got void *ib_shadow
drivers/scsi/mvumi.c:459:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *inb_write_pointer @@
drivers/scsi/mvumi.c:459:48: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:459:48: sparse: got void *inb_write_pointer
drivers/scsi/mvumi.c:496:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_copy_pointer @@
drivers/scsi/mvumi.c:496:41: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:496:41: sparse: got void *outb_copy_pointer
drivers/scsi/mvumi.c:497:48: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *ob_shadow @@
drivers/scsi/mvumi.c:497:48: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:497:48: sparse: got void *ob_shadow
drivers/scsi/mvumi.c:516:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_read_pointer @@
drivers/scsi/mvumi.c:516:33: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:516:33: sparse: got void *outb_read_pointer
drivers/scsi/mvumi.c:517:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_copy_pointer @@
drivers/scsi/mvumi.c:517:33: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:517:33: sparse: got void *outb_copy_pointer
drivers/scsi/mvumi.c:578:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *outb_read_pointer @@
drivers/scsi/mvumi.c:578:42: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:578:42: sparse: got void *outb_read_pointer
drivers/scsi/mvumi.c:585:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:585:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:585:26: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:586:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:586:26: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:586:26: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:589:40: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *pciea_to_arm_drbl_reg @@
drivers/scsi/mvumi.c:589:40: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:589:40: sparse: got void *pciea_to_arm_drbl_reg
drivers/scsi/mvumi.c:1281:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_drbl_reg @@
drivers/scsi/mvumi.c:1281:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1281:28: sparse: got void *arm_to_pciea_drbl_reg
drivers/scsi/mvumi.c:1282:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_drbl_reg @@
drivers/scsi/mvumi.c:1282:28: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1282:28: sparse: got void *arm_to_pciea_drbl_reg
drivers/scsi/mvumi.c:1284:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_mask_reg @@
drivers/scsi/mvumi.c:1284:48: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1284:48: sparse: got void *arm_to_pciea_mask_reg
drivers/scsi/mvumi.c:1285:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:1285:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1285:28: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:1286:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:1286:28: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1286:28: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:612:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:612:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:612:26: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:613:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:613:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:613:28: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:615:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *pciea_to_arm_drbl_reg @@
drivers/scsi/mvumi.c:615:46: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:615:46: sparse: got void *pciea_to_arm_drbl_reg
drivers/scsi/mvumi.c:624:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:624:36: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:624:36: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:670:32: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_enable @@
drivers/scsi/mvumi.c:670:32: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:670:32: sparse: got void *reset_enable
drivers/scsi/mvumi.c:671:34: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_request @@
drivers/scsi/mvumi.c:671:34: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:671:34: sparse: got void *reset_request
drivers/scsi/mvumi.c:673:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_enable @@
drivers/scsi/mvumi.c:673:35: sparse: expected void volatile [noderef] __iomem *addr
--
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *virtual @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: got void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: got unsigned int [usertype] *
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: got unsigned int [usertype] *
>> drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] src @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: got void *[assigned] src
>> drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] dst @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: got void *[assigned] dst
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[addressable] new_iomap @@
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: got void *[addressable] new_iomap
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *virtual @@
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: got void *virtual
--
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: got void *
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: got void *
>> drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void * @@
>> drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: got void *
--
drivers/gpu/drm/qxl/qxl_kms.c:36:5: sparse: sparse: symbol 'qxl_log_level' was not declared. Should it be static?
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_rom *rom @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: expected struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_ram_header *ram_header @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: expected struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_ram_header *ram_header @@
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: got struct qxl_ram_header *ram_header
>> drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: got struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_ram_header *ram_header @@
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: got struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: got struct qxl_rom *rom
--
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: got void *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: got void *
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *[assigned] emap @@
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: got void *[assigned] emap
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *map @@ got void [noderef] __iomem * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: expected void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *map @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: expected void [noderef] __iomem *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: got void *map
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *[assigned] map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: got void *[assigned] map
--
drivers/isdn/hardware/mISDN/hfcmulti.c:452:17: sparse: sparse: cast from restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:457:17: sparse: sparse: cast from restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:472:17: sparse: sparse: cast from restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:478:17: sparse: sparse: cast from restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:496:32: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:501:32: sparse: sparse: cast to restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:518:25: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:524:25: sparse: sparse: cast to restricted __le16
>> drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
>> drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: got void *
vim +979 drivers/gpu/drm/radeon/radeon_ttm.c
2014b5694182b5 Christian König 2013-12-18 954
2014b5694182b5 Christian König 2013-12-18 955 static ssize_t radeon_ttm_vram_read(struct file *f, char __user *buf,
2014b5694182b5 Christian König 2013-12-18 956 size_t size, loff_t *pos)
2014b5694182b5 Christian König 2013-12-18 957 {
2014b5694182b5 Christian König 2013-12-18 958 struct radeon_device *rdev = f->private_data;
2014b5694182b5 Christian König 2013-12-18 959 ssize_t result = 0;
2014b5694182b5 Christian König 2013-12-18 960 int r;
2014b5694182b5 Christian König 2013-12-18 961
2014b5694182b5 Christian König 2013-12-18 962 if (size & 0x3 || *pos & 0x3)
2014b5694182b5 Christian König 2013-12-18 963 return -EINVAL;
2014b5694182b5 Christian König 2013-12-18 964
2014b5694182b5 Christian König 2013-12-18 965 while (size) {
2014b5694182b5 Christian König 2013-12-18 966 unsigned long flags;
2014b5694182b5 Christian König 2013-12-18 967 uint32_t value;
2014b5694182b5 Christian König 2013-12-18 968
2014b5694182b5 Christian König 2013-12-18 969 if (*pos >= rdev->mc.mc_vram_size)
2014b5694182b5 Christian König 2013-12-18 970 return result;
2014b5694182b5 Christian König 2013-12-18 971
2014b5694182b5 Christian König 2013-12-18 972 spin_lock_irqsave(&rdev->mmio_idx_lock, flags);
2014b5694182b5 Christian König 2013-12-18 973 WREG32(RADEON_MM_INDEX, ((uint32_t)*pos) | 0x80000000);
2014b5694182b5 Christian König 2013-12-18 974 if (rdev->family >= CHIP_CEDAR)
2014b5694182b5 Christian König 2013-12-18 975 WREG32(EVERGREEN_MM_INDEX_HI, *pos >> 31);
2014b5694182b5 Christian König 2013-12-18 976 value = RREG32(RADEON_MM_DATA);
2014b5694182b5 Christian König 2013-12-18 977 spin_unlock_irqrestore(&rdev->mmio_idx_lock, flags);
2014b5694182b5 Christian König 2013-12-18 978
2014b5694182b5 Christian König 2013-12-18 @979 r = put_user(value, (uint32_t *)buf);
2014b5694182b5 Christian König 2013-12-18 980 if (r)
2014b5694182b5 Christian König 2013-12-18 981 return r;
2014b5694182b5 Christian König 2013-12-18 982
2014b5694182b5 Christian König 2013-12-18 983 result += 4;
2014b5694182b5 Christian König 2013-12-18 984 buf += 4;
2014b5694182b5 Christian König 2013-12-18 985 *pos += 4;
2014b5694182b5 Christian König 2013-12-18 986 size -= 4;
2014b5694182b5 Christian König 2013-12-18 987 }
2014b5694182b5 Christian König 2013-12-18 988
2014b5694182b5 Christian König 2013-12-18 989 return result;
2014b5694182b5 Christian König 2013-12-18 990 }
2014b5694182b5 Christian König 2013-12-18 991
:::::: The code at line 979 was first introduced by commit
:::::: 2014b5694182b54c781b93d26ec993f8a12bca01 drm/radeon: add VRAM debugfs access v3
:::::: TO: Christian König <christian.koenig@amd.com>
:::::: CC: Alex Deucher <alexander.deucher@amd.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33444 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces)
@ 2020-07-24 23:09 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2020-07-24 23:09 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 85473 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: f37e99aca03f63aa3f2bd13ceaf769455d12c4b0
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 5 weeks ago
config: arm-randconfig-s032-20200723 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-93-g4c6cbe55-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
--
>> drivers/mtd/maps/dc21285.c:57:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:64:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:71:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:77:21: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:86:11: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:95:11: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mtd/maps/dc21285.c:102:11: sparse: sparse: cast removes address space '__iomem' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:819:42: sparse: sparse: cast removes address space '__iomem' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:1094:5: sparse: sparse: symbol 'amdgpu_ttm_gart_bind' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
--
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: sparse: incorrect type in initializer (different base types) @@ expected restricted __poll_t ( *poll )( ... ) @@ got unsigned int ( * )( ... ) @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: expected restricted __poll_t ( *poll )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: got unsigned int ( * )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:568:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:622:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:719:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const [noderef] __user *__pu_ptr @@ got signed int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: expected signed int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: got signed int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:793:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:875:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: expected unsigned int const [noderef] __user *__pu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:968:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *register __p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: expected unsigned int [noderef] __user *register __p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1012:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1307:23: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1341:32: sparse: sparse: cast to restricted __le32
--
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: sparse: incompatible types in conditional expression (different base types):
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: void
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:155:9: sparse: int
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:526:5: sparse: sparse: symbol 'psp_ta_invoke' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2036:36: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2037:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2038:36: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2040:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2078:44: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2079:49: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2080:42: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2081:42: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2083:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2085:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2088:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2090:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2091:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2093:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2097:50: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2099:53: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] cpu_addr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c:2187:9: sparse: got void *[assigned] cpu_addr
--
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:210:21: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:215:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:216:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:241:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:242:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:243:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:249:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:255:28: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:384:25: sparse: got void *[assigned] ptr
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:409:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:418:42: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *cpu_addr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: got void *cpu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:419:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:421:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:422:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:424:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:683:35: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1151:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1152:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1153:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1154:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1155:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1156:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1157:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1158:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1159:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1160:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1161:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1163:24: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1183:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1184:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1185:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1186:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c:1188:24: sparse: got restricted __le32 [usertype]
--
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:177:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:314:18: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[addressable] cpu_addr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c:315:9: sparse: got void *[addressable] cpu_addr
--
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:456:25: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *ptr @@
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:567:17: sparse: got void *ptr
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *ptr @@
>> drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:589:17: sparse: got void *ptr
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c:1044:27: sparse: sparse: symbol 'vce_v4_0_ip_funcs' was not declared. Should it be static?
--
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:131:32: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:139:21: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:143:26: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:144:30: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:146:28: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:147:24: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:153:29: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:154:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:155:34: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:162:28: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:260:17: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:271:17: sparse: got void *[assigned] ptr
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:292:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:301:42: sparse: sparse: cast to restricted __le32
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *cpu_addr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: got void *cpu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:302:33: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:304:41: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:305:40: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:307:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:317:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[assigned] ptr @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:319:25: sparse: got void *[assigned] ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:503:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:504:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:505:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:506:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:507:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:508:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:509:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:510:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:511:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:512:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:513:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:514:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:515:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:516:17: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:518:24: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:537:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:538:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:539:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:540:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:541:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:542:16: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: expected unsigned int [usertype]
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c:544:24: sparse: got restricted __le32 [usertype]
--
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:65:25: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:74:26: sparse: sparse: cast to restricted __be32
>> drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *kaddr @@
>> drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/amd/amdgpu/../powerplay/smumgr/smu7_smumgr.c:408:9: sparse: got void *kaddr
--
>> drivers/char/nwflash.c:591:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile *static [toplevel] FLASH_BASE @@ got void [noderef] __iomem * @@
drivers/char/nwflash.c:591:28: sparse: expected unsigned char volatile *static [toplevel] FLASH_BASE
>> drivers/char/nwflash.c:591:28: sparse: got void [noderef] __iomem *
>> drivers/char/nwflash.c:598:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
>> drivers/char/nwflash.c:598:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:598:34: sparse: got void *
drivers/char/nwflash.c:608:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
drivers/char/nwflash.c:608:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:608:34: sparse: got void *
drivers/char/nwflash.c:618:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
drivers/char/nwflash.c:618:18: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/char/nwflash.c:618:18: sparse: got void *
--
drivers/scsi/hptiop.c:150:17: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:171:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:171:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:171:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:208:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:208:18: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:208:18: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:209:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:209:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:209:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:244:44: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] result @@ got int @@
drivers/scsi/hptiop.c:244:44: sparse: expected restricted __le32 [usertype] result
drivers/scsi/hptiop.c:244:44: sparse: got int
drivers/scsi/hptiop.c:289:35: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:276:32: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:277:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] cur_rptr @@ got restricted __le32 [usertype] outlist_rptr @@
drivers/scsi/hptiop.c:277:34: sparse: expected unsigned int [usertype] cur_rptr
drivers/scsi/hptiop.c:277:34: sparse: got restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:283:38: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] _tag @@ got restricted __le32 [usertype] val @@
drivers/scsi/hptiop.c:283:38: sparse: expected unsigned int [usertype] _tag
drivers/scsi/hptiop.c:283:38: sparse: got restricted __le32 [usertype] val
drivers/scsi/hptiop.c:288:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int [assigned] [usertype] cur_rptr @@
drivers/scsi/hptiop.c:288:52: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:288:52: sparse: got unsigned int [assigned] [usertype] cur_rptr
drivers/scsi/hptiop.c:369:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:369:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:369:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:370:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:370:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:370:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:453:64: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct hpt_iop_request_get_config *info @@ got struct hpt_iop_request_get_config [noderef] __iomem *config @@
drivers/scsi/hptiop.c:453:64: sparse: expected struct hpt_iop_request_get_config *info
drivers/scsi/hptiop.c:453:64: sparse: got struct hpt_iop_request_get_config [noderef] __iomem *config
drivers/scsi/hptiop.c:455:25: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:557:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:557:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:557:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:637:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct hpt_iopmv_regs *regs @@ got void [noderef] __iomem * @@
drivers/scsi/hptiop.c:637:24: sparse: expected struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:637:24: sparse: got void [noderef] __iomem *
>> drivers/scsi/hptiop.c:643:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct hpt_iopmv_regs *regs @@
>> drivers/scsi/hptiop.c:643:34: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/scsi/hptiop.c:643:34: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:667:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct hpt_iopmv_regs *regs @@
drivers/scsi/hptiop.c:667:26: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/scsi/hptiop.c:667:26: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:934:27: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:939:34: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:940:30: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:944:43: sparse: sparse: invalid assignment: &=
drivers/scsi/hptiop.c:944:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:944:43: sparse: right side has type int
drivers/scsi/hptiop.c:945:43: sparse: sparse: invalid assignment: ^=
drivers/scsi/hptiop.c:945:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:945:43: sparse: right side has type int
drivers/scsi/hptiop.c:950:57: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:950:48: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] intrfc_len @@ got unsigned int @@
drivers/scsi/hptiop.c:950:48: sparse: expected restricted __le32 [usertype] intrfc_len
drivers/scsi/hptiop.c:950:48: sparse: got unsigned int
drivers/scsi/hptiop.c:951:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:976:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:978:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:981:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:983:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:986:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:988:9: sparse: sparse: cast from restricted __le32
drivers/scsi/hptiop.c:991:35: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] inlist_wptr @@ got unsigned int @@
drivers/scsi/hptiop.c:991:35: sparse: expected restricted __le32 [usertype] inlist_wptr
drivers/scsi/hptiop.c:991:35: sparse: got unsigned int
drivers/scsi/hptiop.c:992:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] @@ got unsigned int @@
drivers/scsi/hptiop.c:992:37: sparse: expected restricted __le32 [usertype]
drivers/scsi/hptiop.c:992:37: sparse: got unsigned int
drivers/scsi/hptiop.c:993:36: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int @@
drivers/scsi/hptiop.c:993:36: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:993:36: sparse: got unsigned int
drivers/scsi/hptiop.c:1536:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1536:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:1536:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:1537:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1537:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:1537:9: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:150:17: sparse: sparse: dereference of noderef expression
drivers/scsi/hptiop.c:150:17: sparse: sparse: dereference of noderef expression
--
>> drivers/scsi/mvumi.c:81:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *addr @@ got void * @@
drivers/scsi/mvumi.c:81:52: sparse: expected void [noderef] __iomem *addr
drivers/scsi/mvumi.c:81:52: sparse: got void *
drivers/scsi/mvumi.c:90:39: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
drivers/scsi/mvumi.c:90:39: sparse: expected void *
drivers/scsi/mvumi.c:90:39: sparse: got void [noderef] __iomem *
drivers/scsi/mvumi.c:210:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_l @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:210:34: sparse: expected unsigned int [usertype] baseaddr_l
drivers/scsi/mvumi.c:210:34: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:211:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_h @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:211:34: sparse: expected unsigned int [usertype] baseaddr_h
drivers/scsi/mvumi.c:211:34: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:213:17: sparse: sparse: invalid assignment: |=
drivers/scsi/mvumi.c:213:17: sparse: left side has type unsigned int
drivers/scsi/mvumi.c:213:17: sparse: right side has type restricted __le32
drivers/scsi/mvumi.c:213:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] size @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:213:17: sparse: expected unsigned int [usertype] size
drivers/scsi/mvumi.c:213:17: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:242:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_l @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:242:26: sparse: expected unsigned int [usertype] baseaddr_l
drivers/scsi/mvumi.c:242:26: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:243:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] baseaddr_h @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:243:26: sparse: expected unsigned int [usertype] baseaddr_h
drivers/scsi/mvumi.c:243:26: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:245:9: sparse: sparse: invalid assignment: |=
drivers/scsi/mvumi.c:245:9: sparse: left side has type unsigned int
drivers/scsi/mvumi.c:245:9: sparse: right side has type restricted __le32
drivers/scsi/mvumi.c:245:9: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] size @@ got restricted __le32 [usertype] @@
drivers/scsi/mvumi.c:245:9: sparse: expected unsigned int [usertype] size
drivers/scsi/mvumi.c:245:9: sparse: got restricted __le32 [usertype]
drivers/scsi/mvumi.c:407:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *inb_read_pointer @@
drivers/scsi/mvumi.c:407:40: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:407:40: sparse: got void *inb_read_pointer
drivers/scsi/mvumi.c:429:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *ib_shadow @@
drivers/scsi/mvumi.c:429:30: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:429:30: sparse: got void *ib_shadow
drivers/scsi/mvumi.c:458:31: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *ib_shadow @@
drivers/scsi/mvumi.c:458:31: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:458:31: sparse: got void *ib_shadow
drivers/scsi/mvumi.c:459:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *inb_write_pointer @@
drivers/scsi/mvumi.c:459:48: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:459:48: sparse: got void *inb_write_pointer
drivers/scsi/mvumi.c:496:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_copy_pointer @@
drivers/scsi/mvumi.c:496:41: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:496:41: sparse: got void *outb_copy_pointer
drivers/scsi/mvumi.c:497:48: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *ob_shadow @@
drivers/scsi/mvumi.c:497:48: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:497:48: sparse: got void *ob_shadow
drivers/scsi/mvumi.c:516:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_read_pointer @@
drivers/scsi/mvumi.c:516:33: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:516:33: sparse: got void *outb_read_pointer
drivers/scsi/mvumi.c:517:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *outb_copy_pointer @@
drivers/scsi/mvumi.c:517:33: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:517:33: sparse: got void *outb_copy_pointer
drivers/scsi/mvumi.c:578:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *outb_read_pointer @@
drivers/scsi/mvumi.c:578:42: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:578:42: sparse: got void *outb_read_pointer
drivers/scsi/mvumi.c:585:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:585:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:585:26: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:586:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:586:26: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:586:26: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:589:40: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *pciea_to_arm_drbl_reg @@
drivers/scsi/mvumi.c:589:40: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:589:40: sparse: got void *pciea_to_arm_drbl_reg
drivers/scsi/mvumi.c:1281:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_drbl_reg @@
drivers/scsi/mvumi.c:1281:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1281:28: sparse: got void *arm_to_pciea_drbl_reg
drivers/scsi/mvumi.c:1282:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_drbl_reg @@
drivers/scsi/mvumi.c:1282:28: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1282:28: sparse: got void *arm_to_pciea_drbl_reg
drivers/scsi/mvumi.c:1284:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_mask_reg @@
drivers/scsi/mvumi.c:1284:48: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1284:48: sparse: got void *arm_to_pciea_mask_reg
drivers/scsi/mvumi.c:1285:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:1285:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1285:28: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:1286:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:1286:28: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:1286:28: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:612:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *enpointa_mask_reg @@
drivers/scsi/mvumi.c:612:26: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:612:26: sparse: got void *enpointa_mask_reg
drivers/scsi/mvumi.c:613:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:613:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:613:28: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:615:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *pciea_to_arm_drbl_reg @@
drivers/scsi/mvumi.c:615:46: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:615:46: sparse: got void *pciea_to_arm_drbl_reg
drivers/scsi/mvumi.c:624:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *arm_to_pciea_msg1 @@
drivers/scsi/mvumi.c:624:36: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:624:36: sparse: got void *arm_to_pciea_msg1
drivers/scsi/mvumi.c:670:32: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_enable @@
drivers/scsi/mvumi.c:670:32: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:670:32: sparse: got void *reset_enable
drivers/scsi/mvumi.c:671:34: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_request @@
drivers/scsi/mvumi.c:671:34: sparse: expected void volatile [noderef] __iomem *addr
drivers/scsi/mvumi.c:671:34: sparse: got void *reset_request
drivers/scsi/mvumi.c:673:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *reset_enable @@
drivers/scsi/mvumi.c:673:35: sparse: expected void volatile [noderef] __iomem *addr
--
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *virtual @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: got void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: got unsigned int [usertype] *
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: got unsigned int [usertype] *
>> drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *from @@ got void *[assigned] src @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: expected void const volatile [noderef] __iomem *from
drivers/gpu/drm/ttm/ttm_bo_util.c:275:9: sparse: got void *[assigned] src
>> drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void *[assigned] dst @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/ttm/ttm_bo_util.c:297:9: sparse: got void *[assigned] dst
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *dst @@ got void *[addressable] new_iomap @@
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: expected void volatile [noderef] __iomem *dst
drivers/gpu/drm/ttm/ttm_bo_util.c:344:17: sparse: got void *[addressable] new_iomap
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *virtual @@
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: got void *virtual
--
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/mgag200/mgag200_cursor.c:32:44: sparse: got void *
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/mgag200/mgag200_cursor.c:85:52: sparse: got void *
>> drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *to @@ got void * @@
>> drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: expected void volatile [noderef] __iomem *to
drivers/gpu/drm/mgag200/mgag200_cursor.c:103:17: sparse: got void *
--
drivers/gpu/drm/qxl/qxl_kms.c:36:5: sparse: sparse: symbol 'qxl_log_level' was not declared. Should it be static?
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_rom *rom @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: expected struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_ram_header *ram_header @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: expected struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_ram_header *ram_header @@
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: got struct qxl_ram_header *ram_header
>> drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: got struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_ram_header *ram_header @@
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: got struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: got struct qxl_rom *rom
--
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: got void *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: got void *
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *[assigned] emap @@
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: got void *[assigned] emap
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *map @@ got void [noderef] __iomem * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: expected void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *map @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: expected void [noderef] __iomem *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: got void *map
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void *[assigned] map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: got void *[assigned] map
--
drivers/isdn/hardware/mISDN/hfcmulti.c:452:17: sparse: sparse: cast from restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:457:17: sparse: sparse: cast from restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:472:17: sparse: sparse: cast from restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:478:17: sparse: sparse: cast from restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:496:32: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:501:32: sparse: sparse: cast to restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:518:25: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:524:25: sparse: sparse: cast to restricted __le16
>> drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *iomem_cookie @@ got void * @@
>> drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: expected void volatile [noderef] __iomem *iomem_cookie
drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: got void *
vim +979 drivers/gpu/drm/radeon/radeon_ttm.c
2014b5694182b5 Christian König 2013-12-18 954
2014b5694182b5 Christian König 2013-12-18 955 static ssize_t radeon_ttm_vram_read(struct file *f, char __user *buf,
2014b5694182b5 Christian König 2013-12-18 956 size_t size, loff_t *pos)
2014b5694182b5 Christian König 2013-12-18 957 {
2014b5694182b5 Christian König 2013-12-18 958 struct radeon_device *rdev = f->private_data;
2014b5694182b5 Christian König 2013-12-18 959 ssize_t result = 0;
2014b5694182b5 Christian König 2013-12-18 960 int r;
2014b5694182b5 Christian König 2013-12-18 961
2014b5694182b5 Christian König 2013-12-18 962 if (size & 0x3 || *pos & 0x3)
2014b5694182b5 Christian König 2013-12-18 963 return -EINVAL;
2014b5694182b5 Christian König 2013-12-18 964
2014b5694182b5 Christian König 2013-12-18 965 while (size) {
2014b5694182b5 Christian König 2013-12-18 966 unsigned long flags;
2014b5694182b5 Christian König 2013-12-18 967 uint32_t value;
2014b5694182b5 Christian König 2013-12-18 968
2014b5694182b5 Christian König 2013-12-18 969 if (*pos >= rdev->mc.mc_vram_size)
2014b5694182b5 Christian König 2013-12-18 970 return result;
2014b5694182b5 Christian König 2013-12-18 971
2014b5694182b5 Christian König 2013-12-18 972 spin_lock_irqsave(&rdev->mmio_idx_lock, flags);
2014b5694182b5 Christian König 2013-12-18 973 WREG32(RADEON_MM_INDEX, ((uint32_t)*pos) | 0x80000000);
2014b5694182b5 Christian König 2013-12-18 974 if (rdev->family >= CHIP_CEDAR)
2014b5694182b5 Christian König 2013-12-18 975 WREG32(EVERGREEN_MM_INDEX_HI, *pos >> 31);
2014b5694182b5 Christian König 2013-12-18 976 value = RREG32(RADEON_MM_DATA);
2014b5694182b5 Christian König 2013-12-18 977 spin_unlock_irqrestore(&rdev->mmio_idx_lock, flags);
2014b5694182b5 Christian König 2013-12-18 978
2014b5694182b5 Christian König 2013-12-18 @979 r = put_user(value, (uint32_t *)buf);
2014b5694182b5 Christian König 2013-12-18 980 if (r)
2014b5694182b5 Christian König 2013-12-18 981 return r;
2014b5694182b5 Christian König 2013-12-18 982
2014b5694182b5 Christian König 2013-12-18 983 result += 4;
2014b5694182b5 Christian König 2013-12-18 984 buf += 4;
2014b5694182b5 Christian König 2013-12-18 985 *pos += 4;
2014b5694182b5 Christian König 2013-12-18 986 size -= 4;
2014b5694182b5 Christian König 2013-12-18 987 }
2014b5694182b5 Christian König 2013-12-18 988
2014b5694182b5 Christian König 2013-12-18 989 return result;
2014b5694182b5 Christian König 2013-12-18 990 }
2014b5694182b5 Christian König 2013-12-18 991
:::::: The code at line 979 was first introduced by commit
:::::: 2014b5694182b54c781b93d26ec993f8a12bca01 drm/radeon: add VRAM debugfs access v3
:::::: TO: Christian König <christian.koenig@amd.com>
:::::: CC: Alex Deucher <alexander.deucher@amd.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33444 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces)
@ 2020-08-11 12:38 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2020-08-11 12:38 UTC (permalink / raw)
To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 21199 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 00e4db51259a5f936fec1424b884f029479d3981
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 8 weeks ago
config: ia64-randconfig-s032-20200811 (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-168-g9554805c-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=ia64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: expected unsigned int [noderef] __user *__pu_ptr
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c: note: in included file (through arch/ia64/include/asm/io.h, arch/ia64/include/asm/smp.h, arch/ia64/include/asm/topology.h, ...):
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
--
>> drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *s @@ got void *kptr @@
>> drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: expected void volatile [noderef] __iomem *s
drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: got void *kptr
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected char [noderef] __iomem *screen_base @@ got void *kptr @@
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: expected char [noderef] __iomem *screen_base
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: got void *kptr
vim +979 drivers/gpu/drm/radeon/radeon_ttm.c
771fe6b912fca54 Jerome Glisse 2009-06-05 782
771fe6b912fca54 Jerome Glisse 2009-06-05 @783 int radeon_ttm_init(struct radeon_device *rdev)
771fe6b912fca54 Jerome Glisse 2009-06-05 784 {
771fe6b912fca54 Jerome Glisse 2009-06-05 785 int r;
771fe6b912fca54 Jerome Glisse 2009-06-05 786
771fe6b912fca54 Jerome Glisse 2009-06-05 787 /* No others user of address space so set it to 0 */
771fe6b912fca54 Jerome Glisse 2009-06-05 788 r = ttm_bo_device_init(&rdev->mman.bdev,
44d847b7439bdea David Herrmann 2013-08-13 789 &radeon_bo_driver,
44d847b7439bdea David Herrmann 2013-08-13 790 rdev->ddev->anon_inode->i_mapping,
8b53e1cb2728b63 Gerd Hoffmann 2019-09-05 791 rdev->ddev->vma_offset_manager,
33b3ad3788aba84 Christoph Hellwig 2019-08-15 792 dma_addressing_limited(&rdev->pdev->dev));
771fe6b912fca54 Jerome Glisse 2009-06-05 793 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 794 DRM_ERROR("failed initializing buffer object driver(%d).\n", r);
771fe6b912fca54 Jerome Glisse 2009-06-05 795 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 796 }
0a0c7596c643239 Jerome Glisse 2009-12-11 797 rdev->mman.initialized = true;
4c7886791264f03 Jerome Glisse 2009-11-20 798 r = ttm_bo_init_mm(&rdev->mman.bdev, TTM_PL_VRAM,
312ea8da049a183 Jerome Glisse 2009-12-07 799 rdev->mc.real_vram_size >> PAGE_SHIFT);
771fe6b912fca54 Jerome Glisse 2009-06-05 800 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 801 DRM_ERROR("Failed initializing VRAM heap.\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 802 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 803 }
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 804 /* Change the size here instead of the init above so only lpfn is affected */
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 805 radeon_ttm_set_active_vram_size(rdev, rdev->mc.visible_vram_size);
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 806
441921d5309cfe0 Daniel Vetter 2011-02-18 807 r = radeon_bo_create(rdev, 256 * 1024, PAGE_SIZE, true,
831b6966a60fe72 Maarten Lankhorst 2014-09-18 808 RADEON_GEM_DOMAIN_VRAM, 0, NULL,
4aa5b92fd48f88f Kent Russell 2017-08-08 809 NULL, &rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 810 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 811 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 812 }
4aa5b92fd48f88f Kent Russell 2017-08-08 813 r = radeon_bo_reserve(rdev->stolen_vga_memory, false);
4c7886791264f03 Jerome Glisse 2009-11-20 814 if (r)
4c7886791264f03 Jerome Glisse 2009-11-20 815 return r;
4aa5b92fd48f88f Kent Russell 2017-08-08 816 r = radeon_bo_pin(rdev->stolen_vga_memory, RADEON_GEM_DOMAIN_VRAM, NULL);
4aa5b92fd48f88f Kent Russell 2017-08-08 817 radeon_bo_unreserve(rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 818 if (r) {
4aa5b92fd48f88f Kent Russell 2017-08-08 819 radeon_bo_unref(&rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 820 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 821 }
771fe6b912fca54 Jerome Glisse 2009-06-05 822 DRM_INFO("radeon: %uM of VRAM memory ready\n",
fc986034540102c Niels Ole Salscheider 2013-05-18 823 (unsigned) (rdev->mc.real_vram_size / (1024 * 1024)));
4c7886791264f03 Jerome Glisse 2009-11-20 824 r = ttm_bo_init_mm(&rdev->mman.bdev, TTM_PL_TT,
312ea8da049a183 Jerome Glisse 2009-12-07 825 rdev->mc.gtt_size >> PAGE_SHIFT);
771fe6b912fca54 Jerome Glisse 2009-06-05 826 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 827 DRM_ERROR("Failed initializing GTT heap.\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 828 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 829 }
771fe6b912fca54 Jerome Glisse 2009-06-05 830 DRM_INFO("radeon: %uM of GTT memory ready.\n",
3ce0a23d2d25318 Jerome Glisse 2009-09-08 831 (unsigned)(rdev->mc.gtt_size / (1024 * 1024)));
fa8a123855e2006 Dave Airlie 2009-08-26 832
fa8a123855e2006 Dave Airlie 2009-08-26 833 r = radeon_ttm_debugfs_init(rdev);
fa8a123855e2006 Dave Airlie 2009-08-26 834 if (r) {
fa8a123855e2006 Dave Airlie 2009-08-26 835 DRM_ERROR("Failed to init debugfs\n");
fa8a123855e2006 Dave Airlie 2009-08-26 836 return r;
fa8a123855e2006 Dave Airlie 2009-08-26 837 }
771fe6b912fca54 Jerome Glisse 2009-06-05 838 return 0;
771fe6b912fca54 Jerome Glisse 2009-06-05 839 }
771fe6b912fca54 Jerome Glisse 2009-06-05 840
771fe6b912fca54 Jerome Glisse 2009-06-05 841 void radeon_ttm_fini(struct radeon_device *rdev)
771fe6b912fca54 Jerome Glisse 2009-06-05 842 {
4c7886791264f03 Jerome Glisse 2009-11-20 843 int r;
4c7886791264f03 Jerome Glisse 2009-11-20 844
0a0c7596c643239 Jerome Glisse 2009-12-11 845 if (!rdev->mman.initialized)
0a0c7596c643239 Jerome Glisse 2009-12-11 846 return;
2014b5694182b54 Christian König 2013-12-18 847 radeon_ttm_debugfs_fini(rdev);
4aa5b92fd48f88f Kent Russell 2017-08-08 848 if (rdev->stolen_vga_memory) {
4aa5b92fd48f88f Kent Russell 2017-08-08 849 r = radeon_bo_reserve(rdev->stolen_vga_memory, false);
4c7886791264f03 Jerome Glisse 2009-11-20 850 if (r == 0) {
4aa5b92fd48f88f Kent Russell 2017-08-08 851 radeon_bo_unpin(rdev->stolen_vga_memory);
4aa5b92fd48f88f Kent Russell 2017-08-08 852 radeon_bo_unreserve(rdev->stolen_vga_memory);
4c7886791264f03 Jerome Glisse 2009-11-20 853 }
4aa5b92fd48f88f Kent Russell 2017-08-08 854 radeon_bo_unref(&rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 855 }
771fe6b912fca54 Jerome Glisse 2009-06-05 856 ttm_bo_clean_mm(&rdev->mman.bdev, TTM_PL_VRAM);
771fe6b912fca54 Jerome Glisse 2009-06-05 857 ttm_bo_clean_mm(&rdev->mman.bdev, TTM_PL_TT);
771fe6b912fca54 Jerome Glisse 2009-06-05 858 ttm_bo_device_release(&rdev->mman.bdev);
771fe6b912fca54 Jerome Glisse 2009-06-05 859 radeon_gart_fini(rdev);
0a0c7596c643239 Jerome Glisse 2009-12-11 860 rdev->mman.initialized = false;
771fe6b912fca54 Jerome Glisse 2009-06-05 861 DRM_INFO("radeon: ttm finalized\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 862 }
771fe6b912fca54 Jerome Glisse 2009-06-05 863
5359533801e3dd3 Dave Airlie 2011-03-14 864 /* this should only be called at bootup or when userspace
5359533801e3dd3 Dave Airlie 2011-03-14 865 * isn't running */
5359533801e3dd3 Dave Airlie 2011-03-14 866 void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size)
5359533801e3dd3 Dave Airlie 2011-03-14 867 {
5359533801e3dd3 Dave Airlie 2011-03-14 868 struct ttm_mem_type_manager *man;
5359533801e3dd3 Dave Airlie 2011-03-14 869
5359533801e3dd3 Dave Airlie 2011-03-14 870 if (!rdev->mman.initialized)
5359533801e3dd3 Dave Airlie 2011-03-14 871 return;
5359533801e3dd3 Dave Airlie 2011-03-14 872
5359533801e3dd3 Dave Airlie 2011-03-14 873 man = &rdev->mman.bdev.man[TTM_PL_VRAM];
5359533801e3dd3 Dave Airlie 2011-03-14 874 /* this just adjusts TTM size idea, which sets lpfn to the correct value */
5359533801e3dd3 Dave Airlie 2011-03-14 875 man->size = size >> PAGE_SHIFT;
5359533801e3dd3 Dave Airlie 2011-03-14 876 }
5359533801e3dd3 Dave Airlie 2011-03-14 877
2bfb0b678e48dee Souptick Joarder 2018-04-16 878 static vm_fault_t radeon_ttm_fault(struct vm_fault *vmf)
771fe6b912fca54 Jerome Glisse 2009-06-05 879 {
771fe6b912fca54 Jerome Glisse 2009-06-05 880 struct ttm_buffer_object *bo;
5876dd249e8e47c Matthew Garrett 2010-04-26 881 struct radeon_device *rdev;
2bfb0b678e48dee Souptick Joarder 2018-04-16 882 vm_fault_t ret;
771fe6b912fca54 Jerome Glisse 2009-06-05 883
11bac80004499ea Dave Jiang 2017-02-24 884 bo = (struct ttm_buffer_object *)vmf->vma->vm_private_data;
165d3448a1a0e86 Christian König 2019-09-27 885 if (bo == NULL)
771fe6b912fca54 Jerome Glisse 2009-06-05 886 return VM_FAULT_NOPAGE;
165d3448a1a0e86 Christian König 2019-09-27 887
5876dd249e8e47c Matthew Garrett 2010-04-26 888 rdev = radeon_get_rdev(bo->bdev);
db7fce3983ad9b3 Christian König 2012-05-11 889 down_read(&rdev->pm.mclk_lock);
165d3448a1a0e86 Christian König 2019-09-27 890 ret = ttm_bo_vm_fault(vmf);
db7fce3983ad9b3 Christian König 2012-05-11 891 up_read(&rdev->pm.mclk_lock);
2bfb0b678e48dee Souptick Joarder 2018-04-16 892 return ret;
771fe6b912fca54 Jerome Glisse 2009-06-05 893 }
771fe6b912fca54 Jerome Glisse 2009-06-05 894
165d3448a1a0e86 Christian König 2019-09-27 895 static struct vm_operations_struct radeon_ttm_vm_ops = {
165d3448a1a0e86 Christian König 2019-09-27 896 .fault = radeon_ttm_fault,
165d3448a1a0e86 Christian König 2019-09-27 897 .open = ttm_bo_vm_open,
165d3448a1a0e86 Christian König 2019-09-27 898 .close = ttm_bo_vm_close,
165d3448a1a0e86 Christian König 2019-09-27 899 .access = ttm_bo_vm_access
165d3448a1a0e86 Christian König 2019-09-27 900 };
165d3448a1a0e86 Christian König 2019-09-27 901
771fe6b912fca54 Jerome Glisse 2009-06-05 902 int radeon_mmap(struct file *filp, struct vm_area_struct *vma)
771fe6b912fca54 Jerome Glisse 2009-06-05 903 {
771fe6b912fca54 Jerome Glisse 2009-06-05 904 int r;
bed2dd84212eb01 Thomas Zimmermann 2019-02-07 905 struct drm_file *file_priv = filp->private_data;
bed2dd84212eb01 Thomas Zimmermann 2019-02-07 906 struct radeon_device *rdev = file_priv->minor->dev->dev_private;
771fe6b912fca54 Jerome Glisse 2009-06-05 907
165d3448a1a0e86 Christian König 2019-09-27 908 if (rdev == NULL)
771fe6b912fca54 Jerome Glisse 2009-06-05 909 return -EINVAL;
165d3448a1a0e86 Christian König 2019-09-27 910
771fe6b912fca54 Jerome Glisse 2009-06-05 911 r = ttm_bo_mmap(filp, vma, &rdev->mman.bdev);
165d3448a1a0e86 Christian König 2019-09-27 912 if (unlikely(r != 0))
771fe6b912fca54 Jerome Glisse 2009-06-05 913 return r;
165d3448a1a0e86 Christian König 2019-09-27 914
771fe6b912fca54 Jerome Glisse 2009-06-05 915 vma->vm_ops = &radeon_ttm_vm_ops;
771fe6b912fca54 Jerome Glisse 2009-06-05 916 return 0;
771fe6b912fca54 Jerome Glisse 2009-06-05 917 }
771fe6b912fca54 Jerome Glisse 2009-06-05 918
fa8a123855e2006 Dave Airlie 2009-08-26 919 #if defined(CONFIG_DEBUG_FS)
893d6e6e122386d Christian König 2013-12-12 920
fa8a123855e2006 Dave Airlie 2009-08-26 921 static int radeon_mm_dump_table(struct seq_file *m, void *data)
fa8a123855e2006 Dave Airlie 2009-08-26 922 {
fa8a123855e2006 Dave Airlie 2009-08-26 923 struct drm_info_node *node = (struct drm_info_node *)m->private;
893d6e6e122386d Christian König 2013-12-12 924 unsigned ttm_pl = *(int*)node->info_ent->data;
fa8a123855e2006 Dave Airlie 2009-08-26 925 struct drm_device *dev = node->minor->dev;
fa8a123855e2006 Dave Airlie 2009-08-26 926 struct radeon_device *rdev = dev->dev_private;
bbbb29efa20d552 Christian König 2017-08-07 927 struct ttm_mem_type_manager *man = &rdev->mman.bdev.man[ttm_pl];
b5c3714fe878974 Daniel Vetter 2016-12-29 928 struct drm_printer p = drm_seq_file_printer(m);
fa8a123855e2006 Dave Airlie 2009-08-26 929
bbbb29efa20d552 Christian König 2017-08-07 930 man->func->debug(man, &p);
b5c3714fe878974 Daniel Vetter 2016-12-29 931 return 0;
fa8a123855e2006 Dave Airlie 2009-08-26 932 }
893d6e6e122386d Christian König 2013-12-12 933
bbbb29efa20d552 Christian König 2017-08-07 934
893d6e6e122386d Christian König 2013-12-12 935 static int ttm_pl_vram = TTM_PL_VRAM;
893d6e6e122386d Christian König 2013-12-12 936 static int ttm_pl_tt = TTM_PL_TT;
893d6e6e122386d Christian König 2013-12-12 937
893d6e6e122386d Christian König 2013-12-12 938 static struct drm_info_list radeon_ttm_debugfs_list[] = {
893d6e6e122386d Christian König 2013-12-12 939 {"radeon_vram_mm", radeon_mm_dump_table, 0, &ttm_pl_vram},
893d6e6e122386d Christian König 2013-12-12 940 {"radeon_gtt_mm", radeon_mm_dump_table, 0, &ttm_pl_tt},
893d6e6e122386d Christian König 2013-12-12 941 {"ttm_page_pool", ttm_page_alloc_debugfs, 0, NULL},
893d6e6e122386d Christian König 2013-12-12 942 #ifdef CONFIG_SWIOTLB
893d6e6e122386d Christian König 2013-12-12 943 {"ttm_dma_page_pool", ttm_dma_page_alloc_debugfs, 0, NULL}
893d6e6e122386d Christian König 2013-12-12 944 #endif
893d6e6e122386d Christian König 2013-12-12 945 };
893d6e6e122386d Christian König 2013-12-12 946
2014b5694182b54 Christian König 2013-12-18 947 static int radeon_ttm_vram_open(struct inode *inode, struct file *filep)
2014b5694182b54 Christian König 2013-12-18 948 {
2014b5694182b54 Christian König 2013-12-18 949 struct radeon_device *rdev = inode->i_private;
2014b5694182b54 Christian König 2013-12-18 950 i_size_write(inode, rdev->mc.mc_vram_size);
2014b5694182b54 Christian König 2013-12-18 951 filep->private_data = inode->i_private;
2014b5694182b54 Christian König 2013-12-18 952 return 0;
2014b5694182b54 Christian König 2013-12-18 953 }
2014b5694182b54 Christian König 2013-12-18 954
2014b5694182b54 Christian König 2013-12-18 955 static ssize_t radeon_ttm_vram_read(struct file *f, char __user *buf,
2014b5694182b54 Christian König 2013-12-18 956 size_t size, loff_t *pos)
2014b5694182b54 Christian König 2013-12-18 957 {
2014b5694182b54 Christian König 2013-12-18 958 struct radeon_device *rdev = f->private_data;
2014b5694182b54 Christian König 2013-12-18 959 ssize_t result = 0;
2014b5694182b54 Christian König 2013-12-18 960 int r;
2014b5694182b54 Christian König 2013-12-18 961
2014b5694182b54 Christian König 2013-12-18 962 if (size & 0x3 || *pos & 0x3)
2014b5694182b54 Christian König 2013-12-18 963 return -EINVAL;
2014b5694182b54 Christian König 2013-12-18 964
2014b5694182b54 Christian König 2013-12-18 965 while (size) {
2014b5694182b54 Christian König 2013-12-18 966 unsigned long flags;
2014b5694182b54 Christian König 2013-12-18 967 uint32_t value;
2014b5694182b54 Christian König 2013-12-18 968
2014b5694182b54 Christian König 2013-12-18 969 if (*pos >= rdev->mc.mc_vram_size)
2014b5694182b54 Christian König 2013-12-18 970 return result;
2014b5694182b54 Christian König 2013-12-18 971
2014b5694182b54 Christian König 2013-12-18 972 spin_lock_irqsave(&rdev->mmio_idx_lock, flags);
2014b5694182b54 Christian König 2013-12-18 973 WREG32(RADEON_MM_INDEX, ((uint32_t)*pos) | 0x80000000);
2014b5694182b54 Christian König 2013-12-18 974 if (rdev->family >= CHIP_CEDAR)
2014b5694182b54 Christian König 2013-12-18 975 WREG32(EVERGREEN_MM_INDEX_HI, *pos >> 31);
2014b5694182b54 Christian König 2013-12-18 976 value = RREG32(RADEON_MM_DATA);
2014b5694182b54 Christian König 2013-12-18 977 spin_unlock_irqrestore(&rdev->mmio_idx_lock, flags);
2014b5694182b54 Christian König 2013-12-18 978
2014b5694182b54 Christian König 2013-12-18 @979 r = put_user(value, (uint32_t *)buf);
2014b5694182b54 Christian König 2013-12-18 980 if (r)
2014b5694182b54 Christian König 2013-12-18 981 return r;
2014b5694182b54 Christian König 2013-12-18 982
2014b5694182b54 Christian König 2013-12-18 983 result += 4;
2014b5694182b54 Christian König 2013-12-18 984 buf += 4;
2014b5694182b54 Christian König 2013-12-18 985 *pos += 4;
2014b5694182b54 Christian König 2013-12-18 986 size -= 4;
2014b5694182b54 Christian König 2013-12-18 987 }
2014b5694182b54 Christian König 2013-12-18 988
2014b5694182b54 Christian König 2013-12-18 989 return result;
2014b5694182b54 Christian König 2013-12-18 990 }
2014b5694182b54 Christian König 2013-12-18 991
:::::: The code at line 979 was first introduced by commit
:::::: 2014b5694182b54c781b93d26ec993f8a12bca01 drm/radeon: add VRAM debugfs access v3
:::::: TO: Christian König <christian.koenig@amd.com>
:::::: CC: Alex Deucher <alexander.deucher@amd.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 32326 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces)
@ 2020-08-11 12:38 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2020-08-11 12:38 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 21550 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 00e4db51259a5f936fec1424b884f029479d3981
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 8 weeks ago
config: ia64-randconfig-s032-20200811 (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-168-g9554805c-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=ia64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_ptr @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: expected unsigned int [noderef] __user *__pu_ptr
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/radeon/radeon_ttm.c: note: in included file (through arch/ia64/include/asm/io.h, arch/ia64/include/asm/smp.h, arch/ia64/include/asm/topology.h, ...):
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
--
>> drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *s @@ got void *kptr @@
>> drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: expected void volatile [noderef] __iomem *s
drivers/gpu/drm/radeon/radeon_fb.c:264:22: sparse: got void *kptr
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected char [noderef] __iomem *screen_base @@ got void *kptr @@
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: expected char [noderef] __iomem *screen_base
drivers/gpu/drm/radeon/radeon_fb.c:271:27: sparse: got void *kptr
vim +979 drivers/gpu/drm/radeon/radeon_ttm.c
771fe6b912fca54 Jerome Glisse 2009-06-05 782
771fe6b912fca54 Jerome Glisse 2009-06-05 @783 int radeon_ttm_init(struct radeon_device *rdev)
771fe6b912fca54 Jerome Glisse 2009-06-05 784 {
771fe6b912fca54 Jerome Glisse 2009-06-05 785 int r;
771fe6b912fca54 Jerome Glisse 2009-06-05 786
771fe6b912fca54 Jerome Glisse 2009-06-05 787 /* No others user of address space so set it to 0 */
771fe6b912fca54 Jerome Glisse 2009-06-05 788 r = ttm_bo_device_init(&rdev->mman.bdev,
44d847b7439bdea David Herrmann 2013-08-13 789 &radeon_bo_driver,
44d847b7439bdea David Herrmann 2013-08-13 790 rdev->ddev->anon_inode->i_mapping,
8b53e1cb2728b63 Gerd Hoffmann 2019-09-05 791 rdev->ddev->vma_offset_manager,
33b3ad3788aba84 Christoph Hellwig 2019-08-15 792 dma_addressing_limited(&rdev->pdev->dev));
771fe6b912fca54 Jerome Glisse 2009-06-05 793 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 794 DRM_ERROR("failed initializing buffer object driver(%d).\n", r);
771fe6b912fca54 Jerome Glisse 2009-06-05 795 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 796 }
0a0c7596c643239 Jerome Glisse 2009-12-11 797 rdev->mman.initialized = true;
4c7886791264f03 Jerome Glisse 2009-11-20 798 r = ttm_bo_init_mm(&rdev->mman.bdev, TTM_PL_VRAM,
312ea8da049a183 Jerome Glisse 2009-12-07 799 rdev->mc.real_vram_size >> PAGE_SHIFT);
771fe6b912fca54 Jerome Glisse 2009-06-05 800 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 801 DRM_ERROR("Failed initializing VRAM heap.\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 802 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 803 }
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 804 /* Change the size here instead of the init above so only lpfn is affected */
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 805 radeon_ttm_set_active_vram_size(rdev, rdev->mc.visible_vram_size);
14eedc32a3c0ec9 Lauri Kasanen 2014-02-28 806
441921d5309cfe0 Daniel Vetter 2011-02-18 807 r = radeon_bo_create(rdev, 256 * 1024, PAGE_SIZE, true,
831b6966a60fe72 Maarten Lankhorst 2014-09-18 808 RADEON_GEM_DOMAIN_VRAM, 0, NULL,
4aa5b92fd48f88f Kent Russell 2017-08-08 809 NULL, &rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 810 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 811 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 812 }
4aa5b92fd48f88f Kent Russell 2017-08-08 813 r = radeon_bo_reserve(rdev->stolen_vga_memory, false);
4c7886791264f03 Jerome Glisse 2009-11-20 814 if (r)
4c7886791264f03 Jerome Glisse 2009-11-20 815 return r;
4aa5b92fd48f88f Kent Russell 2017-08-08 816 r = radeon_bo_pin(rdev->stolen_vga_memory, RADEON_GEM_DOMAIN_VRAM, NULL);
4aa5b92fd48f88f Kent Russell 2017-08-08 817 radeon_bo_unreserve(rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 818 if (r) {
4aa5b92fd48f88f Kent Russell 2017-08-08 819 radeon_bo_unref(&rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 820 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 821 }
771fe6b912fca54 Jerome Glisse 2009-06-05 822 DRM_INFO("radeon: %uM of VRAM memory ready\n",
fc986034540102c Niels Ole Salscheider 2013-05-18 823 (unsigned) (rdev->mc.real_vram_size / (1024 * 1024)));
4c7886791264f03 Jerome Glisse 2009-11-20 824 r = ttm_bo_init_mm(&rdev->mman.bdev, TTM_PL_TT,
312ea8da049a183 Jerome Glisse 2009-12-07 825 rdev->mc.gtt_size >> PAGE_SHIFT);
771fe6b912fca54 Jerome Glisse 2009-06-05 826 if (r) {
771fe6b912fca54 Jerome Glisse 2009-06-05 827 DRM_ERROR("Failed initializing GTT heap.\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 828 return r;
771fe6b912fca54 Jerome Glisse 2009-06-05 829 }
771fe6b912fca54 Jerome Glisse 2009-06-05 830 DRM_INFO("radeon: %uM of GTT memory ready.\n",
3ce0a23d2d25318 Jerome Glisse 2009-09-08 831 (unsigned)(rdev->mc.gtt_size / (1024 * 1024)));
fa8a123855e2006 Dave Airlie 2009-08-26 832
fa8a123855e2006 Dave Airlie 2009-08-26 833 r = radeon_ttm_debugfs_init(rdev);
fa8a123855e2006 Dave Airlie 2009-08-26 834 if (r) {
fa8a123855e2006 Dave Airlie 2009-08-26 835 DRM_ERROR("Failed to init debugfs\n");
fa8a123855e2006 Dave Airlie 2009-08-26 836 return r;
fa8a123855e2006 Dave Airlie 2009-08-26 837 }
771fe6b912fca54 Jerome Glisse 2009-06-05 838 return 0;
771fe6b912fca54 Jerome Glisse 2009-06-05 839 }
771fe6b912fca54 Jerome Glisse 2009-06-05 840
771fe6b912fca54 Jerome Glisse 2009-06-05 841 void radeon_ttm_fini(struct radeon_device *rdev)
771fe6b912fca54 Jerome Glisse 2009-06-05 842 {
4c7886791264f03 Jerome Glisse 2009-11-20 843 int r;
4c7886791264f03 Jerome Glisse 2009-11-20 844
0a0c7596c643239 Jerome Glisse 2009-12-11 845 if (!rdev->mman.initialized)
0a0c7596c643239 Jerome Glisse 2009-12-11 846 return;
2014b5694182b54 Christian König 2013-12-18 847 radeon_ttm_debugfs_fini(rdev);
4aa5b92fd48f88f Kent Russell 2017-08-08 848 if (rdev->stolen_vga_memory) {
4aa5b92fd48f88f Kent Russell 2017-08-08 849 r = radeon_bo_reserve(rdev->stolen_vga_memory, false);
4c7886791264f03 Jerome Glisse 2009-11-20 850 if (r == 0) {
4aa5b92fd48f88f Kent Russell 2017-08-08 851 radeon_bo_unpin(rdev->stolen_vga_memory);
4aa5b92fd48f88f Kent Russell 2017-08-08 852 radeon_bo_unreserve(rdev->stolen_vga_memory);
4c7886791264f03 Jerome Glisse 2009-11-20 853 }
4aa5b92fd48f88f Kent Russell 2017-08-08 854 radeon_bo_unref(&rdev->stolen_vga_memory);
771fe6b912fca54 Jerome Glisse 2009-06-05 855 }
771fe6b912fca54 Jerome Glisse 2009-06-05 856 ttm_bo_clean_mm(&rdev->mman.bdev, TTM_PL_VRAM);
771fe6b912fca54 Jerome Glisse 2009-06-05 857 ttm_bo_clean_mm(&rdev->mman.bdev, TTM_PL_TT);
771fe6b912fca54 Jerome Glisse 2009-06-05 858 ttm_bo_device_release(&rdev->mman.bdev);
771fe6b912fca54 Jerome Glisse 2009-06-05 859 radeon_gart_fini(rdev);
0a0c7596c643239 Jerome Glisse 2009-12-11 860 rdev->mman.initialized = false;
771fe6b912fca54 Jerome Glisse 2009-06-05 861 DRM_INFO("radeon: ttm finalized\n");
771fe6b912fca54 Jerome Glisse 2009-06-05 862 }
771fe6b912fca54 Jerome Glisse 2009-06-05 863
5359533801e3dd3 Dave Airlie 2011-03-14 864 /* this should only be called at bootup or when userspace
5359533801e3dd3 Dave Airlie 2011-03-14 865 * isn't running */
5359533801e3dd3 Dave Airlie 2011-03-14 866 void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size)
5359533801e3dd3 Dave Airlie 2011-03-14 867 {
5359533801e3dd3 Dave Airlie 2011-03-14 868 struct ttm_mem_type_manager *man;
5359533801e3dd3 Dave Airlie 2011-03-14 869
5359533801e3dd3 Dave Airlie 2011-03-14 870 if (!rdev->mman.initialized)
5359533801e3dd3 Dave Airlie 2011-03-14 871 return;
5359533801e3dd3 Dave Airlie 2011-03-14 872
5359533801e3dd3 Dave Airlie 2011-03-14 873 man = &rdev->mman.bdev.man[TTM_PL_VRAM];
5359533801e3dd3 Dave Airlie 2011-03-14 874 /* this just adjusts TTM size idea, which sets lpfn to the correct value */
5359533801e3dd3 Dave Airlie 2011-03-14 875 man->size = size >> PAGE_SHIFT;
5359533801e3dd3 Dave Airlie 2011-03-14 876 }
5359533801e3dd3 Dave Airlie 2011-03-14 877
2bfb0b678e48dee Souptick Joarder 2018-04-16 878 static vm_fault_t radeon_ttm_fault(struct vm_fault *vmf)
771fe6b912fca54 Jerome Glisse 2009-06-05 879 {
771fe6b912fca54 Jerome Glisse 2009-06-05 880 struct ttm_buffer_object *bo;
5876dd249e8e47c Matthew Garrett 2010-04-26 881 struct radeon_device *rdev;
2bfb0b678e48dee Souptick Joarder 2018-04-16 882 vm_fault_t ret;
771fe6b912fca54 Jerome Glisse 2009-06-05 883
11bac80004499ea Dave Jiang 2017-02-24 884 bo = (struct ttm_buffer_object *)vmf->vma->vm_private_data;
165d3448a1a0e86 Christian König 2019-09-27 885 if (bo == NULL)
771fe6b912fca54 Jerome Glisse 2009-06-05 886 return VM_FAULT_NOPAGE;
165d3448a1a0e86 Christian König 2019-09-27 887
5876dd249e8e47c Matthew Garrett 2010-04-26 888 rdev = radeon_get_rdev(bo->bdev);
db7fce3983ad9b3 Christian König 2012-05-11 889 down_read(&rdev->pm.mclk_lock);
165d3448a1a0e86 Christian König 2019-09-27 890 ret = ttm_bo_vm_fault(vmf);
db7fce3983ad9b3 Christian König 2012-05-11 891 up_read(&rdev->pm.mclk_lock);
2bfb0b678e48dee Souptick Joarder 2018-04-16 892 return ret;
771fe6b912fca54 Jerome Glisse 2009-06-05 893 }
771fe6b912fca54 Jerome Glisse 2009-06-05 894
165d3448a1a0e86 Christian König 2019-09-27 895 static struct vm_operations_struct radeon_ttm_vm_ops = {
165d3448a1a0e86 Christian König 2019-09-27 896 .fault = radeon_ttm_fault,
165d3448a1a0e86 Christian König 2019-09-27 897 .open = ttm_bo_vm_open,
165d3448a1a0e86 Christian König 2019-09-27 898 .close = ttm_bo_vm_close,
165d3448a1a0e86 Christian König 2019-09-27 899 .access = ttm_bo_vm_access
165d3448a1a0e86 Christian König 2019-09-27 900 };
165d3448a1a0e86 Christian König 2019-09-27 901
771fe6b912fca54 Jerome Glisse 2009-06-05 902 int radeon_mmap(struct file *filp, struct vm_area_struct *vma)
771fe6b912fca54 Jerome Glisse 2009-06-05 903 {
771fe6b912fca54 Jerome Glisse 2009-06-05 904 int r;
bed2dd84212eb01 Thomas Zimmermann 2019-02-07 905 struct drm_file *file_priv = filp->private_data;
bed2dd84212eb01 Thomas Zimmermann 2019-02-07 906 struct radeon_device *rdev = file_priv->minor->dev->dev_private;
771fe6b912fca54 Jerome Glisse 2009-06-05 907
165d3448a1a0e86 Christian König 2019-09-27 908 if (rdev == NULL)
771fe6b912fca54 Jerome Glisse 2009-06-05 909 return -EINVAL;
165d3448a1a0e86 Christian König 2019-09-27 910
771fe6b912fca54 Jerome Glisse 2009-06-05 911 r = ttm_bo_mmap(filp, vma, &rdev->mman.bdev);
165d3448a1a0e86 Christian König 2019-09-27 912 if (unlikely(r != 0))
771fe6b912fca54 Jerome Glisse 2009-06-05 913 return r;
165d3448a1a0e86 Christian König 2019-09-27 914
771fe6b912fca54 Jerome Glisse 2009-06-05 915 vma->vm_ops = &radeon_ttm_vm_ops;
771fe6b912fca54 Jerome Glisse 2009-06-05 916 return 0;
771fe6b912fca54 Jerome Glisse 2009-06-05 917 }
771fe6b912fca54 Jerome Glisse 2009-06-05 918
fa8a123855e2006 Dave Airlie 2009-08-26 919 #if defined(CONFIG_DEBUG_FS)
893d6e6e122386d Christian König 2013-12-12 920
fa8a123855e2006 Dave Airlie 2009-08-26 921 static int radeon_mm_dump_table(struct seq_file *m, void *data)
fa8a123855e2006 Dave Airlie 2009-08-26 922 {
fa8a123855e2006 Dave Airlie 2009-08-26 923 struct drm_info_node *node = (struct drm_info_node *)m->private;
893d6e6e122386d Christian König 2013-12-12 924 unsigned ttm_pl = *(int*)node->info_ent->data;
fa8a123855e2006 Dave Airlie 2009-08-26 925 struct drm_device *dev = node->minor->dev;
fa8a123855e2006 Dave Airlie 2009-08-26 926 struct radeon_device *rdev = dev->dev_private;
bbbb29efa20d552 Christian König 2017-08-07 927 struct ttm_mem_type_manager *man = &rdev->mman.bdev.man[ttm_pl];
b5c3714fe878974 Daniel Vetter 2016-12-29 928 struct drm_printer p = drm_seq_file_printer(m);
fa8a123855e2006 Dave Airlie 2009-08-26 929
bbbb29efa20d552 Christian König 2017-08-07 930 man->func->debug(man, &p);
b5c3714fe878974 Daniel Vetter 2016-12-29 931 return 0;
fa8a123855e2006 Dave Airlie 2009-08-26 932 }
893d6e6e122386d Christian König 2013-12-12 933
bbbb29efa20d552 Christian König 2017-08-07 934
893d6e6e122386d Christian König 2013-12-12 935 static int ttm_pl_vram = TTM_PL_VRAM;
893d6e6e122386d Christian König 2013-12-12 936 static int ttm_pl_tt = TTM_PL_TT;
893d6e6e122386d Christian König 2013-12-12 937
893d6e6e122386d Christian König 2013-12-12 938 static struct drm_info_list radeon_ttm_debugfs_list[] = {
893d6e6e122386d Christian König 2013-12-12 939 {"radeon_vram_mm", radeon_mm_dump_table, 0, &ttm_pl_vram},
893d6e6e122386d Christian König 2013-12-12 940 {"radeon_gtt_mm", radeon_mm_dump_table, 0, &ttm_pl_tt},
893d6e6e122386d Christian König 2013-12-12 941 {"ttm_page_pool", ttm_page_alloc_debugfs, 0, NULL},
893d6e6e122386d Christian König 2013-12-12 942 #ifdef CONFIG_SWIOTLB
893d6e6e122386d Christian König 2013-12-12 943 {"ttm_dma_page_pool", ttm_dma_page_alloc_debugfs, 0, NULL}
893d6e6e122386d Christian König 2013-12-12 944 #endif
893d6e6e122386d Christian König 2013-12-12 945 };
893d6e6e122386d Christian König 2013-12-12 946
2014b5694182b54 Christian König 2013-12-18 947 static int radeon_ttm_vram_open(struct inode *inode, struct file *filep)
2014b5694182b54 Christian König 2013-12-18 948 {
2014b5694182b54 Christian König 2013-12-18 949 struct radeon_device *rdev = inode->i_private;
2014b5694182b54 Christian König 2013-12-18 950 i_size_write(inode, rdev->mc.mc_vram_size);
2014b5694182b54 Christian König 2013-12-18 951 filep->private_data = inode->i_private;
2014b5694182b54 Christian König 2013-12-18 952 return 0;
2014b5694182b54 Christian König 2013-12-18 953 }
2014b5694182b54 Christian König 2013-12-18 954
2014b5694182b54 Christian König 2013-12-18 955 static ssize_t radeon_ttm_vram_read(struct file *f, char __user *buf,
2014b5694182b54 Christian König 2013-12-18 956 size_t size, loff_t *pos)
2014b5694182b54 Christian König 2013-12-18 957 {
2014b5694182b54 Christian König 2013-12-18 958 struct radeon_device *rdev = f->private_data;
2014b5694182b54 Christian König 2013-12-18 959 ssize_t result = 0;
2014b5694182b54 Christian König 2013-12-18 960 int r;
2014b5694182b54 Christian König 2013-12-18 961
2014b5694182b54 Christian König 2013-12-18 962 if (size & 0x3 || *pos & 0x3)
2014b5694182b54 Christian König 2013-12-18 963 return -EINVAL;
2014b5694182b54 Christian König 2013-12-18 964
2014b5694182b54 Christian König 2013-12-18 965 while (size) {
2014b5694182b54 Christian König 2013-12-18 966 unsigned long flags;
2014b5694182b54 Christian König 2013-12-18 967 uint32_t value;
2014b5694182b54 Christian König 2013-12-18 968
2014b5694182b54 Christian König 2013-12-18 969 if (*pos >= rdev->mc.mc_vram_size)
2014b5694182b54 Christian König 2013-12-18 970 return result;
2014b5694182b54 Christian König 2013-12-18 971
2014b5694182b54 Christian König 2013-12-18 972 spin_lock_irqsave(&rdev->mmio_idx_lock, flags);
2014b5694182b54 Christian König 2013-12-18 973 WREG32(RADEON_MM_INDEX, ((uint32_t)*pos) | 0x80000000);
2014b5694182b54 Christian König 2013-12-18 974 if (rdev->family >= CHIP_CEDAR)
2014b5694182b54 Christian König 2013-12-18 975 WREG32(EVERGREEN_MM_INDEX_HI, *pos >> 31);
2014b5694182b54 Christian König 2013-12-18 976 value = RREG32(RADEON_MM_DATA);
2014b5694182b54 Christian König 2013-12-18 977 spin_unlock_irqrestore(&rdev->mmio_idx_lock, flags);
2014b5694182b54 Christian König 2013-12-18 978
2014b5694182b54 Christian König 2013-12-18 @979 r = put_user(value, (uint32_t *)buf);
2014b5694182b54 Christian König 2013-12-18 980 if (r)
2014b5694182b54 Christian König 2013-12-18 981 return r;
2014b5694182b54 Christian König 2013-12-18 982
2014b5694182b54 Christian König 2013-12-18 983 result += 4;
2014b5694182b54 Christian König 2013-12-18 984 buf += 4;
2014b5694182b54 Christian König 2013-12-18 985 *pos += 4;
2014b5694182b54 Christian König 2013-12-18 986 size -= 4;
2014b5694182b54 Christian König 2013-12-18 987 }
2014b5694182b54 Christian König 2013-12-18 988
2014b5694182b54 Christian König 2013-12-18 989 return result;
2014b5694182b54 Christian König 2013-12-18 990 }
2014b5694182b54 Christian König 2013-12-18 991
:::::: The code at line 979 was first introduced by commit
:::::: 2014b5694182b54c781b93d26ec993f8a12bca01 drm/radeon: add VRAM debugfs access v3
:::::: TO: Christian König <christian.koenig@amd.com>
:::::: CC: Alex Deucher <alexander.deucher@amd.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 32326 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-08-11 12:53 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-24 23:09 drivers/gpu/drm/radeon/radeon_ttm.c:979:21: sparse: sparse: incorrect type in initializer (different address spaces) kernel test robot
2020-07-24 23:09 ` kernel test robot
2020-08-11 12:38 kernel test robot
2020-08-11 12:38 ` kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.