Thread (19 messages) 19 messages, 4 authors, 2020-02-11

RE: [PATCH 1/2] dt-bindings: arm: arm,scmi: add smc/hvc transports

From: Peng Fan <peng.fan@nxp.com>
Date: 2020-02-07 11:19:28
Also in: linux-devicetree, lkml

Subject: Re: [PATCH 1/2] dt-bindings: arm: arm,scmi: add smc/hvc transports

On Fri, Feb 07, 2020 at 10:55:44AM +0000, Peng Fan wrote:
quoted
quoted
Subject: Re: [PATCH 1/2] dt-bindings: arm: arm,scmi: add smc/hvc
transports

On Fri, Feb 07, 2020 at 10:08:36AM +0000, Marc Zyngier wrote:
quoted
On 2020-02-06 13:01, peng.fan@nxp.com wrote:
quoted
From: Peng Fan <peng.fan@nxp.com>

SCMI could use SMC/HVC as tranports, so add into devicetree
binding doc.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 Documentation/devicetree/bindings/arm/arm,scmi.txt | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/arm/arm,scmi.txt
b/Documentation/devicetree/bindings/arm/arm,scmi.txt
index f493d69e6194..03cff8b55a93 100644
--- a/Documentation/devicetree/bindings/arm/arm,scmi.txt
+++ b/Documentation/devicetree/bindings/arm/arm,scmi.txt
@@ -14,7 +14,7 @@ Required properties:

 The scmi node with the following properties shall be under the
/firmware/ node.

-- compatible : shall be "arm,scmi"
+- compatible : shall be "arm,scmi" or "arm,scmi-smc"
 - mboxes: List of phandle and mailbox channel specifiers. It
should contain
 	  exactly one or two mailboxes, one for transmitting messages("tx")
 	  and another optional for receiving the notifications("rx")
if @@
-25,6 +25,8 @@ The scmi node with the following properties shall
be under the /firmware/ node.
 	  protocol identifier for a given sub-node.
 - #size-cells : should be '0' as 'reg' property doesn't have any size
 	  associated with it.
+- arm,smc-id : SMC id required when using smc transports
+- arm,hvc-id : HVC id required when using hvc transports

 Optional properties:
Not directly related to DT: Why do we need to distinguish between
SMC and HVC?
IIUC you want just one property to get the function ID ? Does that
align with what you are saying ? I wanted to ask the same question
and I see no need for
2 different properties.
The multiple protocols might use SMC or HVC. Saying

 Protocol@x {
    method="smc";
    arm,func-id=<0x....>
 };
 Protocol@y {
    method="hvc";
    arm,func-id=<0x....>
 };
Wow, stop there. Please don't do that. You either use SMC or HVC
consistently.
Not both at the same time. Any particular reasons for trying such crazy things.
quoted
With my propose:

Protocol@x {
    arm,smc-id=<0x....>
 };
 Protocol@y {
    arm,hvc-id=<0x....>
 };

No need an extra method property to indicate it is smc or hvc.
The driver use take arm,smc-id as SMC, arm,hvc-id as HVC.
NACK, just have one function ID, I am not very particular on the name 'smc-id'
is just fine for me. But only one function ID for any conduit used and that is
chosen by PSCI/SMCCC.

If you need multiple channels(unique per protocol) then I suggest go for an
channel ID or you can even manage just with shmem associated with it (I
prefer latter but again I am fine either way)
Ok. Just follow Marc suggested
Parse the conduit from PSCI context. Then only add 'smc-id' property in scmi
node, and take protocol reg as arg1. Is this ok for you?

Thanks,
Peng.
--
Regards,
Sudeep
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help