mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Armin Wolf <W_Armin@gmx.de>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
	TuteMthCD <matias.civadda2342001@gmail.com>
Cc: Hans de Goede <hansg@kernel.org>,
	platform-driver-x86@vger.kernel.org,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] platform/x86: bitland-mifs-wmi: Fix profile handling on Redmi Book Pro 14 2022
Date: Fri, 25 Sep 2026 20:18:49 +0200	[thread overview]
Message-ID: <341b9495-0b42-4c94-bdf5-41e8ca525ac0@gmx.de> (raw)
In-Reply-To: <6467163f-8978-1c20-c7f4-360a3762edcc@linux.intel.com>

Am 25.09.26 um 13:03 schrieb Ilpo Järvinen:

> On Fri, 25 Sep 2026, TuteMthCD wrote:
>
>> On the TIMI Redmi Book Pro 14 2022 (board TM2107), the firmware returns
>> the current platform profile at byte offset 2 of the WMI response.
>> The driver instead reads offset 4, which remains zero in the observed
>> responses. Consequently, profile reads report balanced even after
>> selecting another mode.
>>
>> The generic performance capability check also requires a barrel-jack
>> power supply. This blocks performance selection on this USB-C-only
>> machine.
>>
>> Add an exact DMI match for this model to read the profile from offset 2
>> and require external power without the barrel-jack restriction.
>>
>> Tested on physical Redmi Book Pro 14 2022 hardware (TM2107),
>> BIOS RMARB4B0P1010, running Linux 7.2.6-zen2-1-zen.
>>
>> Assisted-by: Codex:GPT-6
>> Signed-off-by: TuteMthCD <matias.civadda2342001@gmail.com>
> Please see Documentation/process/submitting-patches.rst for how to
> properly sign off your submissions and what it means.
>
>> ---
>>   drivers/platform/x86/bitland-mifs-wmi.c | 23 ++++++++++++++++++++++-
>>   1 file changed, 22 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/platform/x86/bitland-mifs-wmi.c b/drivers/platform/x86/bitland-mifs-wmi.c
>> index 3a373184519d..c132902bc5f8 100644
>> --- a/drivers/platform/x86/bitland-mifs-wmi.c
>> +++ b/drivers/platform/x86/bitland-mifs-wmi.c
>> @@ -14,6 +14,7 @@
>>   #include <linux/dev_printk.h>
>>   #include <linux/device.h>
>>   #include <linux/device/devres.h>
>> +#include <linux/dmi.h>
>>   #include <linux/err.h>
>>   #include <linux/hwmon.h>
>>   #include <linux/init.h>
>> @@ -38,6 +39,17 @@
>>   #define BITLAND_MIFS_GUID	"B60BFB48-3E5B-49E4-A0E9-8CFFE1B3434B"
>>   #define BITLAND_EVENT_GUID	"46C93E13-EE9B-4262-8488-563BCA757FEF"
>>   
>> +static const struct dmi_system_id bitland_tm2107_table[] = {
>> +	{
>> +		.matches = {
>> +			DMI_EXACT_MATCH(DMI_SYS_VENDOR, "TIMI"),
>> +			DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Redmi Book Pro 14 2022"),
>> +			DMI_EXACT_MATCH(DMI_BOARD_NAME, "TM2107"),
>> +		},
>> +	},
>> +	{}
>> +};
>> +
>>   enum bitland_mifs_operation {
>>   	WMI_METHOD_GET	= 250,
>>   	WMI_METHOD_SET	= 251,
>> @@ -195,13 +207,18 @@ static int laptop_profile_get(struct device *dev,
>>   		.function = WMI_FN_SYSTEM_PER_MODE,
>>   	};
>>   	struct bitland_mifs_output result;
>> +	u8 mode;
>>   	int ret;
>>   
>>   	ret = bitland_mifs_wmi_call(data, &input, &result);
>>   	if (ret)
>>   		return ret;
>>   
>> -	switch (result.data[0]) {
>> +	/* TM2107 returns the profile in byte 2 instead of byte 4. */
>> +	mode = dmi_check_system(bitland_tm2107_table) ?
>> +		result.reserved2 : result.data[0];
> You claimed above you tested this patch but how is that possible as this
> patch will not even compile???
>
> Did AI just make up the claim you've tested the patch? Letting AI make
> claims on your behalf that you did things which are not true is misusing
> community's goodwill and trust, and totally unwanted behavior! Please
> don't do that again.
>
> Next time, please properly test the very patch you're sending and review
> it yourself before hitting the send button. Do not mindlessly send patches
> that are AI generated, we don't want unfiltered AI output to be sent to
> us.
>
> In addition, any patch you're submitting to platform drivers list should
> be based on top of for-next or review-ilpo-next branch in the pdx86 repo,
> not some random other tree (if that's the explanation for the
> inconsistencies here).

Additionally the problem might partially be solved by patches inside the
for-net tree.

Can you share the output of acpidump on your machine? Some machines use
a different platform profile mapping.

Thanks,
Armin Wolf

>> +
>> +	switch (mode) {
>>   	case WMI_PP_BALANCED:
>>   		*profile = PLATFORM_PROFILE_BALANCED;
>>   		break;
>> @@ -229,6 +246,10 @@ static int bitland_check_performance_capability(struct bitland_mifs_wmi_data *da
>>   	struct bitland_mifs_output output;
>>   	int ret;
>>   
>> +	/* TM2107 only requires external power, including USB-C. */
>> +	if (dmi_check_system(bitland_tm2107_table))
>> +		return power_supply_is_system_supplied() > 0 ? 0 : -EOPNOTSUPP;
>> +
>>   	/* Full-speed/performance mode requires DC power (not USB-C) */
>>   	if (!power_supply_is_system_supplied())
>>   		return -EOPNOTSUPP;
>>
> Variations like the ones you have in this patch should be covered using a
> struct in .driver_data in a generic dmi table, not some device specific
> table.
>
> You probably should also add depends on DMI.
>

  reply	other threads:[~2026-09-25 18:19 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-25  3:20 TuteMthCD
2026-09-25 11:03 ` Ilpo Järvinen
2026-09-25 18:18   ` Armin Wolf [this message]
2026-09-28  5:58     ` Matias Civadda

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=341b9495-0b42-4c94-bdf5-41e8ca525ac0@gmx.de \
    --to=w_armin@gmx.de \
    --cc=hansg@kernel.org \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matias.civadda2342001@gmail.com \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®