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

i2c-ibm_iic: Whitespace cleanup

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

authored by

Stefan Roese and committed by
Jean Delvare
217bcec4 ccf60d85

+99 -99
+95 -95
drivers/i2c/busses/i2c-ibm_iic.c
··· 6 6 * Copyright (c) 2003, 2004 Zultys Technologies. 7 7 * Eugene Surovegin <eugene.surovegin@zultys.com> or <ebs@ebshome.net> 8 8 * 9 - * Based on original work by 9 + * Based on original work by 10 10 * Ian DaSilva <idasilva@mvista.com> 11 11 * Armin Kuster <akuster@mvista.com> 12 12 * Matt Porter <mporter@mvista.com> ··· 86 86 KERN_DEBUG " sts = 0x%02x, extsts = 0x%02x\n" 87 87 KERN_DEBUG " clkdiv = 0x%02x, xfrcnt = 0x%02x\n" 88 88 KERN_DEBUG " xtcntlss = 0x%02x, directcntl = 0x%02x\n", 89 - in_8(&iic->cntl), in_8(&iic->mdcntl), in_8(&iic->sts), 90 - in_8(&iic->extsts), in_8(&iic->clkdiv), in_8(&iic->xfrcnt), 89 + in_8(&iic->cntl), in_8(&iic->mdcntl), in_8(&iic->sts), 90 + in_8(&iic->extsts), in_8(&iic->clkdiv), in_8(&iic->xfrcnt), 91 91 in_8(&iic->xtcntlss), in_8(&iic->directcntl)); 92 92 } 93 93 # define DUMP_REGS(h,dev) dump_iic_regs((h),(dev)) ··· 125 125 { 126 126 out_8(&dev->vaddr->intmsk, enable ? INTRMSK_EIMTC : 0); 127 127 } 128 - 128 + 129 129 /* 130 130 * Initialize IIC interface. 131 131 */ ··· 134 134 volatile struct iic_regs __iomem *iic = dev->vaddr; 135 135 136 136 DBG("%d: init\n", dev->idx); 137 - 137 + 138 138 /* Clear master address */ 139 139 out_8(&iic->lmadr, 0); 140 140 out_8(&iic->hmadr, 0); ··· 160 160 161 161 /* Clear control register */ 162 162 out_8(&iic->cntl, 0); 163 - 163 + 164 164 /* Enable interrupts if possible */ 165 165 iic_interrupt_mode(dev, dev->irq >= 0); 166 166 ··· 171 171 DUMP_REGS("iic_init", dev); 172 172 } 173 173 174 - /* 174 + /* 175 175 * Reset IIC interface 176 176 */ 177 177 static void iic_dev_reset(struct ibm_iic_private* dev) ··· 179 179 volatile struct iic_regs __iomem *iic = dev->vaddr; 180 180 int i; 181 181 u8 dc; 182 - 182 + 183 183 DBG("%d: soft reset\n", dev->idx); 184 184 DUMP_REGS("reset", dev); 185 - 185 + 186 186 /* Place chip in the reset state */ 187 187 out_8(&iic->xtcntlss, XTCNTLSS_SRST); 188 - 188 + 189 189 /* Check if bus is free */ 190 - dc = in_8(&iic->directcntl); 190 + dc = in_8(&iic->directcntl); 191 191 if (!DIRCTNL_FREE(dc)){ 192 192 DBG("%d: trying to regain bus control\n", dev->idx); 193 - 193 + 194 194 /* Try to set bus free state */ 195 - out_8(&iic->directcntl, DIRCNTL_SDAC | DIRCNTL_SCC); 196 - 195 + out_8(&iic->directcntl, DIRCNTL_SDAC | DIRCNTL_SCC); 196 + 197 197 /* Wait until we regain bus control */ 198 198 for (i = 0; i < 100; ++i){ 199 199 dc = in_8(&iic->directcntl); 200 200 if (DIRCTNL_FREE(dc)) 201 201 break; 202 - 202 + 203 203 /* Toggle SCL line */ 204 204 dc ^= DIRCNTL_SCC; 205 205 out_8(&iic->directcntl, dc); 206 206 udelay(10); 207 207 dc ^= DIRCNTL_SCC; 208 208 out_8(&iic->directcntl, dc); 209 - 209 + 210 210 /* be nice */ 211 211 cond_resched(); 212 212 } 213 213 } 214 - 214 + 215 215 /* Remove reset */ 216 216 out_8(&iic->xtcntlss, 0); 217 - 217 + 218 218 /* Reinitialize interface */ 219 219 iic_dev_init(dev); 220 220 } ··· 324 324 { 325 325 struct ibm_iic_private* dev = (struct ibm_iic_private*)dev_id; 326 326 volatile struct iic_regs __iomem *iic = dev->vaddr; 327 - 328 - DBG2("%d: irq handler, STS = 0x%02x, EXTSTS = 0x%02x\n", 327 + 328 + DBG2("%d: irq handler, STS = 0x%02x, EXTSTS = 0x%02x\n", 329 329 dev->idx, in_8(&iic->sts), in_8(&iic->extsts)); 330 - 330 + 331 331 /* Acknowledge IRQ and wakeup iic_wait_for_tc */ 332 332 out_8(&iic->sts, STS_IRQA | STS_SCMP); 333 333 wake_up_interruptible(&dev->wq); 334 - 334 + 335 335 return IRQ_HANDLED; 336 336 } 337 337 ··· 341 341 */ 342 342 static int iic_xfer_result(struct ibm_iic_private* dev) 343 343 { 344 - volatile struct iic_regs __iomem *iic = dev->vaddr; 345 - 344 + volatile struct iic_regs __iomem *iic = dev->vaddr; 345 + 346 346 if (unlikely(in_8(&iic->sts) & STS_ERR)){ 347 - DBG("%d: xfer error, EXTSTS = 0x%02x\n", dev->idx, 347 + DBG("%d: xfer error, EXTSTS = 0x%02x\n", dev->idx, 348 348 in_8(&iic->extsts)); 349 - 349 + 350 350 /* Clear errors and possible pending IRQs */ 351 - out_8(&iic->extsts, EXTSTS_IRQP | EXTSTS_IRQD | 351 + out_8(&iic->extsts, EXTSTS_IRQP | EXTSTS_IRQD | 352 352 EXTSTS_LA | EXTSTS_ICT | EXTSTS_XFRA); 353 - 353 + 354 354 /* Flush master data buffer */ 355 355 out_8(&iic->mdcntl, in_8(&iic->mdcntl) | MDCNTL_FMDB); 356 - 356 + 357 357 /* Is bus free? 358 358 * If error happened during combined xfer 359 359 * IIC interface is usually stuck in some strange ··· 376 376 { 377 377 volatile struct iic_regs __iomem *iic = dev->vaddr; 378 378 unsigned long x; 379 - 379 + 380 380 DBG("%d: iic_abort_xfer\n", dev->idx); 381 - 381 + 382 382 out_8(&iic->cntl, CNTL_HMT); 383 - 383 + 384 384 /* 385 385 * Wait for the abort command to complete. 386 386 * It's not worth to be optimized, just poll (timeout >= 1 tick) ··· 405 405 * Returns the number of transferred bytes or error (<0) 406 406 */ 407 407 static int iic_wait_for_tc(struct ibm_iic_private* dev){ 408 - 408 + 409 409 volatile struct iic_regs __iomem *iic = dev->vaddr; 410 410 int ret = 0; 411 - 411 + 412 412 if (dev->irq >= 0){ 413 413 /* Interrupt mode */ 414 - ret = wait_event_interruptible_timeout(dev->wq, 414 + ret = wait_event_interruptible_timeout(dev->wq, 415 415 !(in_8(&iic->sts) & STS_PT), dev->adap.timeout * HZ); 416 416 417 417 if (unlikely(ret < 0)) ··· 424 424 else { 425 425 /* Polling mode */ 426 426 unsigned long x = jiffies + dev->adap.timeout * HZ; 427 - 427 + 428 428 while (in_8(&iic->sts) & STS_PT){ 429 429 if (unlikely(time_after(jiffies, x))){ 430 430 DBG("%d: poll timeout\n", dev->idx); 431 431 ret = -ETIMEDOUT; 432 432 break; 433 433 } 434 - 434 + 435 435 if (unlikely(signal_pending(current))){ 436 436 DBG("%d: poll interrupted\n", dev->idx); 437 437 ret = -ERESTARTSYS; 438 438 break; 439 439 } 440 440 schedule(); 441 - } 441 + } 442 442 } 443 - 443 + 444 444 if (unlikely(ret < 0)) 445 445 iic_abort_xfer(dev); 446 446 else 447 447 ret = iic_xfer_result(dev); 448 - 448 + 449 449 DBG2("%d: iic_wait_for_tc -> %d\n", dev->idx, ret); 450 - 450 + 451 451 return ret; 452 452 } 453 453 454 454 /* 455 455 * Low level master transfer routine 456 456 */ 457 - static int iic_xfer_bytes(struct ibm_iic_private* dev, struct i2c_msg* pm, 457 + static int iic_xfer_bytes(struct ibm_iic_private* dev, struct i2c_msg* pm, 458 458 int combined_xfer) 459 459 { 460 460 volatile struct iic_regs __iomem *iic = dev->vaddr; ··· 465 465 u8 cntl = (in_8(&iic->cntl) & CNTL_AMD) | CNTL_PT; 466 466 if (pm->flags & I2C_M_RD) 467 467 cntl |= CNTL_RW; 468 - 468 + 469 469 loops = (len + 3) / 4; 470 470 for (i = 0; i < loops; ++i, len -= 4){ 471 471 int count = len > 4 ? 4 : len; 472 472 u8 cmd = cntl | ((count - 1) << CNTL_TCT_SHIFT); 473 - 473 + 474 474 if (!(cntl & CNTL_RW)) 475 475 for (j = 0; j < count; ++j) 476 476 out_8((void __iomem *)&iic->mdbuf, *buf++); 477 - 477 + 478 478 if (i < loops - 1) 479 479 cmd |= CNTL_CHT; 480 480 else if (combined_xfer) 481 481 cmd |= CNTL_RPST; 482 - 482 + 483 483 DBG2("%d: xfer_bytes, %d, CNTL = 0x%02x\n", dev->idx, count, cmd); 484 - 484 + 485 485 /* Start transfer */ 486 486 out_8(&iic->cntl, cmd); 487 - 487 + 488 488 /* Wait for completion */ 489 489 ret = iic_wait_for_tc(dev); 490 490 491 491 if (unlikely(ret < 0)) 492 492 break; 493 493 else if (unlikely(ret != count)){ 494 - DBG("%d: xfer_bytes, requested %d, transfered %d\n", 494 + DBG("%d: xfer_bytes, requested %d, transfered %d\n", 495 495 dev->idx, count, ret); 496 - 496 + 497 497 /* If it's not a last part of xfer, abort it */ 498 498 if (combined_xfer || (i < loops - 1)) 499 499 iic_abort_xfer(dev); 500 - 500 + 501 501 ret = -EREMOTEIO; 502 - break; 502 + break; 503 503 } 504 - 504 + 505 505 if (cntl & CNTL_RW) 506 506 for (j = 0; j < count; ++j) 507 507 *buf++ = in_8((void __iomem *)&iic->mdbuf); 508 508 } 509 - 509 + 510 510 return ret > 0 ? 0 : ret; 511 511 } 512 512 ··· 517 517 { 518 518 volatile struct iic_regs __iomem *iic = dev->vaddr; 519 519 u16 addr = msg->addr; 520 - 521 - DBG2("%d: iic_address, 0x%03x (%d-bit)\n", dev->idx, 520 + 521 + DBG2("%d: iic_address, 0x%03x (%d-bit)\n", dev->idx, 522 522 addr, msg->flags & I2C_M_TEN ? 10 : 7); 523 - 523 + 524 524 if (msg->flags & I2C_M_TEN){ 525 525 out_8(&iic->cntl, CNTL_AMD); 526 526 out_8(&iic->lmadr, addr); ··· 537 537 return (p->addr > 0x3ff) || (!(p->flags & I2C_M_TEN) && (p->addr > 0x7f)); 538 538 } 539 539 540 - static inline int iic_address_neq(const struct i2c_msg* p1, 540 + static inline int iic_address_neq(const struct i2c_msg* p1, 541 541 const struct i2c_msg* p2) 542 542 { 543 - return (p1->addr != p2->addr) 543 + return (p1->addr != p2->addr) 544 544 || ((p1->flags & I2C_M_TEN) != (p2->flags & I2C_M_TEN)); 545 - } 545 + } 546 546 547 547 /* 548 - * Generic master transfer entrypoint. 548 + * Generic master transfer entrypoint. 549 549 * Returns the number of processed messages or error (<0) 550 550 */ 551 551 static int iic_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) ··· 553 553 struct ibm_iic_private* dev = (struct ibm_iic_private*)(i2c_get_adapdata(adap)); 554 554 volatile struct iic_regs __iomem *iic = dev->vaddr; 555 555 int i, ret = 0; 556 - 556 + 557 557 DBG2("%d: iic_xfer, %d msg(s)\n", dev->idx, num); 558 - 558 + 559 559 if (!num) 560 560 return 0; 561 - 561 + 562 562 /* Check the sanity of the passed messages. 563 563 * Uhh, generic i2c layer is more suitable place for such code... 564 564 */ 565 565 if (unlikely(iic_invalid_address(&msgs[0]))){ 566 - DBG("%d: invalid address 0x%03x (%d-bit)\n", dev->idx, 566 + DBG("%d: invalid address 0x%03x (%d-bit)\n", dev->idx, 567 567 msgs[0].addr, msgs[0].flags & I2C_M_TEN ? 10 : 7); 568 568 return -EINVAL; 569 - } 569 + } 570 570 for (i = 0; i < num; ++i){ 571 571 if (unlikely(msgs[i].len <= 0)){ 572 572 if (num == 1 && !msgs[0].len){ ··· 576 576 */ 577 577 return iic_smbus_quick(dev, &msgs[0]); 578 578 } 579 - DBG("%d: invalid len %d in msg[%d]\n", dev->idx, 579 + DBG("%d: invalid len %d in msg[%d]\n", dev->idx, 580 580 msgs[i].len, i); 581 581 return -EINVAL; 582 582 } ··· 585 585 return -EINVAL; 586 586 } 587 587 } 588 - 588 + 589 589 /* Check bus state */ 590 590 if (unlikely((in_8(&iic->extsts) & EXTSTS_BCS_MASK) != EXTSTS_BCS_FREE)){ 591 591 DBG("%d: iic_xfer, bus is not free\n", dev->idx); 592 - 592 + 593 593 /* Usually it means something serious has happend. 594 594 * We *cannot* have unfinished previous transfer 595 595 * so it doesn't make any sense to try to stop it. 596 - * Probably we were not able to recover from the 596 + * Probably we were not able to recover from the 597 597 * previous error. 598 598 * The only *reasonable* thing I can think of here 599 599 * is soft reset. --ebs 600 600 */ 601 601 iic_dev_reset(dev); 602 - 602 + 603 603 if ((in_8(&iic->extsts) & EXTSTS_BCS_MASK) != EXTSTS_BCS_FREE){ 604 604 DBG("%d: iic_xfer, bus is still not free\n", dev->idx); 605 605 return -EREMOTEIO; 606 606 } 607 - } 607 + } 608 608 else { 609 609 /* Flush master data buffer (just in case) */ 610 610 out_8(&iic->mdcntl, in_8(&iic->mdcntl) | MDCNTL_FMDB); 611 611 } 612 - 612 + 613 613 /* Load slave address */ 614 614 iic_address(dev, &msgs[0]); 615 - 615 + 616 616 /* Do real transfer */ 617 617 for (i = 0; i < num && !ret; ++i) 618 618 ret = iic_xfer_bytes(dev, &msgs[i], i < num - 1); ··· 648 648 649 649 /* Convert to MHz */ 650 650 opb /= 1000000; 651 - 651 + 652 652 if (opb < 20 || opb > 150){ 653 653 printk(KERN_CRIT "ibm-iic: invalid OPB clock frequency %u MHz\n", 654 654 opb); ··· 666 666 struct i2c_adapter* adap; 667 667 struct ocp_func_iic_data* iic_data = ocp->def->additions; 668 668 int ret; 669 - 669 + 670 670 if (!iic_data) 671 671 printk(KERN_WARNING"ibm-iic%d: missing additional data!\n", 672 672 ocp->def->index); ··· 679 679 680 680 dev->idx = ocp->def->index; 681 681 ocp_set_drvdata(ocp, dev); 682 - 682 + 683 683 if (!request_mem_region(ocp->def->paddr, sizeof(struct iic_regs), 684 684 "ibm_iic")) { 685 685 ret = -EBUSY; ··· 692 692 ret = -ENXIO; 693 693 goto fail2; 694 694 } 695 - 695 + 696 696 init_waitqueue_head(&dev->wq); 697 697 698 698 dev->irq = iic_force_poll ? -1 : ocp->def->irq; ··· 702 702 */ 703 703 iic_interrupt_mode(dev, 0); 704 704 if (request_irq(dev->irq, iic_handler, 0, "IBM IIC", dev)){ 705 - printk(KERN_ERR "ibm-iic%d: request_irq %d failed\n", 705 + printk(KERN_ERR "ibm-iic%d: request_irq %d failed\n", 706 706 dev->idx, dev->irq); 707 - /* Fallback to the polling mode */ 707 + /* Fallback to the polling mode */ 708 708 dev->irq = -1; 709 709 } 710 710 } 711 - 711 + 712 712 if (dev->irq < 0) 713 - printk(KERN_WARNING "ibm-iic%d: using polling mode\n", 713 + printk(KERN_WARNING "ibm-iic%d: using polling mode\n", 714 714 dev->idx); 715 - 715 + 716 716 /* Board specific settings */ 717 717 dev->fast_mode = iic_force_fast ? 1 : (iic_data ? iic_data->fast_mode : 0); 718 - 719 - /* clckdiv is the same for *all* IIC interfaces, 718 + 719 + /* clckdiv is the same for *all* IIC interfaces, 720 720 * but I'd rather make a copy than introduce another global. --ebs 721 721 */ 722 722 dev->clckdiv = iic_clckdiv(ocp_sys_info.opb_bus_freq); 723 723 DBG("%d: clckdiv = %d\n", dev->idx, dev->clckdiv); 724 - 724 + 725 725 /* Initialize IIC interface */ 726 726 iic_dev_init(dev); 727 - 727 + 728 728 /* Register it with i2c layer */ 729 729 adap = &dev->adap; 730 730 adap->dev.parent = &ocp->dev; ··· 750 750 dev->idx); 751 751 goto fail; 752 752 } 753 - 753 + 754 754 printk(KERN_INFO "ibm-iic%d: using %s mode\n", dev->idx, 755 755 dev->fast_mode ? "fast (400 kHz)" : "standard (100 kHz)"); 756 756 757 757 return 0; 758 758 759 - fail: 759 + fail: 760 760 if (dev->irq >= 0){ 761 761 iic_interrupt_mode(dev, 0); 762 762 free_irq(dev->irq, dev); 763 - } 763 + } 764 764 765 765 iounmap(dev->vaddr); 766 - fail2: 766 + fail2: 767 767 release_mem_region(ocp->def->paddr, sizeof(struct iic_regs)); 768 768 fail1: 769 769 ocp_set_drvdata(ocp, NULL); 770 - kfree(dev); 770 + kfree(dev); 771 771 return ret; 772 772 } 773 773 ··· 783 783 dev->idx); 784 784 /* That's *very* bad, just shutdown IRQ ... */ 785 785 if (dev->irq >= 0){ 786 - iic_interrupt_mode(dev, 0); 786 + iic_interrupt_mode(dev, 0); 787 787 free_irq(dev->irq, dev); 788 788 dev->irq = -1; 789 789 } 790 790 } else { 791 791 if (dev->irq >= 0){ 792 - iic_interrupt_mode(dev, 0); 792 + iic_interrupt_mode(dev, 0); 793 793 free_irq(dev->irq, dev); 794 794 } 795 795 iounmap(dev->vaddr); ··· 798 798 } 799 799 } 800 800 801 - static struct ocp_device_id ibm_iic_ids[] __devinitdata = 801 + static struct ocp_device_id ibm_iic_ids[] __devinitdata = 802 802 { 803 803 { .vendor = OCP_VENDOR_IBM, .function = OCP_FUNC_IIC }, 804 804 { .vendor = OCP_VENDOR_INVALID }
+4 -4
drivers/i2c/busses/i2c-ibm_iic.h
··· 2 2 * drivers/i2c/busses/i2c-ibm_iic.h 3 3 * 4 4 * Support for the IIC peripheral on IBM PPC 4xx 5 - * 5 + * 6 6 * Copyright (c) 2003 Zultys Technologies. 7 7 * Eugene Surovegin <eugene.surovegin@zultys.com> or <ebs@ebshome.net> 8 8 * 9 - * Based on original work by 9 + * Based on original work by 10 10 * Ian DaSilva <idasilva@mvista.com> 11 11 * Armin Kuster <akuster@mvista.com> 12 12 * Matt Porter <mporter@mvista.com> ··· 22 22 #ifndef __I2C_IBM_IIC_H_ 23 23 #define __I2C_IBM_IIC_H_ 24 24 25 - #include <linux/i2c.h> 25 + #include <linux/i2c.h> 26 26 27 27 struct iic_regs { 28 28 u16 mdbuf; ··· 58 58 #define CNTL_TCT_MASK 0x30 59 59 #define CNTL_TCT_SHIFT 4 60 60 #define CNTL_RPST 0x08 61 - #define CNTL_CHT 0x04 61 + #define CNTL_CHT 0x04 62 62 #define CNTL_RW 0x02 63 63 #define CNTL_PT 0x01 64 64