Message ID | 20241212-b4-acpm-v4-upstream-dts-v2-3-91b7a6f6d0b0@linaro.org |
---|---|
State | New |
Headers | show |
Series | arm64: exynos: gs101: add ACPM related nodes | expand |
Hi Tudor, On 12/12/2024, Tudor Ambarus wrote: > Add the ACPM protocol node. ACPM protocol provides interface for all > the client drivers making use of the features offered by the > Active Power Management (APM) module. > > Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org> > --- > arch/arm64/boot/dts/exynos/google/gs101.dtsi | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/arch/arm64/boot/dts/exynos/google/gs101.dtsi b/arch/arm64/boot/dts/exynos/google/gs101.dtsi > index 04561e15b96c..8c3f07371912 100644 > --- a/arch/arm64/boot/dts/exynos/google/gs101.dtsi > +++ b/arch/arm64/boot/dts/exynos/google/gs101.dtsi > @@ -277,6 +277,28 @@ apm_sram: sram@2039000 { > ranges = <0x0 0x0 0x2039000 0x40000>; > }; > > + firmware { > + acpm_ipc: power-management { > + compatible = "google,gs101-acpm-ipc"; > + mboxes = <&ap2apm_mailbox 0 0 > + &ap2apm_mailbox 0 1 > + &ap2apm_mailbox 0 2 > + &ap2apm_mailbox 0 3 > + &ap2apm_mailbox 0 4 > + &ap2apm_mailbox 0 5 > + &ap2apm_mailbox 0 6 > + &ap2apm_mailbox 0 7 > + &ap2apm_mailbox 0 8 > + &ap2apm_mailbox 0 9 > + &ap2apm_mailbox 0 10 > + &ap2apm_mailbox 0 11 > + &ap2apm_mailbox 0 12 > + &ap2apm_mailbox 0 13 > + &ap2apm_mailbox 0 14>; > + shmem = <&apm_sram>; > + }; > + }; You mentioned in the previous patch that "GS101 has 14 mailbox controllers", but here you have 15 mailboxes. I looked at the downstream driver and see the number of mailboxes is defined by the ACPM framework (firmware) which is read from SRAM initdata. Dumping that, I see there are 15 ACPM channels. Have you looked into into extracting the data from the initdata SRAM address? Thanks, Will
On 12/16/24 6:54 PM, William McVicker wrote: > Hi Tudor, Hi, William! > > On 12/12/2024, Tudor Ambarus wrote: >> Add the ACPM protocol node. ACPM protocol provides interface for all >> the client drivers making use of the features offered by the >> Active Power Management (APM) module. >> >> Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org> >> --- >> arch/arm64/boot/dts/exynos/google/gs101.dtsi | 22 ++++++++++++++++++++++ >> 1 file changed, 22 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/exynos/google/gs101.dtsi b/arch/arm64/boot/dts/exynos/google/gs101.dtsi >> index 04561e15b96c..8c3f07371912 100644 >> --- a/arch/arm64/boot/dts/exynos/google/gs101.dtsi >> +++ b/arch/arm64/boot/dts/exynos/google/gs101.dtsi >> @@ -277,6 +277,28 @@ apm_sram: sram@2039000 { >> ranges = <0x0 0x0 0x2039000 0x40000>; >> }; >> >> + firmware { >> + acpm_ipc: power-management { >> + compatible = "google,gs101-acpm-ipc"; >> + mboxes = <&ap2apm_mailbox 0 0 >> + &ap2apm_mailbox 0 1 >> + &ap2apm_mailbox 0 2 >> + &ap2apm_mailbox 0 3 >> + &ap2apm_mailbox 0 4 >> + &ap2apm_mailbox 0 5 >> + &ap2apm_mailbox 0 6 >> + &ap2apm_mailbox 0 7 >> + &ap2apm_mailbox 0 8 >> + &ap2apm_mailbox 0 9 >> + &ap2apm_mailbox 0 10 >> + &ap2apm_mailbox 0 11 >> + &ap2apm_mailbox 0 12 >> + &ap2apm_mailbox 0 13 >> + &ap2apm_mailbox 0 14>; >> + shmem = <&apm_sram>; >> + }; >> + }; > > You mentioned in the previous patch that "GS101 has 14 mailbox controllers", Right, I got the number from the GS101 memory map. > but here you have 15 mailboxes. I looked at the downstream driver and see the Here we have a single mailbox controller, ap2apm_mailbox, with 15 channels. > number of mailboxes is defined by the ACPM framework (firmware) which is read s/mailboxes/mailbox channels that ACPM uses/ > from SRAM initdata. Dumping that, I see there are 15 ACPM channels. Have you Correct. > looked into into extracting the data from the initdata SRAM address? > Yes, that's the reason why I defined the 15 channels from above for the ap2apm_mailbox controller. Cheers, ta
On 12/17/24 7:20 AM, Tudor Ambarus wrote: > > > On 12/16/24 6:54 PM, William McVicker wrote: >> Hi Tudor, > > Hi, William! > >> >> On 12/12/2024, Tudor Ambarus wrote: >>> Add the ACPM protocol node. ACPM protocol provides interface for all >>> the client drivers making use of the features offered by the >>> Active Power Management (APM) module. >>> >>> Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org> >>> --- >>> arch/arm64/boot/dts/exynos/google/gs101.dtsi | 22 ++++++++++++++++++++++ >>> 1 file changed, 22 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/exynos/google/gs101.dtsi b/arch/arm64/boot/dts/exynos/google/gs101.dtsi >>> index 04561e15b96c..8c3f07371912 100644 >>> --- a/arch/arm64/boot/dts/exynos/google/gs101.dtsi >>> +++ b/arch/arm64/boot/dts/exynos/google/gs101.dtsi >>> @@ -277,6 +277,28 @@ apm_sram: sram@2039000 { >>> ranges = <0x0 0x0 0x2039000 0x40000>; >>> }; >>> >>> + firmware { >>> + acpm_ipc: power-management { >>> + compatible = "google,gs101-acpm-ipc"; >>> + mboxes = <&ap2apm_mailbox 0 0 >>> + &ap2apm_mailbox 0 1 >>> + &ap2apm_mailbox 0 2 >>> + &ap2apm_mailbox 0 3 >>> + &ap2apm_mailbox 0 4 >>> + &ap2apm_mailbox 0 5 >>> + &ap2apm_mailbox 0 6 >>> + &ap2apm_mailbox 0 7 >>> + &ap2apm_mailbox 0 8 >>> + &ap2apm_mailbox 0 9 >>> + &ap2apm_mailbox 0 10 >>> + &ap2apm_mailbox 0 11 >>> + &ap2apm_mailbox 0 12 >>> + &ap2apm_mailbox 0 13 >>> + &ap2apm_mailbox 0 14>; >>> + shmem = <&apm_sram>; >>> + }; >>> + }; >> >> You mentioned in the previous patch that "GS101 has 14 mailbox controllers", > > Right, I got the number from the GS101 memory map. > >> but here you have 15 mailboxes. I looked at the downstream driver and see the > > Here we have a single mailbox controller, ap2apm_mailbox, with 15 channels. > >> number of mailboxes is defined by the ACPM framework (firmware) which is read > > s/mailboxes/mailbox channels that ACPM uses/ > >> from SRAM initdata. Dumping that, I see there are 15 ACPM channels. Have you > > Correct. > >> looked into into extracting the data from the initdata SRAM address? >> > > Yes, that's the reason why I defined the 15 channels from above for the > ap2apm_mailbox controller. > Haven't explicitly mentioned in the commit message: the ACPM protocol is a mailbox client for the ap2apm_mailbox controller. The ACPM protocol uses 15 mailbox channels of a total of 16 channels that ap2apm_mailbox controller provides. Let me know if you think I shall update the commit message. Thanks, ta
diff --git a/arch/arm64/boot/dts/exynos/google/gs101.dtsi b/arch/arm64/boot/dts/exynos/google/gs101.dtsi index 04561e15b96c..8c3f07371912 100644 --- a/arch/arm64/boot/dts/exynos/google/gs101.dtsi +++ b/arch/arm64/boot/dts/exynos/google/gs101.dtsi @@ -277,6 +277,28 @@ apm_sram: sram@2039000 { ranges = <0x0 0x0 0x2039000 0x40000>; }; + firmware { + acpm_ipc: power-management { + compatible = "google,gs101-acpm-ipc"; + mboxes = <&ap2apm_mailbox 0 0 + &ap2apm_mailbox 0 1 + &ap2apm_mailbox 0 2 + &ap2apm_mailbox 0 3 + &ap2apm_mailbox 0 4 + &ap2apm_mailbox 0 5 + &ap2apm_mailbox 0 6 + &ap2apm_mailbox 0 7 + &ap2apm_mailbox 0 8 + &ap2apm_mailbox 0 9 + &ap2apm_mailbox 0 10 + &ap2apm_mailbox 0 11 + &ap2apm_mailbox 0 12 + &ap2apm_mailbox 0 13 + &ap2apm_mailbox 0 14>; + shmem = <&apm_sram>; + }; + }; + soc: soc@0 { compatible = "simple-bus"; #address-cells = <1>;
Add the ACPM protocol node. ACPM protocol provides interface for all the client drivers making use of the features offered by the Active Power Management (APM) module. Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org> --- arch/arm64/boot/dts/exynos/google/gs101.dtsi | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+)