* [PATCH 0/3] arm64 xilinx zynqmp firmware interface @ 2017-08-04 13:45 Michal Simek 2017-08-04 13:45 ` [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware Michal Simek ` (2 more replies) 0 siblings, 3 replies; 11+ messages in thread From: Michal Simek @ 2017-08-04 13:45 UTC (permalink / raw) To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r Cc: Punnaiah Choudary Kalluri, Baoyou Xie, Bharat Kumar Gogada, Lucas Stach, Rob Herring, Nicolas Ferre, Catalin Marinas, Geert Uytterhoeven, yangbo lu, Sören Brinkmann, Alexandre Belloni, Krzysztof Kozlowski, Will Deacon, devicetree-u79uwXL29TY76Z2rM5mHXA, Alexander Graf, Andreas Färber, Moritz Fischer, Michal Simek Hi, xilinx is using this interface for very long time and we can't merge our driver changes to Linux because of missing communication layer with firmware. This interface was developed before scpi and scmi was available. In connection to power management scpi and scmi are missing pieces which we already use. There is a separate discussion how to extend scmi to support all our use cases. This simply patch is not adding any power management features but only adding minimum functionality which are needed for drivers. Thanks, Michal Michal Simek (1): soc: xilinx: zynqmp: Add firmware interface Soren Brinkmann (2): dt: xilinx: zynqmp: Add bindings for PM firmware arm64: zynqmp: dt: Add PM firmware node .../bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 + arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 7 + drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/xilinx/Kconfig | 6 + drivers/soc/xilinx/zynqmp/Makefile | 1 + drivers/soc/xilinx/zynqmp/firmware.c | 419 +++++++++++++++++++++ include/linux/soc/xilinx/zynqmp/firmware.h | 246 ++++++++++++ 8 files changed, 700 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt create mode 100644 drivers/soc/xilinx/Kconfig create mode 100644 drivers/soc/xilinx/zynqmp/Makefile create mode 100644 drivers/soc/xilinx/zynqmp/firmware.c create mode 100644 include/linux/soc/xilinx/zynqmp/firmware.h -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware 2017-08-04 13:45 [PATCH 0/3] arm64 xilinx zynqmp firmware interface Michal Simek @ 2017-08-04 13:45 ` Michal Simek [not found] ` <8c27b7eec6cc00d37dfe9b3998212ce9c9c27a31.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2017-08-04 13:45 ` [PATCH 2/3] arm64: zynqmp: dt: Add PM firmware node Michal Simek [not found] ` <cover.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2 siblings, 1 reply; 11+ messages in thread From: Michal Simek @ 2017-08-04 13:45 UTC (permalink / raw) To: linux-arm-kernel Cc: Mark Rutland, devicetree, monstr, linux-kernel, Rob Herring, Soren Brinkmann From: Soren Brinkmann <soren.brinkmann@xilinx.com> Document the DT bindings for the Zynq UltraScale+ PM Firmware. Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> --- .../devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt new file mode 100644 index 000000000000..222a18ce07fc --- /dev/null +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt @@ -0,0 +1,19 @@ +Xilinx Zynq MPSoC Firmware Device Tree Bindings + +The zynqmp-pm node describes the interface to platform firmware. + +Required properties: + - compatible: Must contain: "xlnx,zynqmp-pm" + - method: The method of calling the PM-API firmware layer. + Permitted values are: + - "smc" : To be used in configurations without a hypervisor + - "hvc" : To be used when hypervisor is present + - interrupts: Interrupt specifier + +Examples: + zynqmp-firmware { + compatible = "xlnx,zynqmp-pm"; + method = "smc"; + interrupt-parent = <&gic>; + interrupts = <0 35 4>; + }; -- 1.9.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
[parent not found: <8c27b7eec6cc00d37dfe9b3998212ce9c9c27a31.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>]
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware [not found] ` <8c27b7eec6cc00d37dfe9b3998212ce9c9c27a31.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> @ 2017-08-10 19:10 ` Rob Herring 2017-08-11 12:58 ` Michal Simek 0 siblings, 1 reply; 11+ messages in thread From: Rob Herring @ 2017-08-10 19:10 UTC (permalink / raw) To: Michal Simek Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Soren Brinkmann, devicetree-u79uwXL29TY76Z2rM5mHXA, monstr-pSz03upnqPeHXe+LvDLADg, linux-kernel-u79uwXL29TY76Z2rM5mHXA, Mark Rutland On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: > From: Soren Brinkmann <soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > > Document the DT bindings for the Zynq UltraScale+ PM Firmware. > > Signed-off-by: Soren Brinkmann <soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > Signed-off-by: Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > --- > > .../devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 +++++++++++++++++++ bindings/firmware/ > 1 file changed, 19 insertions(+) > create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > > diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > new file mode 100644 > index 000000000000..222a18ce07fc > --- /dev/null > +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > @@ -0,0 +1,19 @@ > +Xilinx Zynq MPSoC Firmware Device Tree Bindings > + > +The zynqmp-pm node describes the interface to platform firmware. Please define this should be under /firmware node. > +Required properties: > + - compatible: Must contain: "xlnx,zynqmp-pm" > + - method: The method of calling the PM-API firmware layer. > + Permitted values are: > + - "smc" : To be used in configurations without a hypervisor > + - "hvc" : To be used when hypervisor is present Do you really use both? > + - interrupts: Interrupt specifier > + > +Examples: > + zynqmp-firmware { > + compatible = "xlnx,zynqmp-pm"; > + method = "smc"; > + interrupt-parent = <&gic>; > + interrupts = <0 35 4>; > + }; > -- > 1.9.1 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware 2017-08-10 19:10 ` Rob Herring @ 2017-08-11 12:58 ` Michal Simek [not found] ` <4e5d9f8c-9e87-bdcd-388a-aab3c32415e8-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 0 siblings, 1 reply; 11+ messages in thread From: Michal Simek @ 2017-08-11 12:58 UTC (permalink / raw) To: Rob Herring, Michal Simek, Edgar Iglesias Cc: linux-arm-kernel, Soren Brinkmann, devicetree, monstr, linux-kernel, Mark Rutland Hi Rob, +Edgar, On 10.8.2017 21:10, Rob Herring wrote: > On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: >> From: Soren Brinkmann <soren.brinkmann@xilinx.com> >> >> Document the DT bindings for the Zynq UltraScale+ PM Firmware. >> >> Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com> >> Signed-off-by: Michal Simek <michal.simek@xilinx.com> >> --- >> >> .../devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 +++++++++++++++++++ > > bindings/firmware/ will move. > >> 1 file changed, 19 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >> >> diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >> new file mode 100644 >> index 000000000000..222a18ce07fc >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >> @@ -0,0 +1,19 @@ >> +Xilinx Zynq MPSoC Firmware Device Tree Bindings >> + >> +The zynqmp-pm node describes the interface to platform firmware. > > Please define this should be under /firmware node. > >> +Required properties: >> + - compatible: Must contain: "xlnx,zynqmp-pm" >> + - method: The method of calling the PM-API firmware layer. >> + Permitted values are: >> + - "smc" : To be used in configurations without a hypervisor >> + - "hvc" : To be used when hypervisor is present > > Do you really use both? > SMCs definitely yes. Interface was designed in that way and I don't know if people are using it or not. Not sure if Xen is blocking SMCs. I know we have discussed it but not sure if this is enabled by default or only for certain configurations. Also not sure if xen contains handler for hvc. Edgar: Do you know? Thanks, Michal ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <4e5d9f8c-9e87-bdcd-388a-aab3c32415e8-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>]
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware [not found] ` <4e5d9f8c-9e87-bdcd-388a-aab3c32415e8-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> @ 2017-08-11 13:54 ` Edgar E. Iglesias 2017-08-14 13:47 ` Michal Simek 0 siblings, 1 reply; 11+ messages in thread From: Edgar E. Iglesias @ 2017-08-11 13:54 UTC (permalink / raw) To: Michal Simek Cc: Rob Herring, Edgar Iglesias, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Soren Brinkmann, devicetree-u79uwXL29TY76Z2rM5mHXA, monstr-pSz03upnqPeHXe+LvDLADg, linux-kernel-u79uwXL29TY76Z2rM5mHXA, Mark Rutland On Fri, Aug 11, 2017 at 02:58:03PM +0200, Michal Simek wrote: > Hi Rob, +Edgar, > > On 10.8.2017 21:10, Rob Herring wrote: > > On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: > >> From: Soren Brinkmann <soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > >> > >> Document the DT bindings for the Zynq UltraScale+ PM Firmware. > >> > >> Signed-off-by: Soren Brinkmann <soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > >> Signed-off-by: Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> > >> --- > >> > >> .../devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 +++++++++++++++++++ > > > > bindings/firmware/ > > will move. > > > > >> 1 file changed, 19 insertions(+) > >> create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > >> > >> diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > >> new file mode 100644 > >> index 000000000000..222a18ce07fc > >> --- /dev/null > >> +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > >> @@ -0,0 +1,19 @@ > >> +Xilinx Zynq MPSoC Firmware Device Tree Bindings > >> + > >> +The zynqmp-pm node describes the interface to platform firmware. > > > > Please define this should be under /firmware node. > > > >> +Required properties: > >> + - compatible: Must contain: "xlnx,zynqmp-pm" > >> + - method: The method of calling the PM-API firmware layer. > >> + Permitted values are: > >> + - "smc" : To be used in configurations without a hypervisor > >> + - "hvc" : To be used when hypervisor is present > > > > Do you really use both? > > > > SMCs definitely yes. > > Interface was designed in that way and I don't know if people are using > it or not. > > Not sure if Xen is blocking SMCs. I know we have discussed it but not > sure if this is enabled by default or only for certain configurations. > Also not sure if xen contains handler for hvc. > Edgar: Do you know? We have patches for Xen that implement a power-management mediator. That implementation handles PM calls over both SMC and HVC insns. Patches are on the Xen mailing list. Other hypervisors may work differently. I think we should support both but I don't have a strong opinion on it. Cheers, Edgar -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware 2017-08-11 13:54 ` Edgar E. Iglesias @ 2017-08-14 13:47 ` Michal Simek 2017-08-14 14:03 ` Rob Herring 0 siblings, 1 reply; 11+ messages in thread From: Michal Simek @ 2017-08-14 13:47 UTC (permalink / raw) To: Edgar E. Iglesias, Michal Simek Cc: Rob Herring, Edgar Iglesias, linux-arm-kernel, Soren Brinkmann, devicetree, monstr, linux-kernel, Mark Rutland On 11.8.2017 15:54, Edgar E. Iglesias wrote: > On Fri, Aug 11, 2017 at 02:58:03PM +0200, Michal Simek wrote: >> Hi Rob, +Edgar, >> >> On 10.8.2017 21:10, Rob Herring wrote: >>> On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: >>>> From: Soren Brinkmann <soren.brinkmann@xilinx.com> >>>> >>>> Document the DT bindings for the Zynq UltraScale+ PM Firmware. >>>> >>>> Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com> >>>> Signed-off-by: Michal Simek <michal.simek@xilinx.com> >>>> --- >>>> >>>> .../devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 +++++++++++++++++++ >>> >>> bindings/firmware/ >> >> will move. >> >>> >>>> 1 file changed, 19 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >>>> >>>> diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >>>> new file mode 100644 >>>> index 000000000000..222a18ce07fc >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt >>>> @@ -0,0 +1,19 @@ >>>> +Xilinx Zynq MPSoC Firmware Device Tree Bindings >>>> + >>>> +The zynqmp-pm node describes the interface to platform firmware. >>> >>> Please define this should be under /firmware node. >>> >>>> +Required properties: >>>> + - compatible: Must contain: "xlnx,zynqmp-pm" >>>> + - method: The method of calling the PM-API firmware layer. >>>> + Permitted values are: >>>> + - "smc" : To be used in configurations without a hypervisor >>>> + - "hvc" : To be used when hypervisor is present >>> >>> Do you really use both? >>> >> >> SMCs definitely yes. >> >> Interface was designed in that way and I don't know if people are using >> it or not. >> >> Not sure if Xen is blocking SMCs. I know we have discussed it but not >> sure if this is enabled by default or only for certain configurations. >> Also not sure if xen contains handler for hvc. >> Edgar: Do you know? > > We have patches for Xen that implement a power-management mediator. > That implementation handles PM calls over both SMC and HVC insns. > Patches are on the Xen mailing list. > > Other hypervisors may work differently. > > I think we should support both but I don't have a strong opinion on it. Rob: Are you ok with having it there? Thanks, Michal ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware 2017-08-14 13:47 ` Michal Simek @ 2017-08-14 14:03 ` Rob Herring [not found] ` <CABGGiszb1kr8ggo8Jv9jsvStK5DxpseuBy7z=_OK8pLN==h25Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 11+ messages in thread From: Rob Herring @ 2017-08-14 14:03 UTC (permalink / raw) To: Michal Simek Cc: Edgar E. Iglesias, Rob Herring, Edgar Iglesias, linux-arm-kernel, Soren Brinkmann, devicetree@vger.kernel.org, monstr, Linux Kernel Mailing List, Mark Rutland On Mon, Aug 14, 2017 at 8:47 AM, Michal Simek <michal.simek@xilinx.com> wrote: > On 11.8.2017 15:54, Edgar E. Iglesias wrote: >> On Fri, Aug 11, 2017 at 02:58:03PM +0200, Michal Simek wrote: >>> Hi Rob, +Edgar, >>> >>> On 10.8.2017 21:10, Rob Herring wrote: >>>> On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: >>>>> From: Soren Brinkmann <soren.brinkmann@xilinx.com> >>>>> >>>>> Document the DT bindings for the Zynq UltraScale+ PM Firmware. [...] >>>>> + - method: The method of calling the PM-API firmware layer. >>>>> + Permitted values are: >>>>> + - "smc" : To be used in configurations without a hypervisor >>>>> + - "hvc" : To be used when hypervisor is present >>>> >>>> Do you really use both? >>>> >>> >>> SMCs definitely yes. >>> >>> Interface was designed in that way and I don't know if people are using >>> it or not. >>> >>> Not sure if Xen is blocking SMCs. I know we have discussed it but not >>> sure if this is enabled by default or only for certain configurations. >>> Also not sure if xen contains handler for hvc. >>> Edgar: Do you know? >> >> We have patches for Xen that implement a power-management mediator. >> That implementation handles PM calls over both SMC and HVC insns. >> Patches are on the Xen mailing list. >> >> Other hypervisors may work differently. >> >> I think we should support both but I don't have a strong opinion on it. > > Rob: Are you ok with having it there? Yes. Rob ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <CABGGiszb1kr8ggo8Jv9jsvStK5DxpseuBy7z=_OK8pLN==h25Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware [not found] ` <CABGGiszb1kr8ggo8Jv9jsvStK5DxpseuBy7z=_OK8pLN==h25Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2017-08-14 14:35 ` Michal Simek 0 siblings, 0 replies; 11+ messages in thread From: Michal Simek @ 2017-08-14 14:35 UTC (permalink / raw) To: Rob Herring, Michal Simek Cc: Edgar E. Iglesias, Edgar Iglesias, linux-arm-kernel, Soren Brinkmann, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, monstr-pSz03upnqPeHXe+LvDLADg, Linux Kernel Mailing List, Mark Rutland On 14.8.2017 16:03, Rob Herring wrote: > On Mon, Aug 14, 2017 at 8:47 AM, Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> wrote: >> On 11.8.2017 15:54, Edgar E. Iglesias wrote: >>> On Fri, Aug 11, 2017 at 02:58:03PM +0200, Michal Simek wrote: >>>> Hi Rob, +Edgar, >>>> >>>> On 10.8.2017 21:10, Rob Herring wrote: >>>>> On Fri, Aug 04, 2017 at 03:45:30PM +0200, Michal Simek wrote: >>>>>> From: Soren Brinkmann <soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> >>>>>> >>>>>> Document the DT bindings for the Zynq UltraScale+ PM Firmware. > > [...] > >>>>>> + - method: The method of calling the PM-API firmware layer. >>>>>> + Permitted values are: >>>>>> + - "smc" : To be used in configurations without a hypervisor >>>>>> + - "hvc" : To be used when hypervisor is present >>>>> >>>>> Do you really use both? >>>>> >>>> >>>> SMCs definitely yes. >>>> >>>> Interface was designed in that way and I don't know if people are using >>>> it or not. >>>> >>>> Not sure if Xen is blocking SMCs. I know we have discussed it but not >>>> sure if this is enabled by default or only for certain configurations. >>>> Also not sure if xen contains handler for hvc. >>>> Edgar: Do you know? >>> >>> We have patches for Xen that implement a power-management mediator. >>> That implementation handles PM calls over both SMC and HVC insns. >>> Patches are on the Xen mailing list. >>> >>> Other hypervisors may work differently. >>> >>> I think we should support both but I don't have a strong opinion on it. >> >> Rob: Are you ok with having it there? > > Yes. Ok. Let me send v2 then. Thanks, Michal -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 2/3] arm64: zynqmp: dt: Add PM firmware node 2017-08-04 13:45 [PATCH 0/3] arm64 xilinx zynqmp firmware interface Michal Simek 2017-08-04 13:45 ` [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware Michal Simek @ 2017-08-04 13:45 ` Michal Simek [not found] ` <cover.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2 siblings, 0 replies; 11+ messages in thread From: Michal Simek @ 2017-08-04 13:45 UTC (permalink / raw) To: linux-arm-kernel Cc: Soren Brinkmann, devicetree, monstr, Alexander Graf, Punnaiah Choudary Kalluri, Bharat Kumar Gogada, linux-kernel, Marc Zyngier, Moritz Fischer, Rob Herring, Krzysztof Kozlowski, Will Deacon, Catalin Marinas, Mark Rutland From: Soren Brinkmann <soren.brinkmann@xilinx.com> Add node for the power management firmware. Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> --- arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi index 54dc28351c8c..cc612c178d60 100644 --- a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi +++ b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi @@ -63,6 +63,13 @@ method = "smc"; }; + pmufw: firmware { + compatible = "xlnx,zynqmp-pm"; + method = "smc"; + interrupt-parent = <&gic>; + interrupts = <0 35 4>; + }; + timer { compatible = "arm,armv8-timer"; interrupt-parent = <&gic>; -- 1.9.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
[parent not found: <cover.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>]
* Re: [PATCH 0/3] arm64 xilinx zynqmp firmware interface [not found] ` <cover.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> @ 2017-08-05 4:23 ` Alexander Graf [not found] ` <34C9E6FB-A8CA-462F-8B10-3E15F9EC87D4-l3A5Bk7waGM@public.gmane.org> 0 siblings, 1 reply; 11+ messages in thread From: Alexander Graf @ 2017-08-05 4:23 UTC (permalink / raw) To: Michal Simek Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Punnaiah Choudary Kalluri, Baoyou Xie, Bharat Kumar Gogada, Lucas Stach, Rob Herring, Nicolas Ferre, Catalin Marinas, Geert Uytterhoeven, yangbo lu, Sören Brinkmann, Alexandre Belloni, Krzysztof Kozlowski, Will Deacon, devicetree-u79uwXL29TY76Z2rM5mHXA, Andreas Färber, Moritz Fischer, Michal Simek > Am 04.08.2017 um 15:45 schrieb Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>: > > Hi, > > xilinx is using this interface for very long time and we can't merge our > driver changes to Linux because of missing communication layer with > firmware. This interface was developed before scpi and scmi was > available. In connection to power management scpi and scmi are missing > pieces which we already use. There is a separate discussion how to > extend scmi to support all our use cases. > This simply patch is not adding any power management features but only > adding minimum functionality which are needed for drivers. If you're thinking of changing the interface later down the road, wouldn't it make sense to probe EL3 for its existence? You could then expose this interface on today's EL3 and something scpi/scmi based on tomorrow's. Alex > > Thanks, > Michal > > > Michal Simek (1): > soc: xilinx: zynqmp: Add firmware interface > > Soren Brinkmann (2): > dt: xilinx: zynqmp: Add bindings for PM firmware > arm64: zynqmp: dt: Add PM firmware node > > .../bindings/soc/xilinx/xlnx,zynqmp-pm.txt | 19 + > arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 7 + > drivers/soc/Kconfig | 1 + > drivers/soc/Makefile | 1 + > drivers/soc/xilinx/Kconfig | 6 + > drivers/soc/xilinx/zynqmp/Makefile | 1 + > drivers/soc/xilinx/zynqmp/firmware.c | 419 +++++++++++++++++++++ > include/linux/soc/xilinx/zynqmp/firmware.h | 246 ++++++++++++ > 8 files changed, 700 insertions(+) > create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,zynqmp-pm.txt > create mode 100644 drivers/soc/xilinx/Kconfig > create mode 100644 drivers/soc/xilinx/zynqmp/Makefile > create mode 100644 drivers/soc/xilinx/zynqmp/firmware.c > create mode 100644 include/linux/soc/xilinx/zynqmp/firmware.h > > -- > 1.9.1 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <34C9E6FB-A8CA-462F-8B10-3E15F9EC87D4-l3A5Bk7waGM@public.gmane.org>]
* Re: [PATCH 0/3] arm64 xilinx zynqmp firmware interface [not found] ` <34C9E6FB-A8CA-462F-8B10-3E15F9EC87D4-l3A5Bk7waGM@public.gmane.org> @ 2017-08-07 6:09 ` Michal Simek 0 siblings, 0 replies; 11+ messages in thread From: Michal Simek @ 2017-08-07 6:09 UTC (permalink / raw) To: Alexander Graf, Michal Simek Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Punnaiah Choudary Kalluri, Baoyou Xie, Bharat Kumar Gogada, Lucas Stach, Rob Herring, Nicolas Ferre, Catalin Marinas, Geert Uytterhoeven, yangbo lu, Sören Brinkmann, Alexandre Belloni, Krzysztof Kozlowski, Will Deacon, devicetree-u79uwXL29TY76Z2rM5mHXA, Andreas Färber, Moritz Fischer On 5.8.2017 06:23, Alexander Graf wrote: > > >> Am 04.08.2017 um 15:45 schrieb Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>: >> >> Hi, >> >> xilinx is using this interface for very long time and we can't merge our >> driver changes to Linux because of missing communication layer with >> firmware. This interface was developed before scpi and scmi was >> available. In connection to power management scpi and scmi are missing >> pieces which we already use. There is a separate discussion how to >> extend scmi to support all our use cases. >> This simply patch is not adding any power management features but only >> adding minimum functionality which are needed for drivers. > > If you're thinking of changing the interface later down the road, wouldn't it make sense to probe EL3 for its existence? You could then expose this interface on today's EL3 and something scpi/scmi based on tomorrow's. Right now driver is checking pmu firmware version. Based on this it is clear how to communicate with it. The same checking could be there for ATF version. Both of these should tell you exactly what's the communication channel. If we decide to use scmi or any other implementation we will increase versions. Thanks, Michal -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2017-08-14 14:35 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-08-04 13:45 [PATCH 0/3] arm64 xilinx zynqmp firmware interface Michal Simek 2017-08-04 13:45 ` [PATCH 1/3] dt: xilinx: zynqmp: Add bindings for PM firmware Michal Simek [not found] ` <8c27b7eec6cc00d37dfe9b3998212ce9c9c27a31.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2017-08-10 19:10 ` Rob Herring 2017-08-11 12:58 ` Michal Simek [not found] ` <4e5d9f8c-9e87-bdcd-388a-aab3c32415e8-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2017-08-11 13:54 ` Edgar E. Iglesias 2017-08-14 13:47 ` Michal Simek 2017-08-14 14:03 ` Rob Herring [not found] ` <CABGGiszb1kr8ggo8Jv9jsvStK5DxpseuBy7z=_OK8pLN==h25Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2017-08-14 14:35 ` Michal Simek 2017-08-04 13:45 ` [PATCH 2/3] arm64: zynqmp: dt: Add PM firmware node Michal Simek [not found] ` <cover.1501854302.git.michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> 2017-08-05 4:23 ` [PATCH 0/3] arm64 xilinx zynqmp firmware interface Alexander Graf [not found] ` <34C9E6FB-A8CA-462F-8B10-3E15F9EC87D4-l3A5Bk7waGM@public.gmane.org> 2017-08-07 6:09 ` Michal Simek
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).