IBASE MRS-801-RE User Manual

Page 67

Advertising
background image

Copyright © 2013 IBASE Technology Inc. All Rights Reserved.

59

IBASE Technology Inc.

fprintf(stderr, "WARNING! This program can confuse your I2C "

"bus, cause data loss and worse!\n");

if (address >= 0x50 && address <= 0x57) {

fprintf(stderr, "DANGEROUS! Writing to a serial "

"EEPROM on a memory DIMM\nmay render your "

"memory USELESS and make your system "

"UNBOOTABLE!\n");

dont++;

}

fprintf(stderr, "I will write to device file %s, chip address "

"0x%02x, data address\n0x%02x, ", filename, address, daddress);

if (size == I2C_SMBUS_BYTE)

fprintf(stderr, "no data.\n");

else if (size == I2C_SMBUS_BLOCK_DATA ||

size == I2C_SMBUS_I2C_BLOCK_DATA) {

int i;

fprintf(stderr, "data");

for (i = 0; i < len; i++)

fprintf(stderr, " 0x%02x", block[i]);

fprintf(stderr, ", mode %s.\n", size == I2C_SMBUS_BLOCK_DATA

? "smbus block" : "i2c block");

} else

fprintf(stderr, "data 0x%02x%s, mode %s.\n", value,

vmask ? " (masked)" : "",

size == I2C_SMBUS_BYTE_DATA ? "byte" : "word");

if (pec)

fprintf(stderr, "PEC checking enabled.\n");

fprintf(stderr, "Continue? [%s] ", dont ? "y/N" : "Y/n");

fflush(stderr);

if (!user_ack(!dont)) {

fprintf(stderr, "Aborting on user request.\n");

return 0;

}

Advertising