Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] gspca - sunplus: Fix some warnings and simplify code

This patch removes warnings due to GSPCA_DEBUG unsetting. It implied
a simplification of the code.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

authored by

Jean-François Moine and committed by
Mauro Carvalho Chehab
cf252206 bd62bbcd

+33 -66
+33 -66
drivers/media/video/gspca/sunplus.c
··· 396 396 req, index, value); 397 397 } 398 398 399 - /* read 1 byte */ 400 - static u8 reg_r_1(struct gspca_dev *gspca_dev, 401 - u16 value) /* wValue */ 402 - { 403 - int ret; 404 - 405 - if (gspca_dev->usb_err < 0) 406 - return 0; 407 - ret = usb_control_msg(gspca_dev->dev, 408 - usb_rcvctrlpipe(gspca_dev->dev, 0), 409 - 0x20, /* request */ 410 - USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE, 411 - value, 412 - 0, /* index */ 413 - gspca_dev->usb_buf, 1, 414 - 500); /* timeout */ 415 - if (ret < 0) { 416 - err("reg_r_1 err %d", ret); 417 - gspca_dev->usb_err = ret; 418 - return 0; 419 - } 420 - return gspca_dev->usb_buf[0]; 421 - } 422 - 423 - /* read 1 or 2 bytes */ 424 - static u16 reg_r_12(struct gspca_dev *gspca_dev, 425 - u8 req, /* bRequest */ 426 - u16 index, /* wIndex */ 427 - u16 length) /* wLength (1 or 2 only) */ 428 - { 429 - int ret; 430 - 431 - if (gspca_dev->usb_err < 0) 432 - return 0; 433 - gspca_dev->usb_buf[1] = 0; 434 - ret = usb_control_msg(gspca_dev->dev, 435 - usb_rcvctrlpipe(gspca_dev->dev, 0), 436 - req, 437 - USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE, 438 - 0, /* value */ 439 - index, 440 - gspca_dev->usb_buf, length, 441 - 500); 442 - if (ret < 0) { 443 - err("reg_r_12 err %d", ret); 444 - gspca_dev->usb_err = ret; 445 - return 0; 446 - } 447 - return (gspca_dev->usb_buf[1] << 8) + gspca_dev->usb_buf[0]; 448 - } 449 - 450 399 static void write_vector(struct gspca_dev *gspca_dev, 451 400 const struct cmd *data, int ncmds) 452 401 { ··· 422 473 static void spca504_acknowledged_command(struct gspca_dev *gspca_dev, 423 474 u8 req, u16 idx, u16 val) 424 475 { 425 - u16 notdone; 426 - 427 476 reg_w_riv(gspca_dev, req, idx, val); 428 - notdone = reg_r_12(gspca_dev, 0x01, 0x0001, 1); 477 + reg_r(gspca_dev, 0x01, 0x0001, 1); 478 + PDEBUG(D_FRAM, "before wait 0x%04x", gspca_dev->usb_buf[0]); 429 479 reg_w_riv(gspca_dev, req, idx, val); 430 - 431 - PDEBUG(D_FRAM, "before wait 0x%04x", notdone); 432 480 433 481 msleep(200); 434 - notdone = reg_r_12(gspca_dev, 0x01, 0x0001, 1); 435 - PDEBUG(D_FRAM, "after wait 0x%04x", notdone); 482 + reg_r(gspca_dev, 0x01, 0x0001, 1); 483 + PDEBUG(D_FRAM, "after wait 0x%04x", gspca_dev->usb_buf[0]); 436 484 } 437 485 486 + #ifdef GSPCA_DEBUG 438 487 static void spca504_read_info(struct gspca_dev *gspca_dev) 439 488 { 440 489 int i; 441 490 u8 info[6]; 442 491 443 - for (i = 0; i < 6; i++) 444 - info[i] = reg_r_1(gspca_dev, i); 492 + for (i = 0; i < 6; i++) { 493 + reg_r(gspca_dev, 0, i, 1); 494 + info[i] = gspca_dev->usb_buf[0]; 495 + } 445 496 PDEBUG(D_STREAM, 446 497 "Read info: %d %d %d %d %d %d." 447 498 " Should be 1,0,2,2,0,0", 448 499 info[0], info[1], info[2], 449 500 info[3], info[4], info[5]); 450 501 } 502 + #endif 451 503 452 504 static void spca504A_acknowledged_command(struct gspca_dev *gspca_dev, 453 505 u8 req, 454 - u16 idx, u16 val, u16 endcode, u8 count) 506 + u16 idx, u16 val, u8 endcode, u8 count) 455 507 { 456 508 u16 status; 457 509 458 510 reg_w_riv(gspca_dev, req, idx, val); 459 - status = reg_r_12(gspca_dev, 0x01, 0x0001, 1); 511 + reg_r(gspca_dev, 0x01, 0x0001, 1); 460 512 if (gspca_dev->usb_err < 0) 461 513 return; 462 - PDEBUG(D_FRAM, "Status 0x%04x Need 0x%04x", status, endcode); 514 + PDEBUG(D_FRAM, "Status 0x%02x Need 0x%02x", 515 + gspca_dev->usb_buf[0], endcode); 463 516 if (!count) 464 517 return; 465 518 count = 200; ··· 469 518 msleep(10); 470 519 /* gsmart mini2 write a each wait setting 1 ms is enough */ 471 520 /* reg_w_riv(gspca_dev, req, idx, val); */ 472 - status = reg_r_12(gspca_dev, 0x01, 0x0001, 1); 521 + reg_r(gspca_dev, 0x01, 0x0001, 1); 522 + status = gspca_dev->usb_buf[0]; 473 523 if (status == endcode) { 474 524 PDEBUG(D_FRAM, "status 0x%04x after wait %d", 475 525 status, 200 - count); ··· 507 555 } 508 556 } 509 557 558 + #ifdef GSPCA_DEBUG 510 559 static void spca50x_GetFirmware(struct gspca_dev *gspca_dev) 511 560 { 512 561 u8 *data; 513 562 514 563 data = gspca_dev->usb_buf; 515 564 reg_r(gspca_dev, 0x20, 0, 5); 516 - PDEBUG(D_STREAM, "FirmWare : %d %d %d %d %d ", 565 + PDEBUG(D_STREAM, "FirmWare: %d %d %d %d %d", 517 566 data[0], data[1], data[2], data[3], data[4]); 518 567 reg_r(gspca_dev, 0x23, 0, 64); 519 568 reg_r(gspca_dev, 0x23, 1, 64); 520 569 } 570 + #endif 521 571 522 572 static void spca504B_SetSizeType(struct gspca_dev *gspca_dev) 523 573 { ··· 532 578 reg_w_riv(gspca_dev, 0x31, 0, 0); 533 579 spca504B_WaitCmdStatus(gspca_dev); 534 580 spca504B_PollingDataReady(gspca_dev); 581 + #ifdef GSPCA_DEBUG 535 582 spca50x_GetFirmware(gspca_dev); 583 + #endif 536 584 reg_w_1(gspca_dev, 0x24, 0, 8, 2); /* type */ 537 585 reg_r(gspca_dev, 0x24, 8, 1); 538 586 ··· 584 628 cnt = 256; 585 629 while (--cnt > 0) { 586 630 /* With this we get the status, when return 0 it's all ok */ 587 - if (reg_r_12(gspca_dev, 0x06, 0x00, 1) == 0) 631 + reg_r(gspca_dev, 0x06, 0x00, 1); 632 + if (gspca_dev->usb_buf[0] == 0) 588 633 return; 589 634 msleep(10); 590 635 } ··· 729 772 /* fall thru */ 730 773 case BRIDGE_SPCA533: 731 774 spca504B_PollingDataReady(gspca_dev); 775 + #ifdef GSPCA_DEBUG 732 776 spca50x_GetFirmware(gspca_dev); 777 + #endif 733 778 break; 734 779 case BRIDGE_SPCA536: 780 + #ifdef GSPCA_DEBUG 735 781 spca50x_GetFirmware(gspca_dev); 782 + #endif 736 783 reg_r(gspca_dev, 0x00, 0x5002, 1); 737 784 reg_w_1(gspca_dev, 0x24, 0, 0, 0); 738 785 reg_r(gspca_dev, 0x24, 0, 1); ··· 762 801 /* case BRIDGE_SPCA504: */ 763 802 PDEBUG(D_STREAM, "Opening SPCA504"); 764 803 if (sd->subtype == AiptekMiniPenCam13) { 804 + #ifdef GSPCA_DEBUG 765 805 spca504_read_info(gspca_dev); 806 + #endif 766 807 767 808 /* Set AE AWB Banding Type 3-> 50Hz 2-> 60Hz */ 768 809 spca504A_acknowledged_command(gspca_dev, 0x24, ··· 836 873 break; 837 874 case BRIDGE_SPCA504: 838 875 if (sd->subtype == AiptekMiniPenCam13) { 876 + #ifdef GSPCA_DEBUG 839 877 spca504_read_info(gspca_dev); 878 + #endif 840 879 841 880 /* Set AE AWB Banding Type 3-> 50Hz 2-> 60Hz */ 842 881 spca504A_acknowledged_command(gspca_dev, 0x24, ··· 850 885 0, 0, 0x9d, 1); 851 886 } else { 852 887 spca504_acknowledged_command(gspca_dev, 0x24, 8, 3); 888 + #ifdef GSPCA_DEBUG 853 889 spca504_read_info(gspca_dev); 890 + #endif 854 891 spca504_acknowledged_command(gspca_dev, 0x24, 8, 3); 855 892 spca504_acknowledged_command(gspca_dev, 0x24, 0, 0); 856 893 }