diff --git a/Controllers/SapphireGPUController/SapphireGPUControllerDetect.cpp b/Controllers/SapphireGPUController/SapphireGPUControllerDetect.cpp index a7946a5a..e833c225 100644 --- a/Controllers/SapphireGPUController/SapphireGPUControllerDetect.cpp +++ b/Controllers/SapphireGPUController/SapphireGPUControllerDetect.cpp @@ -62,9 +62,8 @@ void DetectSapphireV1Controllers(i2c_smbus_interface* bus, uint8_t i2c_addr, con { if(TestForSapphireGPUController(bus, i2c_addr)) { - SapphireNitroGlowV1Controller* new_sapphire_gpu = new SapphireNitroGlowV1Controller(bus, i2c_addr); + SapphireNitroGlowV1Controller* new_sapphire_gpu = new SapphireNitroGlowV1Controller(bus, i2c_addr, name); RGBController_SapphireNitroGlowV1* new_controller = new RGBController_SapphireNitroGlowV1(new_sapphire_gpu); - new_controller->name = name; ResourceManager::get()->RegisterRGBController(new_controller); } @@ -74,9 +73,8 @@ void DetectSapphireV3Controllers(i2c_smbus_interface* bus, uint8_t i2c_addr, con { if(TestForSapphireGPUController(bus, i2c_addr)) { - SapphireNitroGlowV3Controller* new_sapphire_gpu = new SapphireNitroGlowV3Controller(bus, i2c_addr); + SapphireNitroGlowV3Controller* new_sapphire_gpu = new SapphireNitroGlowV3Controller(bus, i2c_addr, name); RGBController_SapphireNitroGlowV3* new_controller = new RGBController_SapphireNitroGlowV3(new_sapphire_gpu); - new_controller->name = name; ResourceManager::get()->RegisterRGBController(new_controller); } @@ -111,4 +109,4 @@ REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 7900 GRE Nitro+", REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 7900 XTX Nitro+", DetectSapphireV3Controllers, AMD_GPU_VEN, AMD_NAVI31_DEV, SAPPHIRE_SUB_VEN, SAPPHIRE_NAVI31_NITRO_PLUS_SUB_DEV, SAPPHIRE_NITRO_GLOW_V3_ADDR); REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 9070 Pure", DetectSapphireV3Controllers, AMD_GPU_VEN, AMD_NAVI48_DEV, SAPPHIRE_SUB_VEN, SAPPHIRE_NAVI48_PURE_SUB_DEV, SAPPHIRE_NITRO_GLOW_V3_ADDR); REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 9070 XT Nitro+", DetectSapphireV3Controllers, AMD_GPU_VEN, AMD_NAVI48_DEV, SAPPHIRE_SUB_VEN, SAPPHIRE_NAVI48_NITRO_PLUS_SUB_DEV, SAPPHIRE_NITRO_GLOW_V3_ADDR); -REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 9070 XT Pure", DetectSapphireV3Controllers, AMD_GPU_VEN, AMD_NAVI48_DEV, SAPPHIRE_SUB_VEN, SAPPHIRE_NAVI48_PURE_XT_SUB_DEV, SAPPHIRE_NITRO_GLOW_V3_ADDR); \ No newline at end of file +REGISTER_I2C_PCI_DETECTOR("Sapphire Radeon RX 9070 XT Pure", DetectSapphireV3Controllers, AMD_GPU_VEN, AMD_NAVI48_DEV, SAPPHIRE_SUB_VEN, SAPPHIRE_NAVI48_PURE_XT_SUB_DEV, SAPPHIRE_NITRO_GLOW_V3_ADDR); diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp index 9e9ae1df..b8446c6c 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp @@ -26,7 +26,7 @@ RGBController_SapphireNitroGlowV1::RGBController_SapphireNitroGlowV1(SapphireNit { controller = controller_ptr; - name = "Sapphire Nitro Glow V1 Device"; + name = controller->GetDeviceName(); vendor = "Sapphire"; description = "Sapphire Nitro Glow V1 Device"; location = controller->GetDeviceLocation(); diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.cpp index 74633a1e..960fb53c 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.cpp @@ -11,10 +11,11 @@ #include "SapphireNitroGlowV1Controller.h" -SapphireNitroGlowV1Controller::SapphireNitroGlowV1Controller(i2c_smbus_interface* bus, sapphire_dev_id dev) +SapphireNitroGlowV1Controller::SapphireNitroGlowV1Controller(i2c_smbus_interface* bus, sapphire_dev_id dev, std::string dev_name) { - this->bus = bus; - this->dev = dev; + this->bus = bus; + this->dev = dev; + this->name = dev_name; } SapphireNitroGlowV1Controller::~SapphireNitroGlowV1Controller() @@ -32,6 +33,11 @@ std::string SapphireNitroGlowV1Controller::GetDeviceLocation() return("I2C: " + return_string); } +std::string SapphireNitroGlowV1Controller::GetDeviceName() +{ + return(name); +} + unsigned char SapphireNitroGlowV1Controller::GetRed() { return(bus->i2c_smbus_read_byte_data(dev, SAPPHIRE_NITRO_GLOW_V1_REG_RED)); diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.h b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.h index 9e74b227..cfe6ee33 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.h +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/SapphireNitroGlowV1Controller.h @@ -41,10 +41,11 @@ enum class SapphireNitroGlowV1Controller { public: - SapphireNitroGlowV1Controller(i2c_smbus_interface* bus, sapphire_dev_id dev); + SapphireNitroGlowV1Controller(i2c_smbus_interface* bus, sapphire_dev_id dev, std::string dev_name); ~SapphireNitroGlowV1Controller(); std::string GetDeviceLocation(); + std::string GetDeviceName(); unsigned char GetRed(); unsigned char GetGreen(); @@ -61,5 +62,5 @@ public: private: i2c_smbus_interface* bus; sapphire_dev_id dev; - + std::string name; }; diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp index 9f125cf1..90eb1b05 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp @@ -26,7 +26,7 @@ RGBController_SapphireNitroGlowV3::RGBController_SapphireNitroGlowV3(SapphireNit { controller = controller_ptr; - name = "Sapphire Nitro Glow V3 Device"; + name = controller->GetDeviceName(); vendor = "Sapphire"; description = "Sapphire Nitro Glow V3 Device"; location = controller->GetDeviceLocation(); diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.cpp index 2f49f4c9..995fae9c 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.cpp @@ -11,10 +11,11 @@ #include "SapphireNitroGlowV3Controller.h" -SapphireNitroGlowV3Controller::SapphireNitroGlowV3Controller(i2c_smbus_interface* bus, sapphire_dev_id dev) +SapphireNitroGlowV3Controller::SapphireNitroGlowV3Controller(i2c_smbus_interface* bus, sapphire_dev_id dev, std::string dev_name) { - this->bus = bus; - this->dev = dev; + this->bus = bus; + this->dev = dev; + this->name = dev_name; } SapphireNitroGlowV3Controller::~SapphireNitroGlowV3Controller() @@ -32,6 +33,11 @@ std::string SapphireNitroGlowV3Controller::GetDeviceLocation() return("I2C: " + return_string); } +std::string SapphireNitroGlowV3Controller::GetDeviceName() +{ + return(name); +} + unsigned char SapphireNitroGlowV3Controller::GetRed() { return(bus->i2c_smbus_read_byte_data(dev, SAPPHIRE_NITRO_GLOW_V3_REG_RED)); diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.h b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.h index 9e171682..793ce93e 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.h +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/SapphireNitroGlowV3Controller.h @@ -48,10 +48,11 @@ enum class SapphireNitroGlowV3Controller { public: - SapphireNitroGlowV3Controller(i2c_smbus_interface* bus, sapphire_dev_id dev); + SapphireNitroGlowV3Controller(i2c_smbus_interface* bus, sapphire_dev_id dev, std::string dev_name); ~SapphireNitroGlowV3Controller(); std::string GetDeviceLocation(); + std::string GetDeviceName(); unsigned char GetRed(); unsigned char GetGreen(); @@ -86,5 +87,5 @@ public: private: i2c_smbus_interface* bus; sapphire_dev_id dev; - + std::string name; };