lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 20 Jan 2022 14:30:02 +0530
From:   Pratyush Yadav <p.yadav@...com>
To:     Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>
CC:     Andi Shyti <andi@...zian.org>, Mark Brown <broonie@...nel.org>,
        Rob Herring <robh+dt@...nel.org>, <linux-spi@...r.kernel.org>,
        <linux-samsung-soc@...r.kernel.org>, <devicetree@...r.kernel.org>,
        <linux-kernel@...r.kernel.org>,
        <linux-arm-kernel@...ts.infradead.org>,
        Sam Protsenko <semen.protsenko@...aro.org>
Subject: Re: [PATCH v3 2/4] spi: dt-bindings: samsung: convert to dtschema

On 20/01/22 08:36AM, Krzysztof Kozlowski wrote:
> On 20/01/2022 08:06, Pratyush Yadav wrote:
> > On 19/01/22 08:49PM, Krzysztof Kozlowski wrote:
> >> On 19/01/2022 20:31, Pratyush Yadav wrote:
> >>> On 12/01/22 11:00AM, Krzysztof Kozlowski wrote:
> >>>> Convert the Samsung SoC (S3C24xx, S3C64xx, S5Pv210, Exynos) SPI
> >>>> controller bindings to DT schema format
> >>>>
> >>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>
> >>>> Reviewed-by: Sam Protsenko <semen.protsenko@...aro.org>
> >>>> ---
> >>>>  .../spi/samsung,spi-peripheral-props.yaml     |  35 ++++
> >>>>  .../devicetree/bindings/spi/samsung,spi.yaml  | 187 ++++++++++++++++++
> >>>>  .../bindings/spi/spi-peripheral-props.yaml    |   1 +
> >>>>  .../devicetree/bindings/spi/spi-samsung.txt   | 122 ------------
> >>>>  MAINTAINERS                                   |   2 +-
> >>>>  5 files changed, 224 insertions(+), 123 deletions(-)
> >>>>  create mode 100644 Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
> >>>>  create mode 100644 Documentation/devicetree/bindings/spi/samsung,spi.yaml
> >>>>  delete mode 100644 Documentation/devicetree/bindings/spi/spi-samsung.txt
> >>>>
> >>>> diff --git a/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml b/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
> >>>> new file mode 100644
> >>>> index 000000000000..aa5a1f48494b
> >>>> --- /dev/null
> >>>> +++ b/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
> >>>> @@ -0,0 +1,35 @@
> >>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >>>> +%YAML 1.2
> >>>> +---
> >>>> +$id: http://devicetree.org/schemas/spi/samsung,spi-peripheral-props.yaml#
> >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>>> +
> >>>> +title: Peripheral-specific properties for Samsung S3C/S5P/Exynos SoC SPI controller
> >>>> +
> >>>> +maintainers:
> >>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>
> >>>> +
> >>>> +description:
> >>>> +  See spi-peripheral-props.yaml for more info.
> >>>> +
> >>>> +properties:
> >>>> +  controller-data:
> >>>> +    type: object
> >>>> +    additionalProperties: false
> >>>> +
> >>>> +    properties:
> >>>> +      samsung,spi-feedback-delay:
> >>>> +        description: |
> >>>> +          The sampling phase shift to be applied on the miso line (to account
> >>>> +          for any lag in the miso line). Valid values:
> >>>> +           - 0: No phase shift.
> >>>> +           - 1: 90 degree phase shift sampling.
> >>>> +           - 2: 180 degree phase shift sampling.
> >>>> +           - 3: 270 degree phase shift sampling.
> >>>> +        $ref: /schemas/types.yaml#/definitions/uint32
> >>>> +        enum: [0, 1, 2, 3]
> >>>> +
> >>>> +    required:
> >>>> +      - samsung,spi-feedback-delay
> >>>
> >>> I am not quite sure if this required would work here. Let's say another 
> >>> controller also uses a controller-data node, but it contains a different 
> >>> set of properties. Won't this cause an error to be raised for that 
> >>> controller since this property is not there?
> >>
> >> The controller-data is Samsung SPI specific (does not exist in any other
> >> binding), so why would controller-data get added to a different controller?
> > 
> > It does not as of now, but the name is fairly generic and some 
> > controller in the future might use it. I do not think it is a good idea 
> > to list required properties in X-peripheral-props.yaml in general since 
> > all those will be collected by spi-peripheral-props.yaml and so will 
> > apply to _all_ controllers that reference it.
> 
> Right, but have in mind this is merely a bindings conversion. These were
> made like this long time ago.

Yes, but the bindings infrastructure is not capable of handling these 
required properties as of now. So even if your next patch was _not_ 
making it optional, I would still say you should drop the "required:". 
Even though the property is actually a required one, we currently do not 
have the means to express that.

> 
> I think we can drop the "required:" entirely with the commit 3/4 which
> makes it optional.

I would prefer you never add it in the first place.

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ