drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++-- drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + 2 files changed, 502 insertions(+), 46 deletions(-)
With the Uniwill driver from Armin now accepted I want to push the first
big addon to it that I worked on in parallel.
First this adds all current Tuxedo devices to use at least the input part
of the new driver.
Second it adds a new feature for cTGP control on Uniwill devices with
NVIDIA GPUs and enables that on the TUXEDO devices.
I have not yet enabled the other features in this driver for TUXEDO devices
as they either don't apply (Uniwill did a line with Intel that behaves a
little different to the rest of their ECs and that line is what the features
Armin added are based on) or are, as of now, untested.
There are plenty more features currently implemented in the out of tree
tuxedo-drivers dkms package that I plan to port over one by one, but as
always: No ETA given.
Werner Sembach (6):
platform/x86/uniwill: Add TUXEDO devices
platform/x86/uniwill: Handle more WMI events required for TUXEDO
devices
platform/x86/uniwill: Implement cTGP setting
platform/x86/uniwill: Make uniwill_dmi_table accessible in probe
platform/x86/uniwill: Run callbacks of uniwill_dmi_table
platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP Gen7
MK1
drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++--
drivers/platform/x86/uniwill/uniwill-wmi.h | 2 +
2 files changed, 502 insertions(+), 46 deletions(-)
--
2.43.0
Am 17.11.25 um 14:23 schrieb Werner Sembach: > With the Uniwill driver from Armin now accepted I want to push the first > big addon to it that I worked on in parallel. > > First this adds all current Tuxedo devices to use at least the input part > of the new driver. > > Second it adds a new feature for cTGP control on Uniwill devices with > NVIDIA GPUs and enables that on the TUXEDO devices. > > I have not yet enabled the other features in this driver for TUXEDO devices > as they either don't apply (Uniwill did a line with Intel that behaves a > little different to the rest of their ECs and that line is what the features > Armin added are based on) or are, as of now, untested. > > There are plenty more features currently implemented in the out of tree > tuxedo-drivers dkms package that I plan to port over one by one, but as > always: No ETA given. Very nice, i think that especially the cTGP control feature will be very popular with users. I am also currently working to add fan table (aka "universal fan control"), PL1/PL2 power limit and platform profile support to the driver, so you might be able to reuse some of that functionality for your devices. I think that we can merge the first two patches in the near future, but the remaining ones dealing with the DMI table and cTGP support need some more work. What kind of control does your software (Tuxedo control center) need over the cTGP values? I am asking because Intel devices have fixed cTGP values for each platform profile. If your software does something similar, then maybe we can integrate this into the platform profile mechanism. Thanks, Armin Wolf > > Werner Sembach (6): > platform/x86/uniwill: Add TUXEDO devices > platform/x86/uniwill: Handle more WMI events required for TUXEDO > devices > platform/x86/uniwill: Implement cTGP setting > platform/x86/uniwill: Make uniwill_dmi_table accessible in probe > platform/x86/uniwill: Run callbacks of uniwill_dmi_table > platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP Gen7 > MK1 > > drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++-- > drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + > 2 files changed, 502 insertions(+), 46 deletions(-) >
Am 18.11.25 um 12:31 schrieb Armin Wolf: > Am 17.11.25 um 14:23 schrieb Werner Sembach: > >> With the Uniwill driver from Armin now accepted I want to push the first >> big addon to it that I worked on in parallel. >> >> First this adds all current Tuxedo devices to use at least the input part >> of the new driver. >> >> Second it adds a new feature for cTGP control on Uniwill devices with >> NVIDIA GPUs and enables that on the TUXEDO devices. >> >> I have not yet enabled the other features in this driver for TUXEDO devices >> as they either don't apply (Uniwill did a line with Intel that behaves a >> little different to the rest of their ECs and that line is what the features >> Armin added are based on) or are, as of now, untested. >> >> There are plenty more features currently implemented in the out of tree >> tuxedo-drivers dkms package that I plan to port over one by one, but as >> always: No ETA given. > > Very nice, i think that especially the cTGP control feature will be very > popular with users. > I am also currently working to add fan table (aka "universal fan control"), > PL1/PL2 power limit > and platform profile support to the driver, so you might be able to reuse some > of that > functionality for your devices. > > I think that we can merge the first two patches in the near future, but the > remaining ones > dealing with the DMI table and cTGP support need some more work. After reading through everything i will resend the first 2 patches reordered as v2 and work on the cTGP stuff as a separate patchset > What kind of control does > your software (Tuxedo control center) need over the cTGP values? I am asking > because Intel > devices have fixed cTGP values for each platform profile. If your software > does something > similar, then maybe we can integrate this into the platform profile mechanism. > > Thanks, > Armin Wolf > >> >> Werner Sembach (6): >> platform/x86/uniwill: Add TUXEDO devices >> platform/x86/uniwill: Handle more WMI events required for TUXEDO >> devices >> platform/x86/uniwill: Implement cTGP setting >> platform/x86/uniwill: Make uniwill_dmi_table accessible in probe >> platform/x86/uniwill: Run callbacks of uniwill_dmi_table >> platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP Gen7 >> MK1 >> >> drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++-- >> drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + >> 2 files changed, 502 insertions(+), 46 deletions(-) >>
Am 18.11.25 um 14:42 schrieb Werner Sembach: > > Am 18.11.25 um 12:31 schrieb Armin Wolf: >> Am 17.11.25 um 14:23 schrieb Werner Sembach: >> >>> With the Uniwill driver from Armin now accepted I want to push the >>> first >>> big addon to it that I worked on in parallel. >>> >>> First this adds all current Tuxedo devices to use at least the input >>> part >>> of the new driver. >>> >>> Second it adds a new feature for cTGP control on Uniwill devices with >>> NVIDIA GPUs and enables that on the TUXEDO devices. >>> >>> I have not yet enabled the other features in this driver for TUXEDO >>> devices >>> as they either don't apply (Uniwill did a line with Intel that >>> behaves a >>> little different to the rest of their ECs and that line is what the >>> features >>> Armin added are based on) or are, as of now, untested. >>> >>> There are plenty more features currently implemented in the out of tree >>> tuxedo-drivers dkms package that I plan to port over one by one, but as >>> always: No ETA given. >> >> Very nice, i think that especially the cTGP control feature will be >> very popular with users. >> I am also currently working to add fan table (aka "universal fan >> control"), PL1/PL2 power limit >> and platform profile support to the driver, so you might be able to >> reuse some of that >> functionality for your devices. >> >> I think that we can merge the first two patches in the near future, >> but the remaining ones >> dealing with the DMI table and cTGP support need some more work. > After reading through everything i will resend the first 2 patches > reordered as v2 and work on the cTGP stuff as a separate patchset Fine with me. Thanks, Armin Wolf >> What kind of control does >> your software (Tuxedo control center) need over the cTGP values? I am >> asking because Intel >> devices have fixed cTGP values for each platform profile. If your >> software does something >> similar, then maybe we can integrate this into the platform profile >> mechanism. >> >> Thanks, >> Armin Wolf >> >>> >>> Werner Sembach (6): >>> platform/x86/uniwill: Add TUXEDO devices >>> platform/x86/uniwill: Handle more WMI events required for TUXEDO >>> devices >>> platform/x86/uniwill: Implement cTGP setting >>> platform/x86/uniwill: Make uniwill_dmi_table accessible in probe >>> platform/x86/uniwill: Run callbacks of uniwill_dmi_table >>> platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP >>> Gen7 >>> MK1 >>> >>> drivers/platform/x86/uniwill/uniwill-acpi.c | 546 >>> ++++++++++++++++++-- >>> drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + >>> 2 files changed, 502 insertions(+), 46 deletions(-) >>>
Am 18.11.25 um 12:31 schrieb Armin Wolf: > Am 17.11.25 um 14:23 schrieb Werner Sembach: > >> With the Uniwill driver from Armin now accepted I want to push the first >> big addon to it that I worked on in parallel. >> >> First this adds all current Tuxedo devices to use at least the input part >> of the new driver. >> >> Second it adds a new feature for cTGP control on Uniwill devices with >> NVIDIA GPUs and enables that on the TUXEDO devices. >> >> I have not yet enabled the other features in this driver for TUXEDO devices >> as they either don't apply (Uniwill did a line with Intel that behaves a >> little different to the rest of their ECs and that line is what the features >> Armin added are based on) or are, as of now, untested. >> >> There are plenty more features currently implemented in the out of tree >> tuxedo-drivers dkms package that I plan to port over one by one, but as >> always: No ETA given. > > Very nice, i think that especially the cTGP control feature will be very > popular with users. > I am also currently working to add fan table (aka "universal fan control"), > PL1/PL2 power limit > and platform profile support to the driver, so you might be able to reuse some > of that > functionality for your devices. > > I think that we can merge the first two patches in the near future, but the > remaining ones > dealing with the DMI table and cTGP support need some more work. What kind of > control does > your software (Tuxedo control center) need over the cTGP values? I am asking > because Intel > devices have fixed cTGP values for each platform profile. If your software > does something > similar, then maybe we can integrate this into the platform profile mechanism. On some newer Uniwill devices all the platform profile register does is changing a led, the actual TDP, cTGP, Fan Curves, etc. are set in other registers. We currently expose this flexibility to userspace and need to keep it that way. > > Thanks, > Armin Wolf > >> >> Werner Sembach (6): >> platform/x86/uniwill: Add TUXEDO devices >> platform/x86/uniwill: Handle more WMI events required for TUXEDO >> devices >> platform/x86/uniwill: Implement cTGP setting >> platform/x86/uniwill: Make uniwill_dmi_table accessible in probe >> platform/x86/uniwill: Run callbacks of uniwill_dmi_table >> platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP Gen7 >> MK1 >> >> drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++-- >> drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + >> 2 files changed, 502 insertions(+), 46 deletions(-) >>
Am 18.11.25 um 14:17 schrieb Werner Sembach: > > Am 18.11.25 um 12:31 schrieb Armin Wolf: >> Am 17.11.25 um 14:23 schrieb Werner Sembach: >> >>> With the Uniwill driver from Armin now accepted I want to push the >>> first >>> big addon to it that I worked on in parallel. >>> >>> First this adds all current Tuxedo devices to use at least the input >>> part >>> of the new driver. >>> >>> Second it adds a new feature for cTGP control on Uniwill devices with >>> NVIDIA GPUs and enables that on the TUXEDO devices. >>> >>> I have not yet enabled the other features in this driver for TUXEDO >>> devices >>> as they either don't apply (Uniwill did a line with Intel that >>> behaves a >>> little different to the rest of their ECs and that line is what the >>> features >>> Armin added are based on) or are, as of now, untested. >>> >>> There are plenty more features currently implemented in the out of tree >>> tuxedo-drivers dkms package that I plan to port over one by one, but as >>> always: No ETA given. >> >> Very nice, i think that especially the cTGP control feature will be >> very popular with users. >> I am also currently working to add fan table (aka "universal fan >> control"), PL1/PL2 power limit >> and platform profile support to the driver, so you might be able to >> reuse some of that >> functionality for your devices. >> >> I think that we can merge the first two patches in the near future, >> but the remaining ones >> dealing with the DMI table and cTGP support need some more work. What >> kind of control does >> your software (Tuxedo control center) need over the cTGP values? I am >> asking because Intel >> devices have fixed cTGP values for each platform profile. If your >> software does something >> similar, then maybe we can integrate this into the platform profile >> mechanism. > > On some newer Uniwill devices all the platform profile register does > is changing a led, the actual TDP, cTGP, Fan Curves, etc. are set in > other registers. We currently expose this flexibility to userspace and > need to keep it that way. > The power mode LED i assume? The same thing happens on Intel devices, Fan curves and power limits are independent settings. Perhaps the "custom" platform profile would be suitable here? When selecting the custom platform profile, your userspace application can modify the fan curves and power limits as desired. Thanks, Armin Wolf >> >> Thanks, >> Armin Wolf >> >>> >>> Werner Sembach (6): >>> platform/x86/uniwill: Add TUXEDO devices >>> platform/x86/uniwill: Handle more WMI events required for TUXEDO >>> devices >>> platform/x86/uniwill: Implement cTGP setting >>> platform/x86/uniwill: Make uniwill_dmi_table accessible in probe >>> platform/x86/uniwill: Run callbacks of uniwill_dmi_table >>> platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP >>> Gen7 >>> MK1 >>> >>> drivers/platform/x86/uniwill/uniwill-acpi.c | 546 >>> ++++++++++++++++++-- >>> drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + >>> 2 files changed, 502 insertions(+), 46 deletions(-) >>> >
Am 18.11.25 um 14:42 schrieb Armin Wolf: > Am 18.11.25 um 14:17 schrieb Werner Sembach: > >> >> Am 18.11.25 um 12:31 schrieb Armin Wolf: >>> Am 17.11.25 um 14:23 schrieb Werner Sembach: >>> >>>> With the Uniwill driver from Armin now accepted I want to push the first >>>> big addon to it that I worked on in parallel. >>>> >>>> First this adds all current Tuxedo devices to use at least the input part >>>> of the new driver. >>>> >>>> Second it adds a new feature for cTGP control on Uniwill devices with >>>> NVIDIA GPUs and enables that on the TUXEDO devices. >>>> >>>> I have not yet enabled the other features in this driver for TUXEDO devices >>>> as they either don't apply (Uniwill did a line with Intel that behaves a >>>> little different to the rest of their ECs and that line is what the features >>>> Armin added are based on) or are, as of now, untested. >>>> >>>> There are plenty more features currently implemented in the out of tree >>>> tuxedo-drivers dkms package that I plan to port over one by one, but as >>>> always: No ETA given. >>> >>> Very nice, i think that especially the cTGP control feature will be very >>> popular with users. >>> I am also currently working to add fan table (aka "universal fan control"), >>> PL1/PL2 power limit >>> and platform profile support to the driver, so you might be able to reuse >>> some of that >>> functionality for your devices. >>> >>> I think that we can merge the first two patches in the near future, but the >>> remaining ones >>> dealing with the DMI table and cTGP support need some more work. What kind >>> of control does >>> your software (Tuxedo control center) need over the cTGP values? I am asking >>> because Intel >>> devices have fixed cTGP values for each platform profile. If your software >>> does something >>> similar, then maybe we can integrate this into the platform profile mechanism. >> >> On some newer Uniwill devices all the platform profile register does is >> changing a led, the actual TDP, cTGP, Fan Curves, etc. are set in other >> registers. We currently expose this flexibility to userspace and need to keep >> it that way. >> > The power mode LED i assume? The same thing happens on Intel devices, Fan > curves and power limits are independent > settings. Perhaps the "custom" platform profile would be suitable here? When > selecting the custom platform > profile, your userspace application can modify the fan curves and power limits > as desired. Ah ok, There are however uniwill devices where the register does more. But when there is a custom profile i think TCC could fit into that. > > Thanks, > Armin Wolf > >>> >>> Thanks, >>> Armin Wolf >>> >>>> >>>> Werner Sembach (6): >>>> platform/x86/uniwill: Add TUXEDO devices >>>> platform/x86/uniwill: Handle more WMI events required for TUXEDO >>>> devices >>>> platform/x86/uniwill: Implement cTGP setting >>>> platform/x86/uniwill: Make uniwill_dmi_table accessible in probe >>>> platform/x86/uniwill: Run callbacks of uniwill_dmi_table >>>> platform/x86/uniwill: Set cTGP support based on EC for TUXEDO IBP Gen7 >>>> MK1 >>>> >>>> drivers/platform/x86/uniwill/uniwill-acpi.c | 546 ++++++++++++++++++-- >>>> drivers/platform/x86/uniwill/uniwill-wmi.h | 2 + >>>> 2 files changed, 502 insertions(+), 46 deletions(-) >>>> >>
© 2016 - 2025 Red Hat, Inc.