From: Hector Martin <marcan@marcan.st>
To: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
linux-arm-kernel@lists.infradead.org
Cc: Marc Zyngier <maz@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Arnd Bergmann <arnd@kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Alyssa Rosenzweig <alyssa@rosenzweig.io>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Mark Kettenis <mark.kettenis@xs4all.nl>,
Philipp Zabel <p.zabel@pengutronix.de>,
"Rafael J. Wysocki" <rafael@kernel.org>,
devicetree@vger.kernel.org, linux-pm@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org,
linux-serial@vger.kernel.org
Subject: Re: [PATCH 2/7] dt-bindings: power: Add apple,pmgr-pwrstate binding
Date: Mon, 11 Oct 2021 13:42:30 +0900 [thread overview]
Message-ID: <60b3f115-8549-9080-774b-f2c8b98ce6d0@marcan.st> (raw)
In-Reply-To: <6e92a8d3-798a-267a-d24e-6b9ff0c3c645@canonical.com>
On 07/10/2021 22.12, Krzysztof Kozlowski wrote:
>>>> + power-domains:
>>>> + description:
>>>> + Reference to parent power domains. A domain may have multiple parents,
>>>> + and all will be powered up when it is powered.
>>>
>>> How many items?
>>
>> One or more (if there are none the property should not exist). I guess
>> that should be encoded.
>
> Probably this should not go without any constraints. Are you sure it
> could have more than one? It would mean more than one parent.
Yes, at least that is the way Apple describes it in their device tree.
As I understand it, this is basically a dependency tree of SoC blocks
that need to be powered up/clocked for a downstream device to work. In
other words, it's not just a pure clock/power tree, but also represents
blocks of logic that are shared between devices. So, for example, the
ADT has relationships like these:
SIO_BUSIF parents: (none)
SIO parents: SIO_BUSIF
PMS_BUSIF parents: (none)
PMS parents: (none)
AUDIO_P parents: SIO
SIO_ADMA parents: SIO, PMS
MCA0 parents: AUDIO_P, SIO_ADMA
That said, we know some of the data from the ADT is dodgy and doesn't
match the true hardware (see also the dependency from SIO to SIO_BUSIF
there, but not from PMS to PMS_BUSIF, which feels wrong), so as we learn
more about the real relationships between these domains we'll adjust the
devicetree to better reflect the hardware layout.
There is also the case that even if technically a downstream device
depends on two domains (directly), the existing genpd infrastructure
doesn't handle that automatically like it does the single domain case,
so it ends up making sense to just have some extra domain-domain
dependencies to keep a bunch of boilerplate manual genpd handling code
out of device drivers.
--
Hector Martin (marcan@marcan.st)
Public Key: https://mrcn.st/pub
WARNING: multiple messages have this Message-ID (diff)
From: Hector Martin <marcan@marcan.st>
To: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
linux-arm-kernel@lists.infradead.org
Cc: Marc Zyngier <maz@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Arnd Bergmann <arnd@kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Alyssa Rosenzweig <alyssa@rosenzweig.io>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Mark Kettenis <mark.kettenis@xs4all.nl>,
Philipp Zabel <p.zabel@pengutronix.de>,
"Rafael J. Wysocki" <rafael@kernel.org>,
devicetree@vger.kernel.org, linux-pm@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org,
linux-serial@vger.kernel.org
Subject: Re: [PATCH 2/7] dt-bindings: power: Add apple,pmgr-pwrstate binding
Date: Mon, 11 Oct 2021 13:42:30 +0900 [thread overview]
Message-ID: <60b3f115-8549-9080-774b-f2c8b98ce6d0@marcan.st> (raw)
In-Reply-To: <6e92a8d3-798a-267a-d24e-6b9ff0c3c645@canonical.com>
On 07/10/2021 22.12, Krzysztof Kozlowski wrote:
>>>> + power-domains:
>>>> + description:
>>>> + Reference to parent power domains. A domain may have multiple parents,
>>>> + and all will be powered up when it is powered.
>>>
>>> How many items?
>>
>> One or more (if there are none the property should not exist). I guess
>> that should be encoded.
>
> Probably this should not go without any constraints. Are you sure it
> could have more than one? It would mean more than one parent.
Yes, at least that is the way Apple describes it in their device tree.
As I understand it, this is basically a dependency tree of SoC blocks
that need to be powered up/clocked for a downstream device to work. In
other words, it's not just a pure clock/power tree, but also represents
blocks of logic that are shared between devices. So, for example, the
ADT has relationships like these:
SIO_BUSIF parents: (none)
SIO parents: SIO_BUSIF
PMS_BUSIF parents: (none)
PMS parents: (none)
AUDIO_P parents: SIO
SIO_ADMA parents: SIO, PMS
MCA0 parents: AUDIO_P, SIO_ADMA
That said, we know some of the data from the ADT is dodgy and doesn't
match the true hardware (see also the dependency from SIO to SIO_BUSIF
there, but not from PMS to PMS_BUSIF, which feels wrong), so as we learn
more about the real relationships between these domains we'll adjust the
devicetree to better reflect the hardware layout.
There is also the case that even if technically a downstream device
depends on two domains (directly), the existing genpd infrastructure
doesn't handle that automatically like it does the single domain case,
so it ends up making sense to just have some extra domain-domain
dependencies to keep a bunch of boilerplate manual genpd handling code
out of device drivers.
--
Hector Martin (marcan@marcan.st)
Public Key: https://mrcn.st/pub
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-10-11 4:42 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-05 15:59 [PATCH 0/7] Apple SoC PMGR device power states driver Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 15:59 ` [PATCH 1/7] dt-bindings: arm: apple: Add apple,pmgr binding Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 20:09 ` Mark Kettenis
2021-10-05 20:09 ` Mark Kettenis
2021-10-05 22:45 ` Rob Herring
2021-10-05 22:45 ` Rob Herring
2021-10-06 15:17 ` Hector Martin
2021-10-06 15:17 ` Hector Martin
2021-10-06 6:56 ` Krzysztof Kozlowski
2021-10-06 6:56 ` Krzysztof Kozlowski
2021-10-06 7:30 ` Krzysztof Kozlowski
2021-10-06 7:30 ` Krzysztof Kozlowski
2021-10-06 15:21 ` Hector Martin
2021-10-06 15:21 ` Hector Martin
2021-10-06 15:26 ` Hector Martin
2021-10-06 15:26 ` Hector Martin
2021-10-07 13:10 ` Krzysztof Kozlowski
2021-10-07 13:10 ` Krzysztof Kozlowski
2021-10-05 15:59 ` [PATCH 2/7] dt-bindings: power: Add apple,pmgr-pwrstate binding Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 20:16 ` Mark Kettenis
2021-10-05 20:16 ` Mark Kettenis
2021-10-06 15:27 ` Hector Martin
2021-10-06 15:27 ` Hector Martin
2021-10-06 0:58 ` Rob Herring
2021-10-06 0:58 ` Rob Herring
2021-10-06 15:52 ` Hector Martin
2021-10-06 15:52 ` Hector Martin
2021-10-06 15:55 ` Hector Martin
2021-10-06 15:55 ` Hector Martin
2021-10-08 7:50 ` Krzysztof Kozlowski
2021-10-08 7:50 ` Krzysztof Kozlowski
2021-10-11 5:17 ` Hector Martin
2021-10-11 5:17 ` Hector Martin
2021-10-06 7:05 ` Krzysztof Kozlowski
2021-10-06 7:05 ` Krzysztof Kozlowski
2021-10-06 15:59 ` Hector Martin
2021-10-06 15:59 ` Hector Martin
2021-10-07 13:12 ` Krzysztof Kozlowski
2021-10-07 13:12 ` Krzysztof Kozlowski
2021-10-11 4:42 ` Hector Martin [this message]
2021-10-11 4:42 ` Hector Martin
2021-10-05 15:59 ` [PATCH 3/7] soc: apple: Add driver for Apple PMGR power state controls Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 16:08 ` Linus Walleij
2021-10-05 16:08 ` Linus Walleij
2021-10-05 16:15 ` Hector Martin
2021-10-05 16:15 ` Hector Martin
2021-10-05 19:49 ` Linus Walleij
2021-10-05 19:49 ` Linus Walleij
2021-10-05 20:21 ` Mark Kettenis
2021-10-05 20:21 ` Mark Kettenis
2021-10-06 16:00 ` Hector Martin
2021-10-06 16:00 ` Hector Martin
2021-10-06 7:28 ` Krzysztof Kozlowski
2021-10-06 7:28 ` Krzysztof Kozlowski
2021-10-06 16:08 ` Hector Martin
2021-10-06 16:08 ` Hector Martin
2021-10-06 9:24 ` Philipp Zabel
2021-10-06 9:24 ` Philipp Zabel
2021-10-06 16:11 ` Hector Martin
2021-10-06 16:11 ` Hector Martin
2021-10-05 15:59 ` [PATCH 4/7] arm64: dts: apple: t8103: Rename clk24 to clkref Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 20:22 ` Mark Kettenis
2021-10-05 20:22 ` Mark Kettenis
2021-10-05 15:59 ` [PATCH 5/7] arm64: dts: apple: t8103: Add the UART PMGR tree Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 20:25 ` Mark Kettenis
2021-10-05 20:25 ` Mark Kettenis
2021-10-05 15:59 ` [PATCH 6/7] tty: serial: samsung_tty: Support runtime PM Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-06 7:43 ` Krzysztof Kozlowski
2021-10-06 7:43 ` Krzysztof Kozlowski
2021-10-06 13:25 ` Rafael J. Wysocki
2021-10-06 13:25 ` Rafael J. Wysocki
2021-10-06 13:29 ` Krzysztof Kozlowski
2021-10-06 13:29 ` Krzysztof Kozlowski
2021-10-11 5:32 ` Hector Martin
2021-10-11 5:32 ` Hector Martin
2021-10-11 6:48 ` Krzysztof Kozlowski
2021-10-11 6:48 ` Krzysztof Kozlowski
2021-10-11 8:27 ` Johan Hovold
2021-10-11 8:27 ` Johan Hovold
2021-10-05 15:59 ` [PATCH 7/7] arm64: dts: apple: t8103: Add UART2 Hector Martin
2021-10-05 15:59 ` Hector Martin
2021-10-05 20:26 ` Mark Kettenis
2021-10-05 20:26 ` Mark Kettenis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=60b3f115-8549-9080-774b-f2c8b98ce6d0@marcan.st \
--to=marcan@marcan.st \
--cc=alyssa@rosenzweig.io \
--cc=arnd@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=krzysztof.kozlowski@canonical.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=mark.kettenis@xs4all.nl \
--cc=maz@kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=rafael@kernel.org \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.