Re: [PATCH v2] riscv: acpi: Handle LPI architectural context loss flags
Sunil V L <[email protected]> Tue, 28 Jul 2026 18:49:11 +0530
| Newsgroups | dev.linux.lists.spacemit,org.infradead.lists.linux-riscv,org.kernel.vger.linux-acpi,org.kernel.vger.linux-kernel,org.kernel.vger.stable |
|---|---|
| Message-ID | <CAB19ukHpFS-=nK6Tfjk-nY_Jz7Pi82pE4-YQkfQqoBXekOLtuw@mail.gmail.com> |
On Tue, Jul 28, 2026 at 6:24=E2=80=AFPM Sunil V L <[email protected]= > wrote: > > On Tue, Jul 28, 2026 at 5:24=E2=80=AFPM Peixin Xie > <[email protected]> wrote: > > > > Commit 4785aa802853 ("cpuidle, ACPI: Evaluate LPI arch_flags for > > broadcast timer") replaced the generic nonzero check for LPI > > architectural context loss flags with arch_get_idle_state_flags(). > > RISC-V does not implement the helper, so it falls back to the stub > > that returns 0. Consequently, CPUIDLE_FLAG_TIMER_STOP is not set when > > an LPI state loses the hart timer context, preventing cpuidle from > > using a broadcast timer for that state. > > > > Implement the RISC-V helper and map the hart timer context loss flag > > to CPUIDLE_FLAG_TIMER_STOP. > > > > Fixes: 4785aa802853 ("cpuidle, ACPI: Evaluate LPI arch_flags for broadc= ast timer") > > Cc: [email protected] > > Acked-by: Sudeep Holla <[email protected]> > > Reviewed-by: Yixun Lan <[email protected]> > > Signed-off-by: Peixin Xie <[email protected]> > > --- > > Changes in v2: > > - Correct the FFH specification reference to Chapter 2.1.1.2, > > Table 3, as suggested by Yixun. > > - Link to v1: https://patch.msgid.link/20260728-riscv-acpi-lpi-timer-v1= [email protected] > > --- > > arch/riscv/include/asm/acpi.h | 19 +++++++++++++++++++ > > 1 file changed, 19 insertions(+) > > > > diff --git a/arch/riscv/include/asm/acpi.h b/arch/riscv/include/asm/acp= i.h > > index 26ab37c171bc..2643e28fc08c 100644 > > --- a/arch/riscv/include/asm/acpi.h > > +++ b/arch/riscv/include/asm/acpi.h > > @@ -12,6 +12,8 @@ > > #ifndef _ASM_ACPI_H > > #define _ASM_ACPI_H > > > > +#include <linux/cpuidle.h> > > + > > /* Basic configuration for ACPI */ > > #ifdef CONFIG_ACPI > > > > @@ -67,6 +69,23 @@ int acpi_get_riscv_isa(struct acpi_table_header *tab= le, > > > > void acpi_get_cbo_block_size(struct acpi_table_header *table, u32 *cbo= m_size, > > u32 *cboz_size, u32 *cbop_size); > > + > > +/* > > + * RISC-V Functional Fixed Hardware Specification Version v1.0.1, > > + * Chapter 2.1.1.2. Arch. Context Lost Flags, Table 3 > > > Isn't it Chapter 3.1.2, Table 4? > It appears there is an issue with the HTML version regarding the chapter numbering. I have reported this to the documentation team. In the meantime, I recommend using the PDF version as the reference for any citations. Thanks, Sunil