$ make M=drivers/staging/xillybus/ C=1
LD drivers/staging/xillybus//built-in.o
CHECK drivers/staging/xillybus//xillybus_core.c
drivers/staging/xillybus//xillybus_core.c:76:25: warning: symbol 'xillybus_wq' was not declared. Should it be static?
drivers/staging/xillybus//xillybus_core.c:175:57: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:175:57: expected void [noderef]<asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:175:57: got unsigned int [usertype] *
drivers/staging/xillybus//xillybus_core.c:309:39: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:309:39: expected void [noderef]<asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:309:39: got unsigned int [usertype] *
drivers/staging/xillybus//xillybus_core.c:606:55: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:606:55: expected void [noderef]<asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:606:55: got unsigned int [usertype] *
and goes on for a few screens.
$ sparse --version
0.4.4
Try a newer version and see if that fixes things.