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] [day] [month] [year] [list]
Message-ID: <df947cbe-e207-4619-957f-0c961c6d7139@kernel.org>
Date: Mon, 21 Jul 2025 09:02:33 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Jonas Jelonek <jelonek.jonas@...il.com>
Cc: linux-i2c@...r.kernel.org,
 Chris Packham <chris.packham@...iedtelesis.co.nz>,
 Andi Shyti <andi.shyti@...nel.org>, Rob Herring <robh@...nel.org>,
 Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
 <conor+dt@...nel.org>, devicetree@...r.kernel.org,
 linux-kernel@...r.kernel.org, Markus Stockhausen <markus.stockhausen@....de>
Subject: Re: [PATCH v2 2/3] dt-bindings: i2c: realtek,rtl9301-i2c: extend for
 RTL9310 support

On 20/07/2025 21:51, Jonas Jelonek wrote:
> Hi Krzysztof,
> 
> 
> On 14.07.2025 08:00, Krzysztof Kozlowski wrote:
>> On Sat, Jul 12, 2025 at 07:42:54PM +0000, Jonas Jelonek wrote:
>>>  properties:
>>>    compatible:
>>> @@ -23,7 +25,14 @@ properties:
>>>                - realtek,rtl9302c-i2c
>>>                - realtek,rtl9303-i2c
>>>            - const: realtek,rtl9301-i2c
>>> +      - items:
>>> +          - enum:
>>> +              - realtek,rtl9311-i2c
>>> +              - realtek,rtl9312-i2c
>>> +              - realtek,rtl9313-i2c
>>> +          - const: realtek,rtl9310-i2c
>>>        - const: realtek,rtl9301-i2c
>>> +      - const: realtek,rtl9310-i2c
>> So these two are just enum.
> 
> Could you be more precise on that please? Sadly, I don't get what you're trying
> to tell me.


These two last lines should be part of one enum.

>>> +    minimum: 1
>>> +    maximum: 2
>>> +
>>>  patternProperties:
>>> -  '^i2c@[0-7]$':
>>> +  '^i2c@([0-9]|1[0-1])$':
>>>      $ref: /schemas/i2c/i2c-controller.yaml
>>>      unevaluatedProperties: false
>>>  
>> As mentioned last time, missing constraints.
>>
>> How did you solve this:
>>
>> "you should clearly narrow this per variant"?
>>
>> See example schema. It has EXACTLY this case.
>>
>> https://elixir.bootlin.com/linux/v5.19/source/Documentation/devicetree/bindings/example-schema.yaml#L212
>>
>> You also need to narrow the number of children.
> 
> I missed that from your previous review by mistake, sorry for that.
> 
> I managed to narrow it per variant whether 'realtek,mst-id' is required or not.
> But I'm not really able to do the same for the different regex patterns or the
> number of children. Although I'm trying to follow various examples,
> dt_binding_check just fails not taking the regex patterns into account.
> 
> Since you have a lot of expertise on that and I obviously fail to find
> documentation that helps me to do that properly, could you give me some hints
> on how that has to look? I'd really appreciate this.


So in your if:then: block where you narrow mst-id, you add on same level
as properties:

patternProperties:
  YOUR_REGEX: false


Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ