Changeset 310
- Timestamp:
- 03/14/99 01:39:19 (14 years ago)
- Files:
-
- 1 modified
-
lm-sensors/trunk/kernel/busses/i2c-ali15x3.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lm-sensors/trunk/kernel/busses/i2c-ali15x3.c
r300 r310 88 88 #define MAP_ACPI 1 89 89 #undef FORCE_ALI15X3_ENABLE 90 #undef DEBUG91 90 92 91 /* ALI15X3 SMBus address offsets */ … … 514 513 if (read_write == SMBUS_WRITE) { 515 514 len = data->block[0]; 516 if (len < 0) 515 if (len < 0) { 517 516 len = 0; 518 if (len > 32) 517 data->block[0] = len; 518 } 519 if (len > 32) { 519 520 len = 32; 521 data->block[0] = len; 522 } 520 523 outb_p(len,SMBHSTDAT0); 521 524 outb_p(inb_p(SMBHSTCNT) | ALI15X3_BLOCK_CLR, SMBHSTCNT); /* Reset SMBBLKDAT */ 522 for (i = 1; i <= len; i ++)525 for (i = 1; i <= len; i++) 523 526 outb_p(data->block[i],SMBBLKDAT); 524 527 } … … 547 550 break; 548 551 case ALI15X3_BLOCK_DATA: 549 data->block[0] = inb_p(SMBHSTDAT0); 552 len = inb_p(SMBHSTDAT0); 553 if(len > 32) 554 len = 32; 555 data->block[0] = len; 550 556 outb_p(inb_p(SMBHSTCNT) | ALI15X3_BLOCK_CLR, SMBHSTCNT); /* Reset SMBBLKDAT */ 551 for (i = 1; i <= data->block[0]; i++) 557 for (i = 1; i <= data->block[0]; i++) { 552 558 data->block[i] = inb_p(SMBBLKDAT); 559 #ifdef DEBUG 560 printk("i2c-ali15x3.o: Blk: len=%d, i=%d, data=%02x\n", len, i, data->block[i]); 561 #endif DEBUG 562 } 553 563 break; 554 564 }
