Message ID | 1519949975-13548-5-git-send-email-richard.gong@linux.intel.com |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | Add Intel Stratix10 FPGA manager and service layer | expand |
On Thu, Mar 01, 2018 at 06:19:32PM -0600, richard.gong@linux.intel.com wrote: > From: Alan Tull <atull@kernel.org> > > Add a Device Tree binding for the Intel Stratix10 SoC FPGA manager. > > Signed-off-by: Alan Tull <atull@kernel.org> > --- > v2: this patch is added in patch set version 2 > --- > .../devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt | 10 ++++++++++ > 1 file changed, 10 insertions(+) > create mode 100644 Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt > > diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt > new file mode 100644 > index 0000000..78de689 > --- /dev/null > +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt > @@ -0,0 +1,10 @@ > +Intel Stratix10 SoC FPGA Manager > + > +Required properties: > +- compatible : should contain "intel,stratix10-soc-fpga-mgr" > + > +Example: > + > + fpga_mgr: fpga-mgr@0 { > + compatible = "intel,stratix10-soc-fpga-mgr"; No reg or anything else? Is that because it all goes thru the service layer firmware? Just get the service layer driver to instantiate a device for this driver or get rid of the 2 layers if that's all the firmware interface does. DT is not a Linux driver instantiation mechanism. And build your dts files with "W=1" because there's an error in this example. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Mar 7, 2018 at 1:47 PM, Rob Herring <robh@kernel.org> wrote: > On Thu, Mar 01, 2018 at 06:19:32PM -0600, richard.gong@linux.intel.com wrote: >> From: Alan Tull <atull@kernel.org> >> >> Add a Device Tree binding for the Intel Stratix10 SoC FPGA manager. >> >> Signed-off-by: Alan Tull <atull@kernel.org> >> --- >> v2: this patch is added in patch set version 2 >> --- >> .../devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >> >> diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >> new file mode 100644 >> index 0000000..78de689 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >> @@ -0,0 +1,10 @@ >> +Intel Stratix10 SoC FPGA Manager >> + >> +Required properties: >> +- compatible : should contain "intel,stratix10-soc-fpga-mgr" >> + >> +Example: >> + >> + fpga_mgr: fpga-mgr@0 { >> + compatible = "intel,stratix10-soc-fpga-mgr"; > > No reg or anything else? Is that because it all goes thru the service > layer firmware? Yes. There will be a few more clients of the service layer: QSPI, Crypto and warm reset. > Just get the service layer driver to instantiate a > device for this driver or get rid of the 2 layers if that's all the > firmware interface does. DT is not a Linux driver instantiation > mechanism. Right, this should be describing hardware. I could add this to the service layer binding: firmware { svc { compatible = "intel,stratix10-svc"; method = "smc"; memory-region = <&service_reserved>; fpga-mgr { compatible = "intel,stratix10-soc-fpga-mgr"; }; }; }; > > And build your dts files with "W=1" because there's an error in this > example. Ouch. Yes. Warning (unit_address_vs_reg): Node /soc/fpga-mgr@0 has a unit name, but no reg property Thanks for the review, Alan > > Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Mar 7, 2018 at 4:20 PM, Alan Tull <atull@kernel.org> wrote: > On Wed, Mar 7, 2018 at 1:47 PM, Rob Herring <robh@kernel.org> wrote: >> On Thu, Mar 01, 2018 at 06:19:32PM -0600, richard.gong@linux.intel.com wrote: >>> From: Alan Tull <atull@kernel.org> >>> >>> Add a Device Tree binding for the Intel Stratix10 SoC FPGA manager. >>> >>> Signed-off-by: Alan Tull <atull@kernel.org> >>> --- >>> v2: this patch is added in patch set version 2 >>> --- >>> .../devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt | 10 ++++++++++ >>> 1 file changed, 10 insertions(+) >>> create mode 100644 Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>> >>> diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>> new file mode 100644 >>> index 0000000..78de689 >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>> @@ -0,0 +1,10 @@ >>> +Intel Stratix10 SoC FPGA Manager >>> + >>> +Required properties: >>> +- compatible : should contain "intel,stratix10-soc-fpga-mgr" >>> + >>> +Example: >>> + >>> + fpga_mgr: fpga-mgr@0 { >>> + compatible = "intel,stratix10-soc-fpga-mgr"; >> >> No reg or anything else? Is that because it all goes thru the service >> layer firmware? > > Yes. > > There will be a few more clients of the service layer: QSPI, Crypto > and warm reset. > >> Just get the service layer driver to instantiate a >> device for this driver or get rid of the 2 layers if that's all the >> firmware interface does. DT is not a Linux driver instantiation >> mechanism. > > Right, this should be describing hardware. > > I could add this to the service layer binding: > > firmware { > svc { > compatible = "intel,stratix10-svc"; > method = "smc"; > memory-region = <&service_reserved>; > fpga-mgr { > compatible = "intel,stratix10-soc-fpga-mgr"; Still, why do you need this node? If you don't have any other cross tree connections, then the service layer can instantiate the device(s). OTOH, QSPI would need a node because you'll need to describe its bus. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Mar 7, 2018 at 7:24 PM, Rob Herring <robh@kernel.org> wrote: > On Wed, Mar 7, 2018 at 4:20 PM, Alan Tull <atull@kernel.org> wrote: >> On Wed, Mar 7, 2018 at 1:47 PM, Rob Herring <robh@kernel.org> wrote: >>> On Thu, Mar 01, 2018 at 06:19:32PM -0600, richard.gong@linux.intel.com wrote: >>>> From: Alan Tull <atull@kernel.org> >>>> >>>> Add a Device Tree binding for the Intel Stratix10 SoC FPGA manager. >>>> >>>> Signed-off-by: Alan Tull <atull@kernel.org> >>>> --- >>>> v2: this patch is added in patch set version 2 >>>> --- >>>> .../devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt | 10 ++++++++++ >>>> 1 file changed, 10 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>> >>>> diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>> new file mode 100644 >>>> index 0000000..78de689 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>> @@ -0,0 +1,10 @@ >>>> +Intel Stratix10 SoC FPGA Manager >>>> + >>>> +Required properties: >>>> +- compatible : should contain "intel,stratix10-soc-fpga-mgr" >>>> + >>>> +Example: >>>> + >>>> + fpga_mgr: fpga-mgr@0 { >>>> + compatible = "intel,stratix10-soc-fpga-mgr"; >>> >>> No reg or anything else? Is that because it all goes thru the service >>> layer firmware? >> >> Yes. >> >> There will be a few more clients of the service layer: QSPI, Crypto >> and warm reset. >> >>> Just get the service layer driver to instantiate a >>> device for this driver or get rid of the 2 layers if that's all the >>> firmware interface does. DT is not a Linux driver instantiation >>> mechanism. >> >> Right, this should be describing hardware. >> >> I could add this to the service layer binding: >> >> firmware { >> svc { >> compatible = "intel,stratix10-svc"; >> method = "smc"; >> memory-region = <&service_reserved>; >> fpga-mgr { Actually, add a label. fpga_mgr: fpga-mgr { >> compatible = "intel,stratix10-soc-fpga-mgr"; > > Still, why do you need this node? If you don't have any other cross > tree connections, then the service layer can instantiate the > device(s). It's used for the FPGA region to know what mgr can program the region. > > OTOH, QSPI would need a node because you'll need to describe its bus. > > Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Mar 8, 2018 at 9:32 AM, Alan Tull <atull@kernel.org> wrote: > On Wed, Mar 7, 2018 at 7:24 PM, Rob Herring <robh@kernel.org> wrote: >> On Wed, Mar 7, 2018 at 4:20 PM, Alan Tull <atull@kernel.org> wrote: >>> On Wed, Mar 7, 2018 at 1:47 PM, Rob Herring <robh@kernel.org> wrote: >>>> On Thu, Mar 01, 2018 at 06:19:32PM -0600, richard.gong@linux.intel.com wrote: >>>>> From: Alan Tull <atull@kernel.org> >>>>> >>>>> Add a Device Tree binding for the Intel Stratix10 SoC FPGA manager. >>>>> >>>>> Signed-off-by: Alan Tull <atull@kernel.org> >>>>> --- >>>>> v2: this patch is added in patch set version 2 >>>>> --- >>>>> .../devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt | 10 ++++++++++ >>>>> 1 file changed, 10 insertions(+) >>>>> create mode 100644 Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>>> >>>>> diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>>> new file mode 100644 >>>>> index 0000000..78de689 >>>>> --- /dev/null >>>>> +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt >>>>> @@ -0,0 +1,10 @@ >>>>> +Intel Stratix10 SoC FPGA Manager >>>>> + >>>>> +Required properties: >>>>> +- compatible : should contain "intel,stratix10-soc-fpga-mgr" >>>>> + >>>>> +Example: >>>>> + >>>>> + fpga_mgr: fpga-mgr@0 { >>>>> + compatible = "intel,stratix10-soc-fpga-mgr"; >>>> >>>> No reg or anything else? Is that because it all goes thru the service >>>> layer firmware? >>> >>> Yes. >>> >>> There will be a few more clients of the service layer: QSPI, Crypto >>> and warm reset. >>> >>>> Just get the service layer driver to instantiate a >>>> device for this driver or get rid of the 2 layers if that's all the >>>> firmware interface does. DT is not a Linux driver instantiation >>>> mechanism. >>> >>> Right, this should be describing hardware. >>> >>> I could add this to the service layer binding: >>> >>> firmware { >>> svc { >>> compatible = "intel,stratix10-svc"; >>> method = "smc"; >>> memory-region = <&service_reserved>; >>> fpga-mgr { > > Actually, add a label. > > fpga_mgr: fpga-mgr { > >>> compatible = "intel,stratix10-soc-fpga-mgr"; >> >> Still, why do you need this node? If you don't have any other cross >> tree connections, then the service layer can instantiate the >> device(s). > > It's used for the FPGA region to know what mgr can program the region. Ah yes, that's probably good enough reason. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt new file mode 100644 index 0000000..78de689 --- /dev/null +++ b/Documentation/devicetree/bindings/fpga/intel-stratix10-soc-fpga-mgr.txt @@ -0,0 +1,10 @@ +Intel Stratix10 SoC FPGA Manager + +Required properties: +- compatible : should contain "intel,stratix10-soc-fpga-mgr" + +Example: + + fpga_mgr: fpga-mgr@0 { + compatible = "intel,stratix10-soc-fpga-mgr"; + };