Hello again, I've been working on OverDrive support for smu13, as you probably already know. In that endeavor, it also contains the following: 1. I've come up with a few patterns that I think will reduce the amount of boilerplate and SMU-specific code required to do implement these interfaces in the future. 2. Since the old pp_od_clk_voltage sysfs interface is inadequate for usage in setting values other than a few indexed clock/voltage settings, I'll likely be sending a proposed "generic" interface, where OD settings are exposed to userspace by ASIC-specific indexed identifiers. But, those are beside the point, for now. While picking through the existing headers, the information in smu_v13_0_0_pptable.h seems to not quite be in line with what I'm seeing coming from the card, so I'm instead focusing mainly on smu13_driver_if_v13_0_0.h. In the two OverDrive-related structs, OverDriveTable_t and OverDriveLimits_t, the FeatureCtrlMask member seems to be controlling which of the "features" of OverDrive would actually be in use. As of yet, I haven't been able to find an index of what the bits in here actually mean. Is there any way you could help me out with that? My best guess thus far is that they are by each element of the OverDriveTable_t struct, but that's only just a guess. For reference, here are the values I'm seeing present in each at boot time. Since FeatureCtrlMask is 0b11111001101, the current theory is that the "unsupported" features would be VddGfxVmax, GfxclkFmin, GfxclkFmax. Does that line up with what we'd be expecting for this ASIC? Thanks in advance for any information you can provide. I really appreciate the work that you all do. Thanks, Matt OverDriveLimits: FeatureCtrlMask: [0x000007cd, 0x000007cd] VoltageOffsetPerZoneBoundary: [-450, 0] VddGfxVmax: [0, 0] IdlePwrSavingFeaturesCtrl: [0x00, 0x00] RuntimePwrSavingFeaturesCtrl: [0x00, 0x00] GfxclkFmin: [500, 5000] GfxclkFmax: [500, 5000] UclkFmin: [97, 1500] UclkFmax: [97, 1500] Ppt: [-10, 15], Tdc: [-10, 0] FanLinearPwmPoints: [23, 100] FanLinearTempPoints: [25, 100] FanMinimumPwm: [23, 100] AcousticTargetRpmThreshold: [500, 3200] AcousticLimitRpmThreshold: [500, 3200] FanTargetTemperature: [25, 105] FanZeroRpmEnable: [0, 1] FanZeroRpmStopTemp: [25, 100] FanMode: [0, 1] MaxOpTemp: [50, 110] OverDriveTable: FeatureCtrlMask: 0x00000000 VoltageOffsetPerZoneBoundary[0]: 0 VoltageOffsetPerZoneBoundary[1]: 0 VoltageOffsetPerZoneBoundary[2]: 0 VoltageOffsetPerZoneBoundary[3]: 0 VoltageOffsetPerZoneBoundary[4]: 0 VoltageOffsetPerZoneBoundary[5]: 0 VddGfxVmax: 1150 IdlePwrSavingFeaturesCtrl: 0x00 RuntimePwrSavingFeaturesCtrl: 0x00 GfxclkFmin: 500 GfxclkFmax: 2890 UclkFmin: 97 UclkFmax: 1249 Ppt: 0 Tdc: 0 FanLinearPwmPoints[0]: 0 FanLinearPwmPoints[1]: 0 FanLinearPwmPoints[2]: 0 FanLinearPwmPoints[3]: 0 FanLinearPwmPoints[4]: 0 FanLinearPwmPoints[5]: 0 FanLinearTempPoints[0]: 0 FanLinearTempPoints[1]: 0 FanLinearTempPoints[2]: 0 FanLinearTempPoints[3]: 0 FanLinearTempPoints[4]: 0 FanLinearTempPoints[5]: 0 FanMinimumPwm: 35 AcousticTargetRpmThreshold: 1250 AcousticLimitRpmThreshold: 1500 FanTargetTemperature: 94 FanZeroRpmEnable: 1 FanZeroRpmStopTemp: 55 FanMode: 0 MaxOpTemp: 110