public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
       [not found] <20230303133647.845095-1-sunilvl@ventanamicro.com>
@ 2023-03-06 21:51 ` Conor Dooley
  2023-03-07  5:06   ` Sunil V L
  0 siblings, 1 reply; 10+ messages in thread
From: Conor Dooley @ 2023-03-06 21:51 UTC (permalink / raw)
  To: Sunil V L
  Cc: linux-riscv, linux-acpi, linux-kernel, linux-doc, Palmer Dabbelt,
	Albert Ou, Rafael J . Wysocki, Len Brown, Thomas Gleixner,
	Marc Zyngier, Daniel Lezcano, Jonathan Corbet, Anup Patel,
	Andrew Jones, Atish Patra, 'Conor Dooley ', llvm

[-- Attachment #1: Type: text/plain, Size: 12592 bytes --]

Hey Sunil,

On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> This patch series enables the basic ACPI infrastructure for RISC-V.
> Supporting external interrupt controllers is in progress and hence it is
> tested using poll based HVC SBI console and RAM disk.
> 
> The first patch in this series is one of the patch from Jisheng's
> series [1] which is not merged yet. This patch is required to support
> ACPI since efi_init() which gets called before sbi_init() can enable
> static branches and hits a panic.
> 
> Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> but a PR is raised already.
> 
> Below are two ECRs approved by ASWG.
> RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> 
> The series depends on Anup's IPI improvement series [2].
> 
> [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/

Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
Anup's IPI bits, results in a broken build, due to failings in cmpxchg:

/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
        while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
                               ^
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
/stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
/stuff/linux/include/linux/atomic/atomic-instrumented.h:1916:2: note: expanded from macro 'cmpxchg'
        arch_cmpxchg(__ai_ptr, __VA_ARGS__); \
        ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:344:23: note: expanded from macro 'arch_cmpxchg'
        (__typeof__(*(ptr))) __cmpxchg((ptr),                           \
                             ^
/stuff/linux/arch/riscv/include/asm/cmpxchg.h:335:3: note: expanded from macro '__cmpxchg'
                BUILD_BUG();                                            \
                ^
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/stuff/linux/include/linux/compiler_types.h:385:2: note: expanded from macro '_compiletime_assert'
        __compiletime_assert(condition, msg, prefix, suffix)
        ^
/stuff/linux/include/linux/compiler_types.h:378:4: note: expanded from macro '__compiletime_assert'
                        prefix ## suffix();                             \
                        ^
<scratch space>:69:1: note: expanded from here
__compiletime_assert_335
^
9 errors generated.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-03-06 21:51 ` [PATCH V3 00/20] Add basic ACPI support for RISC-V Conor Dooley
@ 2023-03-07  5:06   ` Sunil V L
  2023-03-07  6:13     ` Conor Dooley
  0 siblings, 1 reply; 10+ messages in thread
From: Sunil V L @ 2023-03-07  5:06 UTC (permalink / raw)
  To: Conor Dooley
  Cc: linux-riscv, linux-acpi, linux-kernel, linux-doc, Palmer Dabbelt,
	Albert Ou, Rafael J . Wysocki, Len Brown, Thomas Gleixner,
	Marc Zyngier, Daniel Lezcano, Jonathan Corbet, Anup Patel,
	Andrew Jones, Atish Patra, 'Conor Dooley ', llvm

On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> Hey Sunil,
> 
> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> > This patch series enables the basic ACPI infrastructure for RISC-V.
> > Supporting external interrupt controllers is in progress and hence it is
> > tested using poll based HVC SBI console and RAM disk.
> > 
> > The first patch in this series is one of the patch from Jisheng's
> > series [1] which is not merged yet. This patch is required to support
> > ACPI since efi_init() which gets called before sbi_init() can enable
> > static branches and hits a panic.
> > 
> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> > but a PR is raised already.
> > 
> > Below are two ECRs approved by ASWG.
> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> > 
> > The series depends on Anup's IPI improvement series [2].
> > 
> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> 
> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> 
> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
>                                ^
Hi Conor,

I am able to build without any of these issues using clang-15. I am
wondering whether the base is proper. I had rebased on top of the master
and couple of patches from IPI series were already merged in the master.

Do you mind verifying with my branch
https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?

Or if you could provide me your branch details, I can look further.

Thanks!
Sunil

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-03-07  5:06   ` Sunil V L
@ 2023-03-07  6:13     ` Conor Dooley
  2023-03-07 18:44       ` Conor Dooley
  0 siblings, 1 reply; 10+ messages in thread
From: Conor Dooley @ 2023-03-07  6:13 UTC (permalink / raw)
  To: Sunil V L
  Cc: linux-riscv, linux-acpi, linux-kernel, linux-doc, Palmer Dabbelt,
	Albert Ou, Rafael J . Wysocki, Len Brown, Thomas Gleixner,
	Marc Zyngier, Daniel Lezcano, Jonathan Corbet, Anup Patel,
	Andrew Jones, Atish Patra, 'Conor Dooley ', llvm



On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
>On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
>> Hey Sunil,
>> 
>> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
>> > This patch series enables the basic ACPI infrastructure for RISC-V.
>> > Supporting external interrupt controllers is in progress and hence it is
>> > tested using poll based HVC SBI console and RAM disk.
>> > 
>> > The first patch in this series is one of the patch from Jisheng's
>> > series [1] which is not merged yet. This patch is required to support
>> > ACPI since efi_init() which gets called before sbi_init() can enable
>> > static branches and hits a panic.
>> > 
>> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
>> > but a PR is raised already.
>> > 
>> > Below are two ECRs approved by ASWG.
>> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
>> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
>> > 
>> > The series depends on Anup's IPI improvement series [2].
>> > 
>> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
>> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
>> 
>> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
>> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
>> 
>> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
>>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
>>                                ^
>Hi Conor,
>
>I am able to build without any of these issues using clang-15. I am
>wondering whether the base is proper. I had rebased on top of the master
>and couple of patches from IPI series were already merged in the master.
>
>Do you mind verifying with my branch
>https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?

I can check that later I suppose.

>
>Or if you could provide me your branch details, I can look further.

6.3-rc1, with both series applied, sans Anups applied patches.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-03-07  6:13     ` Conor Dooley
@ 2023-03-07 18:44       ` Conor Dooley
  2023-03-08  1:01         ` Sunil V L
  0 siblings, 1 reply; 10+ messages in thread
From: Conor Dooley @ 2023-03-07 18:44 UTC (permalink / raw)
  To: Sunil V L
  Cc: linux-riscv, linux-acpi, linux-kernel, linux-doc, Palmer Dabbelt,
	Albert Ou, Rafael J . Wysocki, Len Brown, Thomas Gleixner,
	Marc Zyngier, Daniel Lezcano, Jonathan Corbet, Anup Patel,
	Andrew Jones, Atish Patra, 'Conor Dooley ', llvm

[-- Attachment #1: Type: text/plain, Size: 2753 bytes --]

On Tue, Mar 07, 2023 at 06:13:22AM +0000, Conor Dooley wrote:
> 
> 
> On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
> >On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> >> Hey Sunil,
> >> 
> >> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> >> > This patch series enables the basic ACPI infrastructure for RISC-V.
> >> > Supporting external interrupt controllers is in progress and hence it is
> >> > tested using poll based HVC SBI console and RAM disk.
> >> > 
> >> > The first patch in this series is one of the patch from Jisheng's
> >> > series [1] which is not merged yet. This patch is required to support
> >> > ACPI since efi_init() which gets called before sbi_init() can enable
> >> > static branches and hits a panic.
> >> > 
> >> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> >> > but a PR is raised already.
> >> > 
> >> > Below are two ECRs approved by ASWG.
> >> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> >> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> >> > 
> >> > The series depends on Anup's IPI improvement series [2].
> >> > 
> >> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> >> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> >> 
> >> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> >> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> >> 
> >> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
> >>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
> >>                                ^

> > I am able to build without any of these issues using clang-15. I am
> > wondering whether the base is proper. I had rebased on top of the master
> > and couple of patches from IPI series were already merged in the master.
> > 
> > Do you mind verifying with my branch
> > https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?
> 
> I can check that later I suppose.

That's broken too.

> > Or if you could provide me your branch details, I can look further.
> 
> 6.3-rc1, with both series applied, sans Anups applied patches.

I've pushed my stuff here, but unlikely that it makes any odds since
your branch experiences the same build issue.
https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/ borked-acpi-surface

My build commands are wrapped in a script, but it's an LLVM=1
allmodconfig run w/ clang-15(.0.7) etc.

Chees,
Conor.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-03-07 18:44       ` Conor Dooley
@ 2023-03-08  1:01         ` Sunil V L
  2023-04-04  6:35           ` Ley Foon Tan
  0 siblings, 1 reply; 10+ messages in thread
From: Sunil V L @ 2023-03-08  1:01 UTC (permalink / raw)
  To: Conor Dooley
  Cc: linux-riscv, linux-acpi, linux-kernel, linux-doc, Palmer Dabbelt,
	Albert Ou, Rafael J . Wysocki, Len Brown, Thomas Gleixner,
	Marc Zyngier, Daniel Lezcano, Jonathan Corbet, Anup Patel,
	Andrew Jones, Atish Patra, 'Conor Dooley ', llvm

On Tue, Mar 07, 2023 at 06:44:35PM +0000, Conor Dooley wrote:
> On Tue, Mar 07, 2023 at 06:13:22AM +0000, Conor Dooley wrote:
> > 
> > 
> > On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
> > >On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> > >> Hey Sunil,
> > >> 
> > >> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> > >> > This patch series enables the basic ACPI infrastructure for RISC-V.
> > >> > Supporting external interrupt controllers is in progress and hence it is
> > >> > tested using poll based HVC SBI console and RAM disk.
> > >> > 
> > >> > The first patch in this series is one of the patch from Jisheng's
> > >> > series [1] which is not merged yet. This patch is required to support
> > >> > ACPI since efi_init() which gets called before sbi_init() can enable
> > >> > static branches and hits a panic.
> > >> > 
> > >> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> > >> > but a PR is raised already.
> > >> > 
> > >> > Below are two ECRs approved by ASWG.
> > >> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> > >> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> > >> > 
> > >> > The series depends on Anup's IPI improvement series [2].
> > >> > 
> > >> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> > >> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> > >> 
> > >> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> > >> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> > >> 
> > >> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
> > >>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
> > >>                                ^
> 
> > > I am able to build without any of these issues using clang-15. I am
> > > wondering whether the base is proper. I had rebased on top of the master
> > > and couple of patches from IPI series were already merged in the master.
> > > 
> > > Do you mind verifying with my branch
> > > https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?
> > 
> > I can check that later I suppose.
> 
> That's broken too.
> 
> > > Or if you could provide me your branch details, I can look further.
> > 
> > 6.3-rc1, with both series applied, sans Anups applied patches.
> 
> I've pushed my stuff here, but unlikely that it makes any odds since
> your branch experiences the same build issue.
> https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/ borked-acpi-surface
> 
> My build commands are wrapped in a script, but it's an LLVM=1
> allmodconfig run w/ clang-15(.0.7) etc.
> 
Ahh allmodconfig. Thank you very much!. I can reproduce the failure. Let
me look further and fix in next revision.

Thanks!
Sunil

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-03-08  1:01         ` Sunil V L
@ 2023-04-04  6:35           ` Ley Foon Tan
  2023-04-04  6:54             ` Sunil V L
  0 siblings, 1 reply; 10+ messages in thread
From: Ley Foon Tan @ 2023-04-04  6:35 UTC (permalink / raw)
  To: Sunil V L
  Cc: Conor Dooley, linux-riscv, linux-acpi, Linux Kernel Mailing List,
	linux-doc, Palmer Dabbelt, Albert Ou, Rafael J . Wysocki,
	Len Brown, Thomas Gleixner, Marc Zyngier, Daniel Lezcano,
	Jonathan Corbet, Anup Patel, Andrew Jones, Atish Patra,
	Conor Dooley, llvm

On Wed, Mar 8, 2023 at 9:08 AM Sunil V L <sunilvl@ventanamicro.com> wrote:
>
> On Tue, Mar 07, 2023 at 06:44:35PM +0000, Conor Dooley wrote:
> > On Tue, Mar 07, 2023 at 06:13:22AM +0000, Conor Dooley wrote:
> > >
> > >
> > > On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
> > > >On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> > > >> Hey Sunil,
> > > >>
> > > >> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> > > >> > This patch series enables the basic ACPI infrastructure for RISC-V.
> > > >> > Supporting external interrupt controllers is in progress and hence it is
> > > >> > tested using poll based HVC SBI console and RAM disk.
> > > >> >
> > > >> > The first patch in this series is one of the patch from Jisheng's
> > > >> > series [1] which is not merged yet. This patch is required to support
> > > >> > ACPI since efi_init() which gets called before sbi_init() can enable
> > > >> > static branches and hits a panic.
> > > >> >
> > > >> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> > > >> > but a PR is raised already.
> > > >> >
> > > >> > Below are two ECRs approved by ASWG.
> > > >> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> > > >> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> > > >> >
> > > >> > The series depends on Anup's IPI improvement series [2].
> > > >> >
> > > >> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> > > >> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> > > >>
> > > >> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> > > >> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> > > >>
> > > >> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
> > > >>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
> > > >>                                ^
> >
> > > > I am able to build without any of these issues using clang-15. I am
> > > > wondering whether the base is proper. I had rebased on top of the master
> > > > and couple of patches from IPI series were already merged in the master.
> > > >
> > > > Do you mind verifying with my branch
> > > > https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?
> > >
> > > I can check that later I suppose.
> >
> > That's broken too.
> >
> > > > Or if you could provide me your branch details, I can look further.
> > >
> > > 6.3-rc1, with both series applied, sans Anups applied patches.
> >
> > I've pushed my stuff here, but unlikely that it makes any odds since
> > your branch experiences the same build issue.
> > https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/ borked-acpi-surface
> >
> > My build commands are wrapped in a script, but it's an LLVM=1
> > allmodconfig run w/ clang-15(.0.7) etc.
> >
> Ahh allmodconfig. Thank you very much!. I can reproduce the failure. Let
> me look further and fix in next revision.
>
> Thanks!
> Sunil

Hi Sunil

One question regarding PMU in ACPI flow.

We use DT to decode the supported HPM counters/events for the
different platforms now.
How do we enable PMU (drivers/perf/riscv_pmu_sbi.c) when using ACPI method?
Note, this might be in separate patch series.

Regards
Ley Foon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-04-04  6:35           ` Ley Foon Tan
@ 2023-04-04  6:54             ` Sunil V L
  2023-04-06  2:45               ` Atish Kumar Patra
  0 siblings, 1 reply; 10+ messages in thread
From: Sunil V L @ 2023-04-04  6:54 UTC (permalink / raw)
  To: Ley Foon Tan
  Cc: Conor Dooley, linux-riscv, linux-acpi, Linux Kernel Mailing List,
	linux-doc, Palmer Dabbelt, Albert Ou, Rafael J . Wysocki,
	Len Brown, Thomas Gleixner, Marc Zyngier, Daniel Lezcano,
	Jonathan Corbet, Anup Patel, Andrew Jones, Atish Patra,
	Conor Dooley, llvm

On Tue, Apr 04, 2023 at 02:35:19PM +0800, Ley Foon Tan wrote:
> On Wed, Mar 8, 2023 at 9:08 AM Sunil V L <sunilvl@ventanamicro.com> wrote:
> >
> > On Tue, Mar 07, 2023 at 06:44:35PM +0000, Conor Dooley wrote:
> > > On Tue, Mar 07, 2023 at 06:13:22AM +0000, Conor Dooley wrote:
> > > >
> > > >
> > > > On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
> > > > >On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> > > > >> Hey Sunil,
> > > > >>
> > > > >> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> > > > >> > This patch series enables the basic ACPI infrastructure for RISC-V.
> > > > >> > Supporting external interrupt controllers is in progress and hence it is
> > > > >> > tested using poll based HVC SBI console and RAM disk.
> > > > >> >
> > > > >> > The first patch in this series is one of the patch from Jisheng's
> > > > >> > series [1] which is not merged yet. This patch is required to support
> > > > >> > ACPI since efi_init() which gets called before sbi_init() can enable
> > > > >> > static branches and hits a panic.
> > > > >> >
> > > > >> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> > > > >> > but a PR is raised already.
> > > > >> >
> > > > >> > Below are two ECRs approved by ASWG.
> > > > >> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> > > > >> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> > > > >> >
> > > > >> > The series depends on Anup's IPI improvement series [2].
> > > > >> >
> > > > >> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> > > > >> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> > > > >>
> > > > >> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> > > > >> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> > > > >>
> > > > >> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
> > > > >>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
> > > > >>                                ^
> > >
> > > > > I am able to build without any of these issues using clang-15. I am
> > > > > wondering whether the base is proper. I had rebased on top of the master
> > > > > and couple of patches from IPI series were already merged in the master.
> > > > >
> > > > > Do you mind verifying with my branch
> > > > > https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?
> > > >
> > > > I can check that later I suppose.
> > >
> > > That's broken too.
> > >
> > > > > Or if you could provide me your branch details, I can look further.
> > > >
> > > > 6.3-rc1, with both series applied, sans Anups applied patches.
> > >
> > > I've pushed my stuff here, but unlikely that it makes any odds since
> > > your branch experiences the same build issue.
> > > https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/ borked-acpi-surface
> > >
> > > My build commands are wrapped in a script, but it's an LLVM=1
> > > allmodconfig run w/ clang-15(.0.7) etc.
> > >
> > Ahh allmodconfig. Thank you very much!. I can reproduce the failure. Let
> > me look further and fix in next revision.
> >
> > Thanks!
> > Sunil
> 
> Hi Sunil
> 
> One question regarding PMU in ACPI flow.
> 
> We use DT to decode the supported HPM counters/events for the
> different platforms now.
> How do we enable PMU (drivers/perf/riscv_pmu_sbi.c) when using ACPI method?
> Note, this might be in separate patch series.
> 
Hi Lay Foon,

This driver uses SBI calls and hence should work in case of ACPI also.

There is one minor change required in this driver for overflow
interrupt. I have a patch for that in future series.

Thanks,
Sunil

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-04-04  6:54             ` Sunil V L
@ 2023-04-06  2:45               ` Atish Kumar Patra
  2023-04-19  8:07                 ` Ley Foon Tan
  0 siblings, 1 reply; 10+ messages in thread
From: Atish Kumar Patra @ 2023-04-06  2:45 UTC (permalink / raw)
  To: Sunil V L
  Cc: Ley Foon Tan, Conor Dooley, linux-riscv, linux-acpi,
	Linux Kernel Mailing List, linux-doc, Palmer Dabbelt, Albert Ou,
	Rafael J . Wysocki, Len Brown, Thomas Gleixner, Marc Zyngier,
	Daniel Lezcano, Jonathan Corbet, Anup Patel, Andrew Jones,
	Conor Dooley, llvm

On Tue, Apr 4, 2023 at 12:24 PM Sunil V L <sunilvl@ventanamicro.com> wrote:
>
> On Tue, Apr 04, 2023 at 02:35:19PM +0800, Ley Foon Tan wrote:
> > On Wed, Mar 8, 2023 at 9:08 AM Sunil V L <sunilvl@ventanamicro.com> wrote:
> > >
> > > On Tue, Mar 07, 2023 at 06:44:35PM +0000, Conor Dooley wrote:
> > > > On Tue, Mar 07, 2023 at 06:13:22AM +0000, Conor Dooley wrote:
> > > > >
> > > > >
> > > > > On 7 March 2023 05:06:16 GMT, Sunil V L <sunilvl@ventanamicro.com> wrote:
> > > > > >On Mon, Mar 06, 2023 at 09:51:09PM +0000, Conor Dooley wrote:
> > > > > >> Hey Sunil,
> > > > > >>
> > > > > >> On Fri, Mar 03, 2023 at 07:06:27PM +0530, Sunil V L wrote:
> > > > > >> > This patch series enables the basic ACPI infrastructure for RISC-V.
> > > > > >> > Supporting external interrupt controllers is in progress and hence it is
> > > > > >> > tested using poll based HVC SBI console and RAM disk.
> > > > > >> >
> > > > > >> > The first patch in this series is one of the patch from Jisheng's
> > > > > >> > series [1] which is not merged yet. This patch is required to support
> > > > > >> > ACPI since efi_init() which gets called before sbi_init() can enable
> > > > > >> > static branches and hits a panic.
> > > > > >> >
> > > > > >> > Patch 2 and 3 are ACPICA patches which are not merged into acpica yet
> > > > > >> > but a PR is raised already.
> > > > > >> >
> > > > > >> > Below are two ECRs approved by ASWG.
> > > > > >> > RINTC - https://drive.google.com/file/d/1R6k4MshhN3WTT-hwqAquu5nX6xSEqK2l/view
> > > > > >> > RHCT - https://drive.google.com/file/d/1nP3nFiH4jkPMp6COOxP6123DCZKR-tia/view
> > > > > >> >
> > > > > >> > The series depends on Anup's IPI improvement series [2].
> > > > > >> >
> > > > > >> > [1] https://lore.kernel.org/all/20220821140918.3613-1-jszhang@kernel.org/
> > > > > >> > [2] https://lore.kernel.org/lkml/20230103141221.772261-7-apatel@ventanamicro.com/T/
> > > > > >>
> > > > > >> Building a clang-15 allmodconfig (I didn't try gcc) with this series, and
> > > > > >> Anup's IPI bits, results in a broken build, due to failings in cmpxchg:
> > > > > >>
> > > > > >> /stuff/linux/drivers/platform/surface/aggregator/controller.c:61:25: error: call to __compiletime_assert_335 declared with 'error' attribute: BUILD_BUG failed
> > > > > >>         while (unlikely((ret = cmpxchg(&c->value, old, new)) != old)) {
> > > > > >>                                ^
> > > >
> > > > > > I am able to build without any of these issues using clang-15. I am
> > > > > > wondering whether the base is proper. I had rebased on top of the master
> > > > > > and couple of patches from IPI series were already merged in the master.
> > > > > >
> > > > > > Do you mind verifying with my branch
> > > > > > https://github.com/vlsunil/linux/commits/acpi_b1_us_review_ipi17_V3?
> > > > >
> > > > > I can check that later I suppose.
> > > >
> > > > That's broken too.
> > > >
> > > > > > Or if you could provide me your branch details, I can look further.
> > > > >
> > > > > 6.3-rc1, with both series applied, sans Anups applied patches.
> > > >
> > > > I've pushed my stuff here, but unlikely that it makes any odds since
> > > > your branch experiences the same build issue.
> > > > https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/ borked-acpi-surface
> > > >
> > > > My build commands are wrapped in a script, but it's an LLVM=1
> > > > allmodconfig run w/ clang-15(.0.7) etc.
> > > >
> > > Ahh allmodconfig. Thank you very much!. I can reproduce the failure. Let
> > > me look further and fix in next revision.
> > >
> > > Thanks!
> > > Sunil
> >
> > Hi Sunil
> >
> > One question regarding PMU in ACPI flow.
> >
> > We use DT to decode the supported HPM counters/events for the
> > different platforms now.
> > How do we enable PMU (drivers/perf/riscv_pmu_sbi.c) when using ACPI method?
> > Note, this might be in separate patch series.
> >
> Hi Lay Foon,
>
> This driver uses SBI calls and hence should work in case of ACPI also.
>
> There is one minor change required in this driver for overflow
> interrupt. I have a patch for that in future series.

Just to add further clarification: OpenSBI will continue to use the
device tree so that
the firmware will have access to all the PMU details.

>
> Thanks,
> Sunil

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-04-06  2:45               ` Atish Kumar Patra
@ 2023-04-19  8:07                 ` Ley Foon Tan
  2023-04-19 23:34                   ` Atish Patra
  0 siblings, 1 reply; 10+ messages in thread
From: Ley Foon Tan @ 2023-04-19  8:07 UTC (permalink / raw)
  To: Atish Kumar Patra
  Cc: Sunil V L, Conor Dooley, linux-riscv, linux-acpi,
	Linux Kernel Mailing List, linux-doc, Palmer Dabbelt, Albert Ou,
	Rafael J . Wysocki, Len Brown, Thomas Gleixner, Marc Zyngier,
	Daniel Lezcano, Jonathan Corbet, Anup Patel, Andrew Jones,
	Conor Dooley, llvm

On Thu, Apr 6, 2023 at 10:45 AM Atish Kumar Patra <atishp@rivosinc.com> wrote:
>

> > >
> > > Hi Sunil
> > >
> > > One question regarding PMU in ACPI flow.
> > >
> > > We use DT to decode the supported HPM counters/events for the
> > > different platforms now.
> > > How do we enable PMU (drivers/perf/riscv_pmu_sbi.c) when using ACPI method?
> > > Note, this might be in separate patch series.
> > >
> > Hi Lay Foon,
> >
> > This driver uses SBI calls and hence should work in case of ACPI also.
> >
> > There is one minor change required in this driver for overflow
> > interrupt. I have a patch for that in future series.
>
> Just to add further clarification: OpenSBI will continue to use the
> device tree so that
> the firmware will have access to all the PMU details.
>
Sorry for the late reply, missed out on this email in my kernel.org mailbox.

Do you mean OpenSBI still using the device tree, but EDK II and Linux
using the ACPI table? Normally Linux shouldn't mix between ACPI and
device tree.

Regards
Ley Foon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH V3 00/20] Add basic ACPI support for RISC-V
  2023-04-19  8:07                 ` Ley Foon Tan
@ 2023-04-19 23:34                   ` Atish Patra
  0 siblings, 0 replies; 10+ messages in thread
From: Atish Patra @ 2023-04-19 23:34 UTC (permalink / raw)
  To: Ley Foon Tan
  Cc: Atish Kumar Patra, Anup Patel, Jonathan Corbet, Albert Ou,
	Daniel Lezcano, linux-doc, Marc Zyngier, Rafael J . Wysocki, llvm,
	Linux Kernel Mailing List, Conor Dooley, linux-acpi, Conor Dooley,
	Palmer Dabbelt, linux-riscv, Andrew Jones, Thomas Gleixner,
	Len Brown

On Wed, Apr 19, 2023 at 1:38 PM Ley Foon Tan <lftan@kernel.org> wrote:
>
> On Thu, Apr 6, 2023 at 10:45 AM Atish Kumar Patra <atishp@rivosinc.com> wrote:
> >
>
> > > >
> > > > Hi Sunil
> > > >
> > > > One question regarding PMU in ACPI flow.
> > > >
> > > > We use DT to decode the supported HPM counters/events for the
> > > > different platforms now.
> > > > How do we enable PMU (drivers/perf/riscv_pmu_sbi.c) when using ACPI method?
> > > > Note, this might be in separate patch series.
> > > >
> > > Hi Lay Foon,
> > >
> > > This driver uses SBI calls and hence should work in case of ACPI also.
> > >
> > > There is one minor change required in this driver for overflow
> > > interrupt. I have a patch for that in future series.
> >
> > Just to add further clarification: OpenSBI will continue to use the
> > device tree so that
> > the firmware will have access to all the PMU details.
> >
> Sorry for the late reply, missed out on this email in my kernel.org mailbox.
>
> Do you mean OpenSBI still using the device tree, but EDK II and Linux
> using the ACPI table? Normally Linux shouldn't mix between ACPI and

Yes. For Linux, it will only be ACPI. Otherwise, we have to define all
those bindings in ACPI as well.
In the future, we will have supervisor counter delegation ISA
extension(in progress) that allows the kernel to directly program
the hpmevents & modify counters without needing SBI PMU extension.


> device tree.
>


> Regards
> Ley Foon
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv



-- 
Regards,
Atish

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-04-19 23:34 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20230303133647.845095-1-sunilvl@ventanamicro.com>
2023-03-06 21:51 ` [PATCH V3 00/20] Add basic ACPI support for RISC-V Conor Dooley
2023-03-07  5:06   ` Sunil V L
2023-03-07  6:13     ` Conor Dooley
2023-03-07 18:44       ` Conor Dooley
2023-03-08  1:01         ` Sunil V L
2023-04-04  6:35           ` Ley Foon Tan
2023-04-04  6:54             ` Sunil V L
2023-04-06  2:45               ` Atish Kumar Patra
2023-04-19  8:07                 ` Ley Foon Tan
2023-04-19 23:34                   ` Atish Patra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox