Currently the reference cooler from AMD does not have an existing RGB 
controller for OpenRGB, that's why I was looking for documentation on the I2C 
commands to send to the second SMU, so I don't risk bricking my card by sending 
wrong commands during development somehow.

writeSetCMDWithData:
**************************************************************
adli2c.iSize = sizeof(ADLI2C)
adli2c.iAction = ADL_DL_I2C_ACTIONWRITE
adli2c.iAddress = 0xb4
adli2c.iSpeed = 100
0 --------------------------------------------------
Dev 0: ADL_Display_WriteAndReadSMUI2C(0, &adli2c) = 0
adli2c.iDataSize = 24
i2cData[0]~[24]
40 51 2c 01 00 00 ff 00 ff ff ff cc 00 cc 00 00 00 ff ff ff ff ff ff ff

>From the RGB app's logs this is an example of what the official AMD 
>application on Windows is sending when it changes colors on the RGB strip.

>From this can it be assumed the AMD card is using the latter method you 
>mentioned with the second SMU I2C bus, in which case no driver changes would 
>be needed?


On Monday, January 8th, 2024 at 5:32 PM, Deucher, Alexander 
<[email protected]> wrote:


> 
> 
> [Public]
> 
> > -----Original Message-----
> > From: amd-gfx [email protected] On Behalf Of
> > Alexander Koskovich
> > Sent: Sunday, January 7, 2024 11:19 PM
> > To: [email protected]
> > Subject: Documentation for RGB strip on RX 7900 XTX (Reference)
> > 
> > Hello,
> > 
> > I was wondering if AMD would be able provide any documentation for the
> > RGB strip on the reference cooler
> > (https://www.amd.com/en/products/graphics/amd-radeon-rx-7900xtx)? It
> > looks to be handled via I2C commands to the SMU, but having proper
> > documentation would be extremely helpful.
> 
> 
> It depends on the AIB/OEM and how they designed the specific board. The RGB 
> controller will either be attached to the DDCVGA i2c bus on the display 
> hardware or the second SMU i2c bus. The former will require changes to the 
> amdgpu display code to register display i2c buses that are not used by the 
> display connectors on the board so they can be used by 3rd party 
> applications. Currently we only register i2c buses used for display 
> connectors. The latter buses are already registered with the i2c subsystem 
> since they are used for other things like EEPROMs on server and workstation 
> cards and should be available via standard Linux i2c APIs. I'm not sure what 
> i2c LED controllers each AIB vendor uses off hand. 
> https://openrgb.org/index.html would probably be a good resource for that 
> information.
> 
> Alex

Reply via email to