tree:
https://github.com/tobetter/linux odroid-5.11.y
head: 157df6d6590d85491bb6cef517c5399de1080ec1
commit: 3744a8448629a60d98caa5bb3947db06a03a318e [13/84] ODROID-COMMON: input/touchscreen:
Add D-WAV Multitouch driver.
config: arm64-randconfig-s031-20210209 (attached as .config)
compiler: aarch64-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.3-215-g0fb77bb6-dirty
#
https://github.com/tobetter/linux/commit/3744a8448629a60d98caa5bb3947db06...
git remote add tobetter-linux
https://github.com/tobetter/linux
git fetch --no-tags tobetter-linux odroid-5.11.y
git checkout 3744a8448629a60d98caa5bb3947db06a03a318e
# 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=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
> drivers/input/touchscreen/dwav-usb-mt.c:176:41: sparse: sparse:
incorrect type in assignment (different base types) @@ expected unsigned int x @@
got restricted __be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:176:41: sparse: expected unsigned int x
drivers/input/touchscreen/dwav-usb-mt.c:176:41: sparse: got restricted __be16
[usertype]
> drivers/input/touchscreen/dwav-usb-mt.c:178:41: sparse: sparse:
incorrect type in assignment (different base types) @@ expected unsigned int y @@
got restricted __be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:178:41: sparse: expected unsigned int y
drivers/input/touchscreen/dwav-usb-mt.c:178:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:182:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int x @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:182:41: sparse: expected unsigned int x
drivers/input/touchscreen/dwav-usb-mt.c:182:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:184:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int y @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:184:41: sparse: expected unsigned int y
drivers/input/touchscreen/dwav-usb-mt.c:184:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:188:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int x @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:188:41: sparse: expected unsigned int x
drivers/input/touchscreen/dwav-usb-mt.c:188:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:190:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int y @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:190:41: sparse: expected unsigned int y
drivers/input/touchscreen/dwav-usb-mt.c:190:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:194:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int x @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:194:41: sparse: expected unsigned int x
drivers/input/touchscreen/dwav-usb-mt.c:194:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:196:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int y @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:196:41: sparse: expected unsigned int y
drivers/input/touchscreen/dwav-usb-mt.c:196:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:200:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int x @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:200:41: sparse: expected unsigned int x
drivers/input/touchscreen/dwav-usb-mt.c:200:41: sparse: got restricted __be16
[usertype]
drivers/input/touchscreen/dwav-usb-mt.c:202:41: sparse: sparse: incorrect type in
assignment (different base types) @@ expected unsigned int y @@ got restricted
__be16 [usertype] @@
drivers/input/touchscreen/dwav-usb-mt.c:202:41: sparse: expected unsigned int y
drivers/input/touchscreen/dwav-usb-mt.c:202:41: sparse: got restricted __be16
[usertype]
vim +176 drivers/input/touchscreen/dwav-usb-mt.c
161
162 static void dwav_usb_mt_process(struct dwav_usb_mt *dwav_usb_mt,
163 unsigned char *pkt, int len)
164 {
165 struct dwav_raw *dwav_raw = (struct dwav_raw *)pkt;
166 unsigned char bit_mask, cnt;
167
168 for (cnt = 0, bit_mask = 0x01;
169 cnt < DEV_INFO[dwav_usb_mt->dev_id].max_finger;
170 cnt++, bit_mask <<= 1) {
171 if ((dwav_raw->ids & bit_mask) && dwav_raw->press) {
172 dwav_usb_mt->finger[cnt].status = TS_EVENT_PRESS;
173 switch (cnt) {
174 case 0:
175 dwav_usb_mt->finger[cnt].x
176 = cpu_to_be16(dwav_raw->x1);
177 dwav_usb_mt->finger[cnt].y
178 = cpu_to_be16(dwav_raw->y1);
179 break;
180 case 1:
181 dwav_usb_mt->finger[cnt].x
182 = cpu_to_be16(dwav_raw->x2);
183 dwav_usb_mt->finger[cnt].y
184 = cpu_to_be16(dwav_raw->y2);
185 break;
186 case 2:
187 dwav_usb_mt->finger[cnt].x
188 = cpu_to_be16(dwav_raw->x3);
189 dwav_usb_mt->finger[cnt].y
190 = cpu_to_be16(dwav_raw->y3);
191 break;
192 case 3:
193 dwav_usb_mt->finger[cnt].x
194 = cpu_to_be16(dwav_raw->x4);
195 dwav_usb_mt->finger[cnt].y
196 = cpu_to_be16(dwav_raw->y4);
197 break;
198 case 4:
199 dwav_usb_mt->finger[cnt].x
200 = cpu_to_be16(dwav_raw->x5);
201 dwav_usb_mt->finger[cnt].y
202 = cpu_to_be16(dwav_raw->y5);
203 break;
204 default:
205 break;
206 }
207 } else {
208 if (dwav_usb_mt->finger[cnt].status == TS_EVENT_PRESS)
209 dwav_usb_mt->finger[cnt].status
210 = TS_EVENT_RELEASE;
211 else
212 dwav_usb_mt->finger[cnt].status
213 = TS_EVENT_UNKNOWN;
214 }
215 }
216 dwav_usb_mt_report(dwav_usb_mt);
217 }
218
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org