tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-testing head: 2a38ef60ef4ffe135566d1b8acc197b803c48ec1 commit: bce83de2578b37f1be039977278e8691a597ea7d [1000/1004] staging: i4l: act2000: Replace printk(KERN_DEBUG..) with netdev_dbg(dev, ..) config: i386-allmodconfig (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: git checkout bce83de2578b37f1be039977278e8691a597ea7d # save the attached .config to linux build tree make ARCH=i386
All errors (new ones prefixed by >>):
drivers/staging/i4l/act2000/act2000_isa.c: In function
'act2000_isa_interrupt':
drivers/staging/i4l/act2000/act2000_isa.c:81:3: error: implicit declaration
of function 'netdev_warn' [-Werror=implicit-function-declaration]
netdev_warn(dev, "act2000: errIRQ\n");
^~~~~~~~~~~
drivers/staging/i4l/act2000/act2000_isa.c:81:15: error: 'dev' undeclared
(first use in this function)
netdev_warn(dev, "act2000: errIRQ\n");
^~~
drivers/staging/i4l/act2000/act2000_isa.c:81:15: note: each undeclared
identifier is reported only once for each function it appears in
drivers/staging/i4l/act2000/act2000_isa.c: In function
'act2000_isa_config_irq':
drivers/staging/i4l/act2000/act2000_isa.c:150:15: error: 'dev' undeclared
(first use in this function)
netdev_warn(dev, "act2000: Could not request irq %d\n", irq);
^~~
drivers/staging/i4l/act2000/act2000_isa.c: In function 'act2000_isa_receive':
drivers/staging/i4l/act2000/act2000_isa.c:248:19: error: 'dev' undeclared
(first use in this function)
netdev_warn(dev, "act2000_isa_receive: no memory\n");
^~~
drivers/staging/i4l/act2000/act2000_isa.c: In function 'act2000_isa_getid':
drivers/staging/i4l/act2000/act2000_isa.c:371:15: error: 'dev' undeclared
(first use in this function)
netdev_warn(dev, "act2000: No Firmware-ID!\n");
^~~
>> drivers/staging/i4l/act2000/act2000_isa.c:385:3: error: implicit declaration
>> of function 'netdev_dbg' [-Werror=implicit-function-declaration]
netdev_dbg(dev, "Enabling Interrupts ...\n");
^~~~~~~~~~
drivers/staging/i4l/act2000/act2000_isa.c: In function
'act2000_isa_download':
drivers/staging/i4l/act2000/act2000_isa.c:427:17: error: 'dev' undeclared
(first use in this function)
netdev_warn(dev,
^~~
cc1: some warnings being treated as errors
vim +/netdev_dbg +385 drivers/staging/i4l/act2000/act2000_isa.c
242
243 if (valid) {
244 card->idat.isa.rcvlen =
((actcapi_msghdr *)&card->idat.isa.rcvhdr)->len;
245 card->idat.isa.rcvskb =
dev_alloc_skb(card->idat.isa.rcvlen);
246 if (!card->idat.isa.rcvskb) {
247
card->idat.isa.rcvignore = 1;
> 248 netdev_warn(dev,
> "act2000_isa_receive: no memory\n");
249
test_and_clear_bit(ACT2000_LOCK_RX, (void *)&card->ilock);
250 return;
251 }
252
memcpy(skb_put(card->idat.isa.rcvskb, 8), card->idat.isa.rcvhdr, 8);
253 card->idat.isa.rcvptr =
skb_put(card->idat.isa.rcvskb, card->idat.isa.rcvlen - 8);
254 } else {
255 card->idat.isa.rcvidx = 0;
256 netdev_warn(dev,
"act2000_isa_receive: Invalid CAPI msg\n");
257 {
258 int i; __u8 *p; __u8
*t; __u8 tmp[30];
259
260 for (i = 0, p = (__u8
*)&card->idat.isa.rcvhdr, t = tmp; i < 8; i++)
261 t += sprintf(t,
"%02x ", *(p++));
262 netdev_warn(dev,
"act2000_isa_receive: %s\n", tmp);
263 }
264 }
265 }
266 } else {
267 if (!card->idat.isa.rcvignore)
268 *card->idat.isa.rcvptr++ = c;
269 if (++card->idat.isa.rcvidx >=
card->idat.isa.rcvlen) {
270 if (!card->idat.isa.rcvignore) {
271 skb_queue_tail(&card->rcvq,
card->idat.isa.rcvskb);
272 act2000_schedule_rx(card);
273 }
274 card->idat.isa.rcvidx = 0;
275 card->idat.isa.rcvlen = 8;
276 card->idat.isa.rcvignore = 0;
277 card->idat.isa.rcvskb = NULL;
278 card->idat.isa.rcvptr =
card->idat.isa.rcvhdr;
279 }
280 }
281 }
282 if (!(card->flags & ACT2000_FLAGS_IVALID)) {
283 /* In polling mode, schedule myself */
284 if ((card->idat.isa.rcvidx) &&
285 (card->idat.isa.rcvignore ||
286 (card->idat.isa.rcvidx < card->idat.isa.rcvlen)))
287 act2000_schedule_poll(card);
288 }
289 test_and_clear_bit(ACT2000_LOCK_RX, (void *)&card->ilock);
290 }
291
292 void
293 act2000_isa_send(act2000_card *card)
294 {
295 unsigned long flags;
296 struct sk_buff *skb;
297 actcapi_msg *msg;
298 int l;
299
300 if (test_and_set_bit(ACT2000_LOCK_TX, (void *)&card->ilock) !=
0)
301 return;
302 while (1) {
303 spin_lock_irqsave(&card->lock, flags);
304 if (!(card->sbuf)) {
305 card->sbuf = skb_dequeue(&card->sndq);
306 if (card->sbuf) {
307 card->ack_msg = card->sbuf->data;
308 msg = (actcapi_msg *)card->sbuf->data;
309 if ((msg->hdr.cmd.cmd == 0x86) &&
310 (msg->hdr.cmd.subcmd == 0)) {
311 /* Save flags in message */
312 card->need_b3ack =
msg->msg.data_b3_req.flags;
313 msg->msg.data_b3_req.flags = 0;
314 }
315 }
316 }
317 spin_unlock_irqrestore(&card->lock, flags);
318 if (!(card->sbuf)) {
319 /* No more data to send */
320 test_and_clear_bit(ACT2000_LOCK_TX, (void
*)&card->ilock);
321 return;
322 }
323 skb = card->sbuf;
324 l = 0;
325 while (skb->len) {
326 if (act2000_isa_writeb(card, *(skb->data))) {
327 /* Fifo is full, but more data to send
*/
328 test_and_clear_bit(ACT2000_LOCK_TX,
(void *)&card->ilock);
329 /* Schedule myself */
330 act2000_schedule_tx(card);
331 return;
332 }
333 skb_pull(skb, 1);
334 l++;
335 }
336 msg = (actcapi_msg *)card->ack_msg;
337 if ((msg->hdr.cmd.cmd == 0x86) &&
338 (msg->hdr.cmd.subcmd == 0)) {
339 /*
340 * If it's user data, reset data-ptr
341 * and put skb into ackq.
342 */
343 skb->data = card->ack_msg;
344 /* Restore flags in message */
345 msg->msg.data_b3_req.flags = card->need_b3ack;
346 skb_queue_tail(&card->ackq, skb);
347 } else
348 dev_kfree_skb(skb);
349 card->sbuf = NULL;
350 }
351 }
352
353 /*
354 * Get firmware ID, check for 'ISDN' signature.
355 */
356 static int
357 act2000_isa_getid(act2000_card *card)
358 {
359 act2000_fwid fid;
360 u_char *p = (u_char *)&fid;
361 int count = 0;
362
363 while (1) {
364 if (count > 510)
365 return -EPROTO;
366 if (act2000_isa_readb(card, p++))
367 break;
368 count++;
369 }
370 if (count <= 20) {
371 netdev_warn(dev, "act2000: No Firmware-ID!\n");
372 return -ETIME;
373 }
374 *p = '\0';
375 fid.revlen[0] = '\0';
376 if (strcmp(fid.isdn, "ISDN")) {
377 netdev_warn(dev, "act2000: Wrong Firmware-ID!\n");
378 return -EPROTO;
379 }
380 p = strchr(fid.revision, '\n');
381 if (p)
382 *p = '\0';
383 printk(KERN_INFO "act2000: Firmware-ID: %s\n", fid.revision);
384 if (card->flags & ACT2000_FLAGS_IVALID) {
> 385 netdev_dbg(dev, "Enabling Interrupts ...\n");
386 act2000_isa_enable_irq(card);
387 }
388 return 0;
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip
_______________________________________________ devel mailing list [email protected] http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
