From: bugzilla-daemon@kernel.org
To: linux-pm@vger.kernel.org
Subject: [Bug 218686] Fail to set energy_performance_preference of amd processor on asus ga403uv
Date: Sun, 04 Aug 2024 23:50:04 +0000 [thread overview]
Message-ID: <bug-218686-137361-CIYQZMRBV8@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-218686-137361@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=218686
--- Comment #72 from Chema (chemasanchezgarabito@gmail.com) ---
Created attachment 306666
--> https://bugzilla.kernel.org/attachment.cgi?id=306666&action=edit
ACPI tables looks ok
Ok, I have done many things since last comment that might shed some light to
this matter.
I have disassembled the ACPI tables of the laptop with latest BIOS (306)
The attacment is the ACPI table that contains the _CPC objects definition.
As UEFI defines:
-
https://uefi.org/specs/ACPI/6.5/08_Processor_Configuration_and_Control.html?highlight=cppc#collaborative-processor-performance-control
In the line 381 it defines the _CPC object of the first thread of the processor
and in the line 522 it defines the CPPC Enable Register as in the ACPI
specification, and it seems that the register is implemented correctly.
So three questions raises here to me:
- Why smokeless UAMF is not showing the option?
- Why is not linux reading it correctly if it is implemented?
- I am reading wrong the ACPI table and this means oher thing?
So to me looks that we cant do nothing in the ACPI tables to enable the
register as it is already correct in the current tables.
Also I have searched through the kernel code implementation of arch to see how
the CPPC thing is being enabled, and looks like the code of the function
functions in two ways:
- Hardcoded condition for some processors to enable by default
- Or lastly check the CPUID bit 27 is set to 1
https://github.com/archlinux/linux/blob/b1bc554e009e3aeed7e4cfd2e717c7a34a98c683/arch/x86/kernel/acpi/cppc.c#L14
I dont know why is it not working the last part as the register is correctly
implemented. But what I know is that this system configuration has a
configuration of:
- boot_cpu_data.x86 = 25 or 0x19
- boot_cpu_data.x86_model = 117 or 0x75
Done with command (lscpu | grep 'CPU family' && lscpu | grep 'Model:')
So clearly the hardcoded conditions do not apply to this system configuration
Given this for me only 2 posible solutions appear:
- Asus fixes this, but, may not seem probably to me as they do not support
linux and also the BIOS seems to correctly implement the ACPI tables.
And of course the fact that they didnt say nothing about this matter.
- We try to debug why the system is not reading/setting correctly the
CPPC register or what is really happening
- We path the linux kernel to include a condition to support this system
Should be pretty simple, only add an "&&" to the if confition.
And I dont know if also a possible solution my be to not implement the CPPC
Enable Register in the ACPI table so that OSPM enables CPPC by default as says
in this link?
https://uefi.org/specs/ACPI/6.5/08_Processor_Configuration_and_Control.html?highlight=cppc#cppc-enable-register
Of course it would be needed to create the updated table and use intrd to make
the linux kernel
https://docs.kernel.org/admin-guide/acpi/initrd_table_override.html
--
You may reply to this email to add a comment.
You are receiving this mail because:
You are the assignee for the bug.
next prev parent reply other threads:[~2024-08-04 23:50 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-06 2:56 [Bug 218686] New: Fail to set energy_performance_preference of amd processor on asus ga403uv bugzilla-daemon
2024-04-08 1:48 ` [Bug 218686] " bugzilla-daemon
2024-04-10 3:36 ` bugzilla-daemon
2024-04-10 5:28 ` bugzilla-daemon
2024-04-10 5:33 ` bugzilla-daemon
2024-04-10 5:39 ` bugzilla-daemon
2024-04-10 5:41 ` bugzilla-daemon
2024-04-10 5:46 ` bugzilla-daemon
2024-04-10 5:48 ` bugzilla-daemon
2024-04-10 6:17 ` bugzilla-daemon
2024-04-10 6:19 ` bugzilla-daemon
2024-04-10 6:26 ` bugzilla-daemon
2024-04-10 6:27 ` bugzilla-daemon
2024-04-10 6:29 ` bugzilla-daemon
2024-04-10 6:42 ` bugzilla-daemon
2024-04-10 6:43 ` bugzilla-daemon
2024-04-10 6:47 ` bugzilla-daemon
2024-04-10 6:49 ` bugzilla-daemon
2024-04-10 6:51 ` bugzilla-daemon
2024-04-10 6:55 ` bugzilla-daemon
2024-04-10 7:02 ` bugzilla-daemon
2024-04-10 7:12 ` bugzilla-daemon
2024-04-10 7:21 ` bugzilla-daemon
2024-04-10 7:26 ` bugzilla-daemon
2024-04-10 7:27 ` bugzilla-daemon
2024-04-10 16:08 ` bugzilla-daemon
2024-04-10 16:08 ` bugzilla-daemon
2024-04-11 4:18 ` bugzilla-daemon
2024-04-11 4:19 ` bugzilla-daemon
2024-04-11 4:20 ` bugzilla-daemon
2024-04-11 5:29 ` bugzilla-daemon
2024-04-11 5:30 ` bugzilla-daemon
2024-04-11 7:25 ` bugzilla-daemon
2024-04-11 9:02 ` bugzilla-daemon
2024-04-11 9:15 ` bugzilla-daemon
2024-04-11 10:09 ` bugzilla-daemon
2024-04-11 11:14 ` bugzilla-daemon
2024-04-11 12:56 ` bugzilla-daemon
2024-04-11 15:53 ` bugzilla-daemon
2024-04-11 15:54 ` bugzilla-daemon
2024-04-15 8:37 ` bugzilla-daemon
2024-04-18 7:36 ` bugzilla-daemon
2024-04-18 7:56 ` bugzilla-daemon
2024-04-18 8:41 ` bugzilla-daemon
2024-04-23 7:03 ` bugzilla-daemon
2024-04-23 7:25 ` bugzilla-daemon
2024-05-17 8:50 ` bugzilla-daemon
2024-05-17 11:53 ` bugzilla-daemon
2024-05-17 15:11 ` bugzilla-daemon
2024-05-20 15:26 ` bugzilla-daemon
2024-05-22 14:39 ` bugzilla-daemon
2024-05-22 14:53 ` bugzilla-daemon
2024-05-22 15:12 ` bugzilla-daemon
2024-05-27 8:12 ` bugzilla-daemon
2024-05-27 8:21 ` bugzilla-daemon
2024-05-27 9:48 ` bugzilla-daemon
2024-05-27 10:09 ` bugzilla-daemon
2024-07-15 23:08 ` bugzilla-daemon
2024-07-19 8:46 ` bugzilla-daemon
2024-07-30 10:32 ` bugzilla-daemon
2024-07-30 18:10 ` bugzilla-daemon
2024-07-30 23:34 ` bugzilla-daemon
2024-07-30 23:38 ` bugzilla-daemon
2024-07-31 5:41 ` bugzilla-daemon
2024-07-31 5:41 ` bugzilla-daemon
2024-07-31 11:50 ` bugzilla-daemon
2024-07-31 11:54 ` bugzilla-daemon
2024-07-31 12:12 ` bugzilla-daemon
2024-08-01 3:39 ` bugzilla-daemon
2024-08-01 12:02 ` bugzilla-daemon
2024-08-03 18:54 ` bugzilla-daemon
2024-08-03 18:56 ` bugzilla-daemon
2024-08-04 15:00 ` bugzilla-daemon
2024-08-04 23:50 ` bugzilla-daemon [this message]
2024-08-05 13:11 ` bugzilla-daemon
2024-08-05 14:32 ` bugzilla-daemon
2024-08-05 20:16 ` bugzilla-daemon
2024-08-06 8:29 ` bugzilla-daemon
2024-08-06 9:11 ` bugzilla-daemon
2024-08-06 14:27 ` bugzilla-daemon
2024-09-08 15:15 ` bugzilla-daemon
2024-09-08 15:33 ` bugzilla-daemon
2024-09-08 15:34 ` bugzilla-daemon
2024-09-09 2:54 ` bugzilla-daemon
2024-09-09 13:54 ` bugzilla-daemon
2024-09-09 14:43 ` bugzilla-daemon
2024-09-09 15:00 ` bugzilla-daemon
2024-09-09 15:02 ` bugzilla-daemon
2024-09-09 15:04 ` bugzilla-daemon
2024-09-09 21:16 ` bugzilla-daemon
2024-09-09 21:18 ` bugzilla-daemon
2024-09-09 21:31 ` bugzilla-daemon
2024-09-09 21:54 ` bugzilla-daemon
2024-09-09 22:06 ` bugzilla-daemon
2024-09-10 0:21 ` bugzilla-daemon
2024-09-10 0:49 ` bugzilla-daemon
2024-09-10 1:20 ` bugzilla-daemon
2024-09-10 1:22 ` bugzilla-daemon
2024-09-10 18:28 ` bugzilla-daemon
2024-09-11 4:32 ` bugzilla-daemon
2024-09-23 15:57 ` bugzilla-daemon
2024-09-23 15:58 ` bugzilla-daemon
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=bug-218686-137361-CIYQZMRBV8@https.bugzilla.kernel.org/ \
--to=bugzilla-daemon@kernel.org \
--cc=linux-pm@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;
as well as URLs for NNTP newsgroup(s).