Message ID | 1519154467-2896-2-git-send-email-jollys@xilinx.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 20/02/18 19:21, Jolly Shah wrote: > Add documentation to describe Xilinx ZynqMP firmware driver > bindings. Firmware driver provides an interface to firmware > APIs. Interface APIs can be used by any driver to communicate > to PMUFW (Platform Management Unit). > > Signed-off-by: Jolly Shah <jollys@xilinx.com> > Signed-off-by: Rajan Vaja <rajanv@xilinx.com> > --- > .../firmware/xilinx/xlnx,zynqmp-firmware.txt | 24 ++++++++++++++++++++++ > 1 file changed, 24 insertions(+) > create mode 100644 Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt > > diff --git a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt > new file mode 100644 > index 0000000..99434ba > --- /dev/null > +++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt > @@ -0,0 +1,24 @@ > +Xilinx Zynq MPSoC Firmware Device Tree Bindings > + > +The zynqmp-firmware node describes the interface to platform firmware. > +ZynqMP has an interface to communicate with secure firmware. Firmware > +driver provides an interface to firmware APIs. Interface APIs can be > +used by any driver to communicate to PMUFW(Platform Management Unit). > +These requests include clock management, pin control, device control, > +power management service, FPGA service and other platform management > +services. > + > +Required properties: > + - compatible: Must contain: "xlnx,zynqmp-firmware" > + - method: The method of calling the PM-API firmware layer. > + Permitted values are: > + - "smc" : SMC #0, following the SMCCC > + - "hvc" : HVC #0, following the SMCCC > + > +Examples: > + firmware { > + zynqmp_firmware: zynqmp-firmware { > + compatible = "xlnx,zynqmp-firmware"; > + method = "smc"; > + }; > + }; > Do you foresee using SMC/HVC for this firmware even on future platforms? If not, I suggest to keep the protocol part separate from the transport i.e. smc/hvc via ATF. It could be replaced with mailbox or some h/w mechanism in future ?
On Tue, Feb 20, 2018 at 11:21:04AM -0800, Jolly Shah wrote: > Add documentation to describe Xilinx ZynqMP firmware driver > bindings. Firmware driver provides an interface to firmware > APIs. Interface APIs can be used by any driver to communicate > to PMUFW (Platform Management Unit). > > Signed-off-by: Jolly Shah <jollys@xilinx.com> > Signed-off-by: Rajan Vaja <rajanv@xilinx.com> > --- > .../firmware/xilinx/xlnx,zynqmp-firmware.txt | 24 ++++++++++++++++++++++ > 1 file changed, 24 insertions(+) > create mode 100644 Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt Reviewed-by: Rob Herring <robh@kernel.org>
Hi Sudeep, > -----Original Message----- > From: Sudeep Holla [mailto:sudeep.holla@arm.com] > Sent: Thursday, March 01, 2018 6:15 AM > To: Jolly Shah <JOLLYS@xilinx.com>; gregkh@linuxfoundation.org; > matt@codeblueprint.co.uk; hkallweit1@gmail.com; michal.simek@xilinx.com; > robh+dt@kernel.org; mark.rutland@arm.com > Cc: ard.biesheuvel@linaro.org; mingo@kernel.org; keescook@chromium.org; > dmitry.torokhov@gmail.com; Sudeep Holla <sudeep.holla@arm.com>; Rajan > Vaja <RAJANV@xilinx.com>; linux-arm-kernel@lists.infradead.org; linux- > kernel@vger.kernel.org; devicetree@vger.kernel.org; Jolly Shah > <JOLLYS@xilinx.com> > Subject: Re: [PATCH v5 1/4] dt-bindings: firmware: Add bindings for ZynqMP > firmware > > > > On 20/02/18 19:21, Jolly Shah wrote: > > Add documentation to describe Xilinx ZynqMP firmware driver bindings. > > Firmware driver provides an interface to firmware APIs. Interface APIs > > can be used by any driver to communicate to PMUFW (Platform Management > > Unit). > > > > Signed-off-by: Jolly Shah <jollys@xilinx.com> > > Signed-off-by: Rajan Vaja <rajanv@xilinx.com> > > --- > > .../firmware/xilinx/xlnx,zynqmp-firmware.txt | 24 > ++++++++++++++++++++++ > > 1 file changed, 24 insertions(+) > > create mode 100644 > > Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware > > .txt > > > > diff --git > > a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmwa > > re.txt > > b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmwa > > re.txt > > new file mode 100644 > > index 0000000..99434ba > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-fi > > +++ rmware.txt > > @@ -0,0 +1,24 @@ > > +Xilinx Zynq MPSoC Firmware Device Tree Bindings > > + > > +The zynqmp-firmware node describes the interface to platform firmware. > > +ZynqMP has an interface to communicate with secure firmware. Firmware > > +driver provides an interface to firmware APIs. Interface APIs can be > > +used by any driver to communicate to PMUFW(Platform Management Unit). > > +These requests include clock management, pin control, device control, > > +power management service, FPGA service and other platform management > > +services. > > + > > +Required properties: > > + - compatible: Must contain: "xlnx,zynqmp-firmware" > > + - method: The method of calling the PM-API firmware layer. > > + Permitted values are: > > + - "smc" : SMC #0, following the SMCCC > > + - "hvc" : HVC #0, following the SMCCC > > + > > +Examples: > > + firmware { > > + zynqmp_firmware: zynqmp-firmware { > > + compatible = "xlnx,zynqmp-firmware"; > > + method = "smc"; > > + }; > > + }; > > > > Do you foresee using SMC/HVC for this firmware even on future platforms? > If not, I suggest to keep the protocol part separate from the transport i.e. > smc/hvc via ATF. It could be replaced with mailbox or some h/w mechanism in > future ? > We have PSCI and EEMI interfaces exposed to linux from ATF. PSCI is an EEMI client. We do not have current plans to switch to mailbox as it will require 2 communication channels to PMU as PSCI is through ATF. > -- > Regards, > Sudeep
On 07/03/18 22:25, Jolly Shah wrote: > Hi Sudeep, > [...] >>> +Examples: >>> + firmware { >>> + zynqmp_firmware: zynqmp-firmware { >>> + compatible = "xlnx,zynqmp-firmware"; >>> + method = "smc"; >>> + }; >>> + }; >>> >> >> Do you foresee using SMC/HVC for this firmware even on future platforms? >> If not, I suggest to keep the protocol part separate from the transport i.e. >> smc/hvc via ATF. It could be replaced with mailbox or some h/w mechanism in >> future ? >> > > We have PSCI and EEMI interfaces exposed to linux from ATF. PSCI is > an EEMI client. We do not have current plans to switch to mailbox as it > will require 2 communication channels to PMU as PSCI is through ATF. > OK, but I just saw some bindings that has mailbox interface, honestly it's getting too confusing with multiple series on the same thing floating and hence I requested to put it together as one series.
Hi Sudeep, > -----Original Message----- > From: Sudeep Holla [mailto:sudeep.holla@arm.com] > Sent: Thursday, March 08, 2018 3:48 AM > To: Jolly Shah <JOLLYS@xilinx.com> > Cc: gregkh@linuxfoundation.org; matt@codeblueprint.co.uk; > hkallweit1@gmail.com; michal.simek@xilinx.com; robh+dt@kernel.org; > mark.rutland@arm.com; Sudeep Holla <sudeep.holla@arm.com>; > ard.biesheuvel@linaro.org; mingo@kernel.org; keescook@chromium.org; > dmitry.torokhov@gmail.com; Rajan Vaja <RAJANV@xilinx.com>; linux-arm- > kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > devicetree@vger.kernel.org > Subject: Re: [PATCH v5 1/4] dt-bindings: firmware: Add bindings for ZynqMP > firmware > > > > On 07/03/18 22:25, Jolly Shah wrote: > > Hi Sudeep, > > > > [...] > > >>> +Examples: > >>> + firmware { > >>> + zynqmp_firmware: zynqmp-firmware { > >>> + compatible = "xlnx,zynqmp-firmware"; > >>> + method = "smc"; > >>> + }; > >>> + }; > >>> > >> > >> Do you foresee using SMC/HVC for this firmware even on future platforms? > >> If not, I suggest to keep the protocol part separate from the transport i.e. > >> smc/hvc via ATF. It could be replaced with mailbox or some h/w > >> mechanism in future ? > >> > > > > We have PSCI and EEMI interfaces exposed to linux from ATF. PSCI is an > > EEMI client. We do not have current plans to switch to mailbox as it > > will require 2 communication channels to PMU as PSCI is through ATF. > > > > OK, but I just saw some bindings that has mailbox interface, honestly it's getting > too confusing with multiple series on the same thing floating and hence I > requested to put it together as one series. Mailbox binding is used for power management driver. Mailbox is only used for PMU->APU communication. APU->PMU communication is always through EEMI firmware interface which is using SMC/HVC. > -- > Regards, > Sudeep
On 12/03/18 23:07, Jolly Shah wrote: > Hi Sudeep, >>>> Do you foresee using SMC/HVC for this firmware even on future platforms? >>>> If not, I suggest to keep the protocol part separate from the transport i.e. >>>> smc/hvc via ATF. It could be replaced with mailbox or some h/w >>>> mechanism in future ? >>>> >>> >>> We have PSCI and EEMI interfaces exposed to linux from ATF. PSCI is an >>> EEMI client. We do not have current plans to switch to mailbox as it >>> will require 2 communication channels to PMU as PSCI is through ATF. >>> >> >> OK, but I just saw some bindings that has mailbox interface, honestly it's getting >> too confusing with multiple series on the same thing floating and hence I >> requested to put it together as one series. > > Mailbox binding is used for power management driver. Mailbox is only > used for PMU->APU communication. APU->PMU communication is always > through EEMI firmware interface which is using SMC/HVC. > Ah OK, is it because there's no non-secure mailbox or to avoid races, all non-secure EEMI is channeled through SMC ?
> -----Original Message----- > From: Sudeep Holla [mailto:sudeep.holla@arm.com] > Sent: Tuesday, March 13, 2018 3:16 AM > To: Jolly Shah <JOLLYS@xilinx.com> > Cc: Sudeep Holla <sudeep.holla@arm.com>; gregkh@linuxfoundation.org; > matt@codeblueprint.co.uk; hkallweit1@gmail.com; michal.simek@xilinx.com; > robh+dt@kernel.org; mark.rutland@arm.com; ard.biesheuvel@linaro.org; > mingo@kernel.org; keescook@chromium.org; dmitry.torokhov@gmail.com; > Rajan Vaja <RAJANV@xilinx.com>; linux-arm-kernel@lists.infradead.org; linux- > kernel@vger.kernel.org; devicetree@vger.kernel.org > Subject: Re: [PATCH v5 1/4] dt-bindings: firmware: Add bindings for ZynqMP > firmware > > > > On 12/03/18 23:07, Jolly Shah wrote: > > Hi Sudeep, > > >>>> Do you foresee using SMC/HVC for this firmware even on future > platforms? > >>>> If not, I suggest to keep the protocol part separate from the transport i.e. > >>>> smc/hvc via ATF. It could be replaced with mailbox or some h/w > >>>> mechanism in future ? > >>>> > >>> > >>> We have PSCI and EEMI interfaces exposed to linux from ATF. PSCI is > >>> an EEMI client. We do not have current plans to switch to mailbox as > >>> it will require 2 communication channels to PMU as PSCI is through ATF. > >>> > >> > >> OK, but I just saw some bindings that has mailbox interface, honestly > >> it's getting too confusing with multiple series on the same thing > >> floating and hence I requested to put it together as one series. > > > > Mailbox binding is used for power management driver. Mailbox is only > > used for PMU->APU communication. APU->PMU communication is always > > through EEMI firmware interface which is using SMC/HVC. > > > > Ah OK, is it because there's no non-secure mailbox or to avoid races, all non- > secure EEMI is channeled through SMC ? > 2 reasons: 1> Avoid multiple EEMI communication channels as PSCI is through ATF. 2> We have some secure operations handled in ATF because of memory constraints on PMU > -- > Regards, > Sudeep
diff --git a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt new file mode 100644 index 0000000..99434ba --- /dev/null +++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.txt @@ -0,0 +1,24 @@ +Xilinx Zynq MPSoC Firmware Device Tree Bindings + +The zynqmp-firmware node describes the interface to platform firmware. +ZynqMP has an interface to communicate with secure firmware. Firmware +driver provides an interface to firmware APIs. Interface APIs can be +used by any driver to communicate to PMUFW(Platform Management Unit). +These requests include clock management, pin control, device control, +power management service, FPGA service and other platform management +services. + +Required properties: + - compatible: Must contain: "xlnx,zynqmp-firmware" + - method: The method of calling the PM-API firmware layer. + Permitted values are: + - "smc" : SMC #0, following the SMCCC + - "hvc" : HVC #0, following the SMCCC + +Examples: + firmware { + zynqmp_firmware: zynqmp-firmware { + compatible = "xlnx,zynqmp-firmware"; + method = "smc"; + }; + };