Improve Kingston Fury detection

This commit is contained in:
Milan Čermák 2024-10-09 02:34:08 +00:00 committed by Adam Honse
parent f802547e7b
commit d5ef41bb80
3 changed files with 177 additions and 65 deletions

View file

@ -87,6 +87,7 @@ void DetectHyperXDRAMControllers(std::vector<i2c_smbus_interface*> &busses)
if(TestForHyperXDRAMController(busses[bus], 0x27))
{
// Switch to 2nd SPD page
busses[bus]->i2c_smbus_write_byte_data(0x37, 0x00, 0xFF);
std::this_thread::sleep_for(1ms);
@ -128,6 +129,11 @@ void DetectHyperXDRAMControllers(std::vector<i2c_smbus_interface*> &busses)
LOG_DEBUG("[%s] slots_valid=%d fury_detected=%d pred_detected=%d",
HYPERX_CONTROLLER_NAME, slots_valid, fury_detected, pred_detected);
// Switch back to 1st SPD page
busses[bus]->i2c_smbus_write_byte_data(0x36, 0x00, 0xFF);
std::this_thread::sleep_for(1ms);
if(slots_valid != 0)
{
HyperXDRAMController* controller = new HyperXDRAMController(busses[bus], 0x27, slots_valid);