Documentation for RGB strip on RX 7900 XTX (Reference)

Alexander Koskovich AKoskovich at protonmail.com
Tue Jan 9 21:59:11 UTC 2024


Is the AIB/OEM for this board not AMD?
https://www.amd.com/en/products/graphics/amd-radeon-rx-7900xtx



On Tuesday, January 9th, 2024 at 4:53 PM, Deucher, Alexander <Alexander.Deucher at amd.com> wrote:


> 
> 
> [AMD Official Use Only - General]
> 
> > -----Original Message-----
> > From: Alexander Koskovich AKoskovich at protonmail.com
> > Sent: Tuesday, January 9, 2024 3:27 PM
> > To: Deucher, Alexander Alexander.Deucher at amd.com
> > Cc: amd-gfx at lists.freedesktop.org
> > Subject: RE: Documentation for RGB strip on RX 7900 XTX (Reference)
> > 
> > Doe AMD have documentation on the i2c data that gets sent currently
> > though? I was hoping to figure out what you need to change in the command
> > that gets sent to change stuff like brightness, color (red, green, blue), rainbow,
> > morse code, etc.
> 
> 
> It depends on the LED controller used by the AIB/OEM. The programming sequence is dependent on the LED controller.
> 
> Alex
> 
> > On Tuesday, January 9th, 2024 at 10:10 AM, Deucher, Alexander
> > Alexander.Deucher at amd.com wrote:
> > 
> > > [Public]
> > > 
> > > > -----Original Message-----
> > > > From: Alexander Koskovich AKoskovich at protonmail.com
> > > > Sent: Monday, January 8, 2024 7:22 PM
> > > > To: Deucher, Alexander Alexander.Deucher at amd.com
> > > > Cc: amd-gfx at lists.freedesktop.org
> > > > Subject: RE: Documentation for RGB strip on RX 7900 XTX (Reference)
> > > > 
> > > > 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?
> > > 
> > > IIRC, each AIB/OEM uses its own preferred RGB controller. The reference
> > > board just defines which i2c buses can be used. The RGB control application is
> > > just a userspace app provided by the AIB/OEM that calls ADL to talk to
> > > whichever i2c bus the vendor put their RGB controller on. On Linux you can do
> > > something similar using the i2c_dev module to open a connection to the i2c
> > > bus driver provided by the kernel. I believe that is what openRGB does today.
> > > It looks like you already have the programming sequence above.
> > > 
> > > Alex
> > > 
> > > > On Monday, January 8th, 2024 at 5:32 PM, Deucher, Alexander
> > > > Alexander.Deucher at amd.com wrote:
> > > > 
> > > > > [Public]
> > > > > 
> > > > > > -----Original Message-----
> > > > > > From: amd-gfx amd-gfx-bounces at lists.freedesktop.org On Behalf Of
> > > > > > Alexander Koskovich
> > > > > > Sent: Sunday, January 7, 2024 11:19 PM
> > > > > > To: amd-gfx at lists.freedesktop.org
> > > > > > 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


More information about the amd-gfx mailing list