From b3c3e167f32d686efbc05d11e9a19c1da7f9ebca Mon Sep 17 00:00:00 2001 From: Amadej Kastelic Date: Sat, 3 Jan 2026 11:44:18 +0100 Subject: [PATCH] controllers/powercolor/gpu: add 6900 XT; fix controller mapping --- .../PowerColorGPUControllerDetect.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Controllers/PowerColorGPUController/PowerColorGPUControllerDetect.cpp b/Controllers/PowerColorGPUController/PowerColorGPUControllerDetect.cpp index b5cfaa9b9..2650e0d59 100644 --- a/Controllers/PowerColorGPUController/PowerColorGPUControllerDetect.cpp +++ b/Controllers/PowerColorGPUController/PowerColorGPUControllerDetect.cpp @@ -37,8 +37,8 @@ void DetectPowerColorRedDevilGPUControllersV1(i2c_smbus_interface* bus, uint8_t int ret = bus->i2c_smbus_read_i2c_block_data(i2c_addr, RED_DEVIL_V1_REG_MAGIC, 3, data); if(ret == 3 && memcmp(data, magic_v1, 3) == 0) { - PowerColorRedDevilV2Controller* controller = new PowerColorRedDevilV2Controller(bus, i2c_addr, name); - RGBController_PowerColorRedDevilV2* rgb_controller = new RGBController_PowerColorRedDevilV2(controller); + PowerColorRedDevilV1Controller* controller = new PowerColorRedDevilV1Controller(bus, i2c_addr, name); + RGBController_PowerColorRedDevilV1* rgb_controller = new RGBController_PowerColorRedDevilV1(controller); ResourceManager::get()->RegisterRGBController(rgb_controller); } @@ -56,8 +56,8 @@ void DetectPowerColorRedDevilGPUControllersV2(i2c_smbus_interface* bus, uint8_t int ret = bus->i2c_smbus_read_i2c_block_data(i2c_addr, RED_DEVIL_V2_READ_REG_MAGIC, 3, data); if(ret == 3 && memcmp(data, magic_v2, 3) == 0) { - PowerColorRedDevilV1Controller* controller = new PowerColorRedDevilV1Controller(bus, i2c_addr, name); - RGBController_PowerColorRedDevilV1* rgb_controller = new RGBController_PowerColorRedDevilV1(controller); + PowerColorRedDevilV2Controller* controller = new PowerColorRedDevilV2Controller(bus, i2c_addr, name); + RGBController_PowerColorRedDevilV2* rgb_controller = new RGBController_PowerColorRedDevilV2(controller); ResourceManager::get()->RegisterRGBController(rgb_controller); } @@ -67,6 +67,8 @@ REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX5700", DetectPowerC REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX5700XT", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI10_DEV, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX5700XT_SUB_DEV, 0x22); REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX6750XT", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI22_DEV, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX6750XT_SUB_DEV, 0x22); REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX6800XT", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI21_DEV1, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX6800XT_SUB_DEV, 0x22); +REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX6900XT", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI21_DEV1, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX6900XT_SUB_DEV, 0x22); +REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX6900XT", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI21_DEV2, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX6900XT_SUB_DEV, 0x22); REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX6900XT Ultimate", DetectPowerColorRedDevilGPUControllersV1, AMD_GPU_VEN, AMD_NAVI21_DEV2, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX6900XT_ULTIMATE_SUB_DEV, 0x22); REGISTER_I2C_PCI_DETECTOR("PowerColor Red Devil RX9070XT", DetectPowerColorRedDevilGPUControllersV2, AMD_GPU_VEN, AMD_NAVI48_DEV, POWERCOLOR_SUB_VEN, POWERCOLOR_RED_DEVIL_RX9070XT_SUB_DEV, 0x22);