Compare commits

...
@@ -42,33 +42,71 @@ bool TestForGigabyteRGBFusionGPUController(i2c_smbus_interface* bus, unsigned ch
bool pass = false;
int res;
//Write out 0xAB 0x00 0x00 0x00 sequence
res = bus->i2c_smbus_write_byte(address, 0xAB);
if (res >= 0)
switch(address)
{
bus->i2c_smbus_write_byte(address, 0x00);
bus->i2c_smbus_write_byte(address, 0x00);
bus->i2c_smbus_write_byte(address, 0x00);
case 0x47:
//Write out 0xAB 0x00 0x00 0x00 sequence
res = bus->i2c_smbus_write_byte(address, 0xAB);
pass = true;
if (res >= 0)
{
bus->i2c_smbus_write_byte(address, 0x00);
bus->i2c_smbus_write_byte(address, 0x00);
bus->i2c_smbus_write_byte(address, 0x00);
res = bus->i2c_smbus_read_byte(address);
pass = true;
if (res != 0xAB)
{
pass = false;
}
res = bus->i2c_smbus_read_byte(address);
res = bus->i2c_smbus_read_byte(address);
if (res != 0xAB)
{
pass = false;
}
if(res != 0x14)
{
pass = false;
}
res = bus->i2c_smbus_read_byte(address);
bus->i2c_smbus_read_byte(address);
bus->i2c_smbus_read_byte(address);
if(res != 0x14)
{
pass = false;
}
bus->i2c_smbus_read_byte(address);
bus->i2c_smbus_read_byte(address);
}
break;
case 0x48:
pass = true;
//Write out 0xCC 0x01 0x00 0x00 sequence
// res = bus->i2c_smbus_write_byte(address, 0xCC);
// if (res >= 0)
// {
// bus->i2c_smbus_write_byte(address, 0x01);
// bus->i2c_smbus_write_byte(address, 0x00);
// bus->i2c_smbus_write_byte(address, 0x00);
// pass = true;
// res = bus->i2c_smbus_read_byte(address);
// if (res != 0xCC)
// {
// pass = false;
// }
// res = bus->i2c_smbus_read_byte(address);
// if(res != 0x01)
// {
// pass = false;
// }
// bus->i2c_smbus_read_byte(address);
// bus->i2c_smbus_read_byte(address);
// }
break;
}
return(pass);