Attempt to use only byte writes for ENE reads

This commit is contained in:
Adam Honse
2021-12-25 00:41:17 -06:00
parent f093a66057
commit bb98276325
2 changed files with 4 additions and 2 deletions

View File

@@ -121,7 +121,8 @@ static const gpu_pci_device device_list[] =
unsigned char ENERegisterRead(i2c_smbus_interface* bus, ene_dev_id dev, ene_register reg)
{
//Write ENE register
bus->i2c_smbus_write_word_data(dev, 0x00, ((reg << 8) & 0xFF00) | ((reg >> 8) & 0x00FF));
bus->i2c_smbus_write_byte_data(dev, 0x00, ((reg >> 8) & 0x00FF));
bus->i2c_smbus_write_byte(dev, (reg & 0x00FF));
//Read ENE value
return(bus->i2c_smbus_read_byte_data(dev, 0x81));

View File

@@ -27,7 +27,8 @@ int ENESMBusInterface_i2c_smbus::GetMaxBlock()
unsigned char ENESMBusInterface_i2c_smbus::ENERegisterRead(ene_dev_id dev, ene_register reg)
{
//Write ENE register
bus->i2c_smbus_write_word_data(dev, 0x00, ((reg << 8) & 0xFF00) | ((reg >> 8) & 0x00FF));
bus->i2c_smbus_write_byte_data(dev, 0x00, (reg & 0x00FF));
bus->i2c_smbus_write_byte(dev, ((reg >> 8) & 0x00FF));
//Read ENE value
return(bus->i2c_smbus_read_byte_data(dev, 0x81));