Message ID | 20230613161034.3496047-3-michal.wilczynski@intel.com |
---|---|
State | Superseded |
Headers | show |
Series | Prefer using _OSC method over deprecated _PDC | expand |
On Tue, Jun 13, 2023 at 6:12 PM Michal Wilczynski <michal.wilczynski@intel.com> wrote: > > Capabilities buffer modified by the arch_acpi_set_pdc_bits() is not > _PDC specific, as it is used by _OSC method as well. Change function > name to better reflect it's independence from PDC. Change function > expected argument to pass capability buffer directly without any > offset, as the offset differ among _OSC and _PDC methods. > > Suggested-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > Signed-off-by: Michal Wilczynski <michal.wilczynski@intel.com> > Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Any objections to this from the x86 arch side? if not, I will route it via ACPI along with the rest of the series. > --- > arch/ia64/include/asm/acpi.h | 4 ++-- > arch/x86/include/asm/acpi.h | 10 +++++----- > drivers/acpi/processor_pdc.c | 2 +- > 3 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/arch/ia64/include/asm/acpi.h b/arch/ia64/include/asm/acpi.h > index 87927eb824cc..43797cb44383 100644 > --- a/arch/ia64/include/asm/acpi.h > +++ b/arch/ia64/include/asm/acpi.h > @@ -69,9 +69,9 @@ extern int __initdata nid_to_pxm_map[MAX_NUMNODES]; > #endif > > static inline bool arch_has_acpi_pdc(void) { return true; } > -static inline void arch_acpi_set_pdc_bits(u32 *buf) > +static inline void arch_acpi_set_proc_cap_bits(u32 *cap) > { > - buf[2] |= ACPI_PDC_EST_CAPABILITY_SMP; > + *cap |= ACPI_PDC_EST_CAPABILITY_SMP; > } > > #ifdef CONFIG_ACPI_NUMA > diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h > index 8eb74cf386db..6a498d1781e7 100644 > --- a/arch/x86/include/asm/acpi.h > +++ b/arch/x86/include/asm/acpi.h > @@ -100,23 +100,23 @@ static inline bool arch_has_acpi_pdc(void) > c->x86_vendor == X86_VENDOR_CENTAUR); > } > > -static inline void arch_acpi_set_pdc_bits(u32 *buf) > +static inline void arch_acpi_set_proc_cap_bits(u32 *cap) > { > struct cpuinfo_x86 *c = &cpu_data(0); > > - buf[2] |= ACPI_PDC_C_CAPABILITY_SMP; > + *cap |= ACPI_PDC_C_CAPABILITY_SMP; > > if (cpu_has(c, X86_FEATURE_EST)) > - buf[2] |= ACPI_PDC_EST_CAPABILITY_SWSMP; > + *cap |= ACPI_PDC_EST_CAPABILITY_SWSMP; > > if (cpu_has(c, X86_FEATURE_ACPI)) > - buf[2] |= ACPI_PDC_T_FFH; > + *cap |= ACPI_PDC_T_FFH; > > /* > * If mwait/monitor is unsupported, C2/C3_FFH will be disabled > */ > if (!cpu_has(c, X86_FEATURE_MWAIT)) > - buf[2] &= ~(ACPI_PDC_C_C2C3_FFH); > + *cap &= ~(ACPI_PDC_C_C2C3_FFH); > } > > static inline bool acpi_has_cpu_in_madt(void) > diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c > index 5596862e6fea..ce3acd86dd12 100644 > --- a/drivers/acpi/processor_pdc.c > +++ b/drivers/acpi/processor_pdc.c > @@ -24,7 +24,7 @@ static void acpi_set_pdc_bits(u32 *buf) > buf[2] = ACPI_PDC_SMP_T_SWCOORD; > > /* Twiddle arch-specific bits needed for _PDC */ > - arch_acpi_set_pdc_bits(buf); > + arch_acpi_set_proc_cap_bits(&buf[2]); > } > > static struct acpi_object_list *acpi_processor_alloc_pdc(void) > -- > 2.41.0 >
diff --git a/arch/ia64/include/asm/acpi.h b/arch/ia64/include/asm/acpi.h index 87927eb824cc..43797cb44383 100644 --- a/arch/ia64/include/asm/acpi.h +++ b/arch/ia64/include/asm/acpi.h @@ -69,9 +69,9 @@ extern int __initdata nid_to_pxm_map[MAX_NUMNODES]; #endif static inline bool arch_has_acpi_pdc(void) { return true; } -static inline void arch_acpi_set_pdc_bits(u32 *buf) +static inline void arch_acpi_set_proc_cap_bits(u32 *cap) { - buf[2] |= ACPI_PDC_EST_CAPABILITY_SMP; + *cap |= ACPI_PDC_EST_CAPABILITY_SMP; } #ifdef CONFIG_ACPI_NUMA diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h index 8eb74cf386db..6a498d1781e7 100644 --- a/arch/x86/include/asm/acpi.h +++ b/arch/x86/include/asm/acpi.h @@ -100,23 +100,23 @@ static inline bool arch_has_acpi_pdc(void) c->x86_vendor == X86_VENDOR_CENTAUR); } -static inline void arch_acpi_set_pdc_bits(u32 *buf) +static inline void arch_acpi_set_proc_cap_bits(u32 *cap) { struct cpuinfo_x86 *c = &cpu_data(0); - buf[2] |= ACPI_PDC_C_CAPABILITY_SMP; + *cap |= ACPI_PDC_C_CAPABILITY_SMP; if (cpu_has(c, X86_FEATURE_EST)) - buf[2] |= ACPI_PDC_EST_CAPABILITY_SWSMP; + *cap |= ACPI_PDC_EST_CAPABILITY_SWSMP; if (cpu_has(c, X86_FEATURE_ACPI)) - buf[2] |= ACPI_PDC_T_FFH; + *cap |= ACPI_PDC_T_FFH; /* * If mwait/monitor is unsupported, C2/C3_FFH will be disabled */ if (!cpu_has(c, X86_FEATURE_MWAIT)) - buf[2] &= ~(ACPI_PDC_C_C2C3_FFH); + *cap &= ~(ACPI_PDC_C_C2C3_FFH); } static inline bool acpi_has_cpu_in_madt(void) diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c index 5596862e6fea..ce3acd86dd12 100644 --- a/drivers/acpi/processor_pdc.c +++ b/drivers/acpi/processor_pdc.c @@ -24,7 +24,7 @@ static void acpi_set_pdc_bits(u32 *buf) buf[2] = ACPI_PDC_SMP_T_SWCOORD; /* Twiddle arch-specific bits needed for _PDC */ - arch_acpi_set_pdc_bits(buf); + arch_acpi_set_proc_cap_bits(&buf[2]); } static struct acpi_object_list *acpi_processor_alloc_pdc(void)