diff --git a/Controllers/PalitGPUController/PalitGPUController.cpp b/Controllers/PalitGPUController/PalitGPUController.cpp index 7171e319..5fd7d794 100644 --- a/Controllers/PalitGPUController/PalitGPUController.cpp +++ b/Controllers/PalitGPUController/PalitGPUController.cpp @@ -11,10 +11,11 @@ #include "PalitGPUController.h" -PalitGPUController::PalitGPUController(i2c_smbus_interface* bus, palit_dev_id dev) +PalitGPUController::PalitGPUController(i2c_smbus_interface* bus, palit_dev_id dev, std::string dev_name) { - this->bus = bus; - this->dev = dev; + this->bus = bus; + this->dev = dev; + this->name = dev_name; } PalitGPUController::~PalitGPUController() @@ -32,6 +33,11 @@ std::string PalitGPUController::GetDeviceLocation() return("I2C: " + return_string); } +std::string PalitGPUController::GetName() +{ + return(name); +} + void PalitGPUController::SetDirect(unsigned char red, unsigned char green, unsigned char blue) { // NvAPI_I2CWriteEx: Dev: 0x08 RegSize: 0x01 Reg: 0x03 Size: 0x04 Data: 0xFF 0x00 0x00 0xFF diff --git a/Controllers/PalitGPUController/PalitGPUController.h b/Controllers/PalitGPUController/PalitGPUController.h index 189e5f57..1d8bad95 100644 --- a/Controllers/PalitGPUController/PalitGPUController.h +++ b/Controllers/PalitGPUController/PalitGPUController.h @@ -14,30 +14,31 @@ #include #include "i2c_smbus.h" -typedef unsigned char palit_dev_id; +typedef unsigned char palit_dev_id; enum { - PALIT_GPU_MODE_DIRECT = 0x00, + PALIT_GPU_MODE_DIRECT = 0x00, }; enum { - PALIT_GPU_REG_LED = 0x03, + PALIT_GPU_REG_LED = 0x03, }; class PalitGPUController { public: - PalitGPUController(i2c_smbus_interface* bus, palit_dev_id dev); + PalitGPUController(i2c_smbus_interface* bus, palit_dev_id dev, std::string dev_name); ~PalitGPUController(); - std::string GetDeviceLocation(); + std::string GetDeviceLocation(); + std::string GetName(); - void SetDirect(unsigned char red, unsigned char green, unsigned char blue); + void SetDirect(unsigned char red, unsigned char green, unsigned char blue); private: i2c_smbus_interface* bus; - palit_dev_id dev; - + palit_dev_id dev; + std::string name; }; diff --git a/Controllers/PalitGPUController/PalitGPUControllerDetect.cpp b/Controllers/PalitGPUController/PalitGPUControllerDetect.cpp index 2e8ddfc5..653ea666 100644 --- a/Controllers/PalitGPUController/PalitGPUControllerDetect.cpp +++ b/Controllers/PalitGPUController/PalitGPUControllerDetect.cpp @@ -36,19 +36,23 @@ void DetectPalitGPUControllers(i2c_smbus_interface* bus, uint8_t i2c_addr, const return; } + /*-----------------------------------------------------*\ + | Check for PALIT string | + \*-----------------------------------------------------*/ const uint8_t palit[] = {'P', 'A', 'L', 'I', 'T'}; - for (size_t i = 0; i < sizeof(palit); i++) + + for(size_t i = 0; i < sizeof(palit); i++) { int32_t letter = bus->i2c_smbus_read_byte_data(i2c_addr, 0x07 + (u8)i); - if (palit[i] != letter) + + if(palit[i] != letter) { return; } } - PalitGPUController* controller = new PalitGPUController(bus, i2c_addr); + PalitGPUController* controller = new PalitGPUController(bus, i2c_addr, name); RGBController_PalitGPU* rgb_controller = new RGBController_PalitGPU(controller); - rgb_controller->name = name; ResourceManager::get()->RegisterRGBController(rgb_controller); } /* DetectPalitGPUControllers() */ diff --git a/Controllers/PalitGPUController/RGBController_PalitGPU.cpp b/Controllers/PalitGPUController/RGBController_PalitGPU.cpp index fdb781a7..3b07009b 100644 --- a/Controllers/PalitGPUController/RGBController_PalitGPU.cpp +++ b/Controllers/PalitGPUController/RGBController_PalitGPU.cpp @@ -26,7 +26,7 @@ RGBController_PalitGPU::RGBController_PalitGPU(PalitGPUController* controller_pt { controller = controller_ptr; - name = "Palit GPU"; + name = controller->GetName(); vendor = "Palit"; description = "Legacy Palit RGB GPU Device"; location = controller->GetDeviceLocation(); @@ -52,8 +52,8 @@ void RGBController_PalitGPU::SetupZones() | This device only has one LED, so create a single zone and | | LED for it | \*---------------------------------------------------------*/ - zone* new_zone = new zone(); - led* new_led = new led(); + zone* new_zone = new zone(); + led* new_led = new led(); new_zone->name = "GPU Zone"; new_zone->type = ZONE_TYPE_SINGLE;