cpu,soc/intel: Sync ACPI CPU object implementations

Take variable names from soc/intel and adjust counter to
start from zero.

Change-Id: I14e1120e74e1bd92acd782a53104fabfb266c3b5
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/74396
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
This commit is contained in:
Kyösti Mälkki 2023-04-12 16:39:12 +03:00
parent 9ac50e1575
commit e39a3e3920
3 changed files with 19 additions and 31 deletions

View File

@ -327,30 +327,26 @@ static void generate_P_state_entries(int core, int cores_per_package)
void generate_cpu_entries(const struct device *device)
{
int coreID, cpuID;
int totalcores = dev_count_cpu();
int cores_per_package = get_logical_cores_per_package();
int numcpus = totalcores/cores_per_package;
int numcpus = totalcores / cores_per_package;
printk(BIOS_DEBUG, "Found %d CPU(s) with %d core(s) each.\n",
numcpus, cores_per_package);
for (cpuID = 1; cpuID <= numcpus; cpuID++) {
for (coreID = 1; coreID <= cores_per_package; coreID++) {
for (int cpu_id = 0; cpu_id < numcpus; cpu_id++) {
for (int core_id = 0; core_id < cores_per_package; core_id++) {
/* Generate Scope(\_SB) { Device(CPUx */
acpigen_write_processor_device(
(cpuID - 1) * cores_per_package+coreID - 1);
acpigen_write_processor_device(cpu_id * cores_per_package + core_id);
/* Generate P-state tables */
generate_P_state_entries(
coreID - 1, cores_per_package);
generate_P_state_entries(core_id, cores_per_package);
/* Generate C-state tables */
generate_C_state_entries(device);
/* Generate T-state tables */
generate_T_state_entries(
cpuID - 1, cores_per_package);
generate_T_state_entries(cpu_id, cores_per_package);
acpigen_write_processor_device_end();
}

View File

@ -205,30 +205,26 @@ static void generate_P_state_entries(int core, int cores_per_package)
void generate_cpu_entries(const struct device *device)
{
int coreID, cpuID;
int totalcores = dev_count_cpu();
int cores_per_package = get_cores_per_package();
int numcpus = totalcores/cores_per_package;
int numcpus = totalcores / cores_per_package;
printk(BIOS_DEBUG, "Found %d CPU(s) with %d core(s) each.\n",
numcpus, cores_per_package);
for (cpuID = 1; cpuID <= numcpus; cpuID++) {
for (coreID = 1; coreID <= cores_per_package; coreID++) {
for (int cpu_id = 0; cpu_id < numcpus; cpu_id++) {
for (int core_id = 0; core_id < cores_per_package; core_id++) {
/* Generate Scope(\_SB) { Device(CPUx */
acpigen_write_processor_device(
(cpuID-1)*cores_per_package+coreID-1);
acpigen_write_processor_device(cpu_id * cores_per_package + core_id);
/* Generate P-state tables */
generate_P_state_entries(
cpuID-1, cores_per_package);
generate_P_state_entries(cpu_id, cores_per_package);
/* Generate C-state tables */
generate_C_state_entries();
/* Generate T-state tables */
generate_T_state_entries(
cpuID-1, cores_per_package);
generate_T_state_entries(cpu_id, cores_per_package);
acpigen_write_processor_device_end();
}

View File

@ -296,30 +296,26 @@ static void generate_P_state_entries(int core, int cores_per_package)
void generate_cpu_entries(const struct device *device)
{
int coreID, cpuID;
int totalcores = dev_count_cpu();
int cores_per_package = get_logical_cores_per_package();
int numcpus = totalcores/cores_per_package;
int numcpus = totalcores / cores_per_package;
printk(BIOS_DEBUG, "Found %d CPU(s) with %d core(s) each.\n",
numcpus, cores_per_package);
for (cpuID = 1; cpuID <= numcpus; cpuID++) {
for (coreID = 1; coreID <= cores_per_package; coreID++) {
/* Generate Scope(\_SB) { Device(CPU */
acpigen_write_processor_device(
(cpuID-1)*cores_per_package+coreID-1);
for (int cpu_id = 0; cpu_id < numcpus; cpu_id++) {
for (int core_id = 0; core_id < cores_per_package; core_id++) {
/* Generate Scope(\_SB) { Device(CPUx */
acpigen_write_processor_device(cpu_id * cores_per_package + core_id);
/* Generate P-state tables */
generate_P_state_entries(
cpuID-1, cores_per_package);
generate_P_state_entries(cpu_id, cores_per_package);
/* Generate C-state tables */
generate_C_state_entries(device);
/* Generate T-state tables */
generate_T_state_entries(
cpuID-1, cores_per_package);
generate_T_state_entries(cpu_id, cores_per_package);
acpigen_write_processor_device_end();
}