Re: [Patch v2 1/8] dt/bindings: firmware: Add Qualcomm SCM binding

From: Rob Herring
Date: Thu Apr 28 2016 - 16:47:59 EST


On Mon, Apr 25, 2016 at 09:14:59PM -0500, Andy Gross wrote:
> On 25 April 2016 at 20:49, Stephen Boyd <sboyd@xxxxxxxxxxxxxx> wrote:
> > On 04/25, Andy Gross wrote:
> >> This patch adds the device tree support for the Qualcomm SCM firmware.
> >>
> >> Signed-off-by: Andy Gross <andy.gross@xxxxxxxxxx>
> >> ---
> >> .../devicetree/bindings/firmware/qcom,scm.txt | 28 ++++++++++++++++++++++
> >> 1 file changed, 28 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/firmware/qcom,scm.txt
> >>
> >> diff --git a/Documentation/devicetree/bindings/firmware/qcom,scm.txt b/Documentation/devicetree/bindings/firmware/qcom,scm.txt
> >> new file mode 100644
> >> index 0000000..a679a87
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/firmware/qcom,scm.txt
> >> @@ -0,0 +1,28 @@
> >> +QCOM Secure Channel Manager (SCM)
> >> +
> >> +Qualcomm processors include an interface to communicate to the secure firmware.
> >> +This interface allows for clients to request different types of actions. These
> >> +can include CPU power up/down, HDCP requests, loading of firmware, and other
> >> +assorted actions.
> >> +
> >> +Required properties:
> >> +- compatible: must contain one of the following:
> >> + * "qcom,scm-apq8064" for APQ8064
> >> + * "qcom,scm-apq8084" for APQ8084
> >> + * "qcom,scm-msm8916" for MSM8916
> >> + * "qcom,scm-msm8974" for MSM8974
> >
> > Do we need to keep adding these into the driver for every SoC
> > that we support? My understanding is apq8064 can be the one that
> > requires one clk, and msm8974 can be the one that requires three.
> > The driver can just have those two compatibles for now, and we
> > can keep adding compatibles here for the different SoCs, but
> > really we don't care, that's just to save ourselves if something
> > pops up and needs a workaround.
> >
> > It will certainly look weird if it's firmware that's compatible
> > with qcom,scm-msm8974 but on an apq8084, so perhaps something

Not if the first string has apq8084.

> > more generic like, qcom-scm-v1 and qcom,scm-v2 can be used as the
> > generic compatible in the driver:
> >
> > compatible = "qcom,scm-apq8064", "qcom,scm-v1";
> >
> > vs.
> >
> > compatible = "qcom,scm-apq8084", "qcom,scm-v2";
> >
> > ?
> >
> > I just want to avoid the constant SoC churn update here if we can.
>
> Right. We can certainly do it that way. Its just that the v1/v2
> aren't the real versions. What if we did qcom,scm vs
> qcom,scm-apq8064?

I'd prefer this over fake version numbers.

Is there any sane versioning of the firmware itself that could be used?

Rob