Re: [PATCH 4/9] dt-bindings: remoteproc: qcom: wcnss: Convert to YAML

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu May 12, 2022 at 1:44 PM IST, Krzysztof Kozlowski wrote:
> On 12/05/2022 08:50, Sireesh Kodali wrote:
> > On Wed May 11, 2022 at 10:45 PM IST, Krzysztof Kozlowski wrote:
> >> On 11/05/2022 18:15, Sireesh Kodali wrote:
> >>> Convert the dt-bindings from txt to YAML. This is in preparation for
> >>> including the relevant bindings for the MSM8953 platform's wcnss pil.
> >>>
> >>> Signed-off-by: Sireesh Kodali <sireeshkodali1@xxxxxxxxx>
> >>
> >> Thank you for your patch. There is something to discuss/improve.
> >>
> >> Please use existing bindings or example-schema as a starting point. Half
> >> of my review could be skipped if you just followed what we already have
> >> in the tree.
> >>
> >> Some of these qcom specific properties already exist but you decided to
> >> write them differently... please don't, rather reuse the code.
> >>
> > 
> > Thank you for your review, I will make the chnages as appropriate in v2.
> >> (...)
> >>
> >>> +
> >>> +maintainers:
> >>> +  - Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
> >>> +
> >>> +description:
> >>> +  This document defines the binding for a component that loads and boots
> >>> +  firmware on the Qualcomm WCNSS core.
> >>> +
> >>> +properties:
> >>> +  compatible:
> >>> +    oneOf:
> >>> +      - items:
> >>> +          - enum:
> >>> +              - qcom,pronto-v2-pil
> >>> +          - enum:
> >>> +              - qcom,pronto
> >>
> >> This does not look correct. The fallback compatible should not change.
> >> What is more, it was not documented in original binding, so this should
> >> be done in separate patch.
> >>
> > 
> > This was not a change to the fallback compatible. 
>
> You made it an enum, so you expect it to use different fallback for
> different cases.
>
> > msm8916.dtsi's wcnss
> > node has "qcom,pronto" as the compatible string, which is why this was
> > added. It is however not documented in the txt file. Is it sufficient to
> > add a note in the commit message, or should it be split into a separate
> > commit?
>
> Please split it, assuming that fallback is correct. Maybe the fallback
> is wrong?

The code doesn't recognize "qcom,pronto", so perhaps the best solution
is to just remove that compatible from msm8916.dtsi?
>
> > 
> >>> +      - items:
> >>
> >> No need for items, it's just one item.
> >>
> >>> +          - enum:
> >>> +              - qcom,riva-pil
> >>> +              - qcom,pronto-v1-pil
> >>> +              - qcom,pronto-v2-pil
> >>> +
> >>> +  reg:
> >>> +    description: must specify the base address and size of the CCU, DXE and PMU
> >>> +      register blocks
> >>
> >> New line after "decription:", drop "must specify" and start with capital
> >> letter.
> >>
> >> You need maxItems: 3
> >>
> > 
> > Will fix in v2
> >>
> >>> +
> >>> +  reg-names:
> >>> +    items:
> >>> +      - const: ccu
> >>> +      - const: dxe
> >>> +      - const: pmu
> >>> +
> >>> +  interrupts-extended:
> >>> +    description:
> >>> +      Interrupt lines
> >>
> >> Skip description, it's obvious.
> >>
> >> It should be only "interrupts", not extended.
> >>
> >>> +    minItems: 2
> >>> +    maxItems: 5
> >>> +
> >>> +  interrupt-names:
> >>> +    minItems: 2
> >>> +    maxItems: 5
> >>
> >> Names should be clearly defined. They were BTW defined in original
> >> bindings, so you should not remove them. This makes me wonder what else
> >> did you remove from original bindings...
> >>
> >> Please document all deviations from pure conversion in the commit msg.
> >> It's a second "hidden" difference.
> >>
> > 
> > Sorry, this was meant to be a pure txt->YAML conversion. The missing
> > interrupt names was accidental, and will be fixed in v2.
> >>> +
> >>> +  firmware-name:
> >>> +    $ref: /schemas/types.yaml#/definitions/string
> >>> +    description: Relative firmware image path for the WCNSS core. Defaults to
> >>> +      "wcnss.mdt".
> >>
> >>
> >> Blank line after "description:". This applies to other places as well.
> >>
> >> Remove "Defailts to ..." and just add "default" schema.
> >>
> > 
> > Will be fixed in v2
> >>> +
> >>> +  vddpx-supply:
> >>> +    description: Reference to the PX regulator to be held on behalf of the
> >>> +      booting of the WCNSS core
> >>> +
> >>> +  vddmx-supply:
> >>> +    description: Reference to the MX regulator to be held on behalf of the
> >>> +      booting of the WCNSS core.
> >>> +
> >>> +  vddcx-supply:
> >>> +    description: Reference to the CX regulator to be held on behalf of the
> >>> +      booting of the WCNSS core.
> >>
> >> s/Reference to the//
> >>
> >>> +
> >>> +  power-domains:
> >>> +    $ref: /schemas/types.yaml#/definitions/phandle-array
> >>> +    description: References to the power domains that need to be held on
> >>> +      behalf of the booting WCNSS core
> >>
> >> 1. Ditto.
> >> 2. No need for ref
> >> 3. maxItems
> >>
> >>> +
> >>> +  power-domain-names:
> >>> +    $ref: /schemas/types.yaml#/definitions/string-array
> >>
> >> No need for ref, skip description.
> >>
> >>> +    description: Names of the power domains
> >>> +    items:
> >>> +      - const: cx
> >>> +      - const: mx
> >>> +
> >>> +  qcom,smem-states:
> >>> +    $ref: /schemas/types.yaml#/definitions/phandle-array
> >>> +    description: States used by the AP to signal the WCNSS core that it should
> >>> +      shutdown
> >>> +    items:
> >>> +      - description: Stop the modem
> >>> +
> >>> +  qcom,smem-state-names:
> >>> +    $ref: /schemas/types.yaml#/definitions/string-array
> >>
> >> No need for ref. Really, it does not appear in any of existing bindings
> >> for smem-state-names, so how did you get it?
> >>
> > 
> > The smem nodes were copied from /remoteproc/qcom,sdm845-adsp-pil.yaml
>
> Hm, indeed, you're right. There are few files having here ref. I'll fix
> these.
>
> > 
> >>> +    description: The names of the state bits used for SMP2P output
> >>> +    items:
> >>> +      - const: stop
> >>> +
> >>> +  memory-region:
> >>> +    maxItems: 1
> >>> +    description: Reference to the reserved-memory for the WCNSS core
> >>> +
> >>> +  smd-edge:
> >>> +    type: object
> >>> +    description:
> >>> +      Qualcomm Shared Memory subnode which represents communication edge,
> >>> +      channels and devices related to the ADSP.
> >>
> >> You should reference /schemas/soc/qcom/qcom,smd.yaml
> > 
> > Will be done in v2
> >>
> >>> +
> >>> +  iris:
> >>
> >> Generic node name... what is "iris"?
> >>
> > Iris is the RF module, I'll make the description better
>
> RF like wifi? Then the property name should be "wifi".

RF like wifi and bluetooth. However there are wifi and bt subnodes in
the smd-edge subnode. Iris is just the antenna hardware if I understand
correctly. Also this is just a documentation of the existing nodes that
are present in msm8916.dtsi, but for whatever reason their documentation
was missing in the txt file. Without adding this node in the YAML
dtb_check fails.

>
>
> Best regards,
> Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux