All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Mattijs Korpershoek <mkorpershoek@baylibre.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Matthias Brugger <matthias.bgg@gmail.com>
Cc: linux-kernel@vger.kernel.org, linux-input@vger.kernel.org,
	Fabien Parent <parent.f@gmail.com>,
	devicetree@vger.kernel.org, linux-mediatek@lists.infradead.org,
	Fabien Parent <fparent@baylibre.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v1 2/6] dt-bindings: mediatek,mt6779-keypad: use unevaluatedProperties
Date: Thu, 21 Jul 2022 11:16:05 +0200	[thread overview]
Message-ID: <734ed3cf-1461-6067-e718-663ca4be47a6@linaro.org> (raw)
In-Reply-To: <874jzaj0m5.fsf@baylibre.com>

On 21/07/2022 11:06, Mattijs Korpershoek wrote:
> On Wed, Jul 20, 2022 at 19:14, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote:
> 
>> On 20/07/2022 16:48, Mattijs Korpershoek wrote:
>>> writing-bindings.rst states:
>>>> - If schema includes other schema (e.g. /schemas/i2c/i2c-controller.yaml) use
>>>>   "unevaluatedProperties:false". In other cases, usually use
>>>>   "additionalProperties:false".
>>>
>>> mt6779-keypad includes matrix-keymap.yaml so replace additionalProperties:false
>>> by unevaluatedProperties:false.
>>
>> This is not sufficient explanation. You now allow all properties from
>> matrix-keymap.yaml, which might be desired or might be not (e.g. they
>> are not valid for this device). Please investigate it and mention the
>> outcome.
> 
> Hi Krzysztof,
> 
> Thank you for your prompt review.
> 
> In mt6779_keypad_pdrv_probe(), we call
> * matrix_keypad_parse_properties() which requires keypad,num-rows and keypad,num-cols.
> * matrix_keypad_build_keymap() which uses linux,keymap
> 
> Therefore, all properties from matrix-keymap.yaml are
> required by the mt6779-keypad 
Better to mention the device, not driver.

> 
> In v2, I will add the above justification and also add all 3 properties
> in the "required" list.
> 
> Initially, I did not do this because from a dts/code perspective it seemed
> interesting to split out SoC specific keyboard node vs board specific key configuration:
> * [PATCH v1 5/6] arm64: dts: mediatek: mt8183: add keyboard node # SoC specific
> * [PATCH v1 6/6] arm64: dts: mediatek: mt8183-pumpkin: add keypad support # board specific
> 
> What would be the recommend approach for above?
> I see at least 2:
> * "move the whole keyboard node into the board file (mt8183-pumpkin.dts)" even if it generates
>   duplication between boards using the same SoC.
> * "add a "dummy keymap,row,cols" properties in the soc node which can be overriden in board file.
>   For example, use rows and cols = 0 which would have the driver early exit.
> 
SoC DTSI should have only SoC properties. The keyboard module is part of
SoC. The keys and how it is wired to them - not.

Best regards,
Krzysztof

WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Mattijs Korpershoek <mkorpershoek@baylibre.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Matthias Brugger <matthias.bgg@gmail.com>
Cc: linux-kernel@vger.kernel.org, linux-input@vger.kernel.org,
	Fabien Parent <parent.f@gmail.com>,
	devicetree@vger.kernel.org, linux-mediatek@lists.infradead.org,
	Fabien Parent <fparent@baylibre.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v1 2/6] dt-bindings: mediatek,mt6779-keypad: use unevaluatedProperties
Date: Thu, 21 Jul 2022 11:16:05 +0200	[thread overview]
Message-ID: <734ed3cf-1461-6067-e718-663ca4be47a6@linaro.org> (raw)
In-Reply-To: <874jzaj0m5.fsf@baylibre.com>

On 21/07/2022 11:06, Mattijs Korpershoek wrote:
> On Wed, Jul 20, 2022 at 19:14, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote:
> 
>> On 20/07/2022 16:48, Mattijs Korpershoek wrote:
>>> writing-bindings.rst states:
>>>> - If schema includes other schema (e.g. /schemas/i2c/i2c-controller.yaml) use
>>>>   "unevaluatedProperties:false". In other cases, usually use
>>>>   "additionalProperties:false".
>>>
>>> mt6779-keypad includes matrix-keymap.yaml so replace additionalProperties:false
>>> by unevaluatedProperties:false.
>>
>> This is not sufficient explanation. You now allow all properties from
>> matrix-keymap.yaml, which might be desired or might be not (e.g. they
>> are not valid for this device). Please investigate it and mention the
>> outcome.
> 
> Hi Krzysztof,
> 
> Thank you for your prompt review.
> 
> In mt6779_keypad_pdrv_probe(), we call
> * matrix_keypad_parse_properties() which requires keypad,num-rows and keypad,num-cols.
> * matrix_keypad_build_keymap() which uses linux,keymap
> 
> Therefore, all properties from matrix-keymap.yaml are
> required by the mt6779-keypad 
Better to mention the device, not driver.

> 
> In v2, I will add the above justification and also add all 3 properties
> in the "required" list.
> 
> Initially, I did not do this because from a dts/code perspective it seemed
> interesting to split out SoC specific keyboard node vs board specific key configuration:
> * [PATCH v1 5/6] arm64: dts: mediatek: mt8183: add keyboard node # SoC specific
> * [PATCH v1 6/6] arm64: dts: mediatek: mt8183-pumpkin: add keypad support # board specific
> 
> What would be the recommend approach for above?
> I see at least 2:
> * "move the whole keyboard node into the board file (mt8183-pumpkin.dts)" even if it generates
>   duplication between boards using the same SoC.
> * "add a "dummy keymap,row,cols" properties in the soc node which can be overriden in board file.
>   For example, use rows and cols = 0 which would have the driver early exit.
> 
SoC DTSI should have only SoC properties. The keyboard module is part of
SoC. The keys and how it is wired to them - not.

Best regards,
Krzysztof

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-07-21  9:16 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-20 14:48 [PATCH v1 0/6] Input: mt6779-keypad - double keys support Mattijs Korpershoek
2022-07-20 14:48 ` Mattijs Korpershoek
2022-07-20 14:48 ` [PATCH v1 1/6] MAINTAINERS: input: add mattijs for mt6779-keypad Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek
2022-07-20 14:48 ` [PATCH v1 2/6] dt-bindings: mediatek,mt6779-keypad: use unevaluatedProperties Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek
2022-07-20 17:14   ` Krzysztof Kozlowski
2022-07-20 17:14     ` Krzysztof Kozlowski
2022-07-21  9:06     ` Mattijs Korpershoek
2022-07-21  9:06       ` Mattijs Korpershoek
2022-07-21  9:16       ` Krzysztof Kozlowski [this message]
2022-07-21  9:16         ` Krzysztof Kozlowski
2022-07-21 13:11         ` Mattijs Korpershoek
2022-07-21 13:11           ` Mattijs Korpershoek
2022-07-20 14:48 ` [PATCH v1 3/6] dt-bindings: mediatek,mt6779-keypad: add mediatek,double-keys Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek
2022-07-20 17:26   ` Krzysztof Kozlowski
2022-07-20 17:26     ` Krzysztof Kozlowski
2022-07-21 13:32     ` Mattijs Korpershoek
2022-07-21 13:32       ` Mattijs Korpershoek
2022-07-21 13:51       ` Krzysztof Kozlowski
2022-07-21 13:51         ` Krzysztof Kozlowski
2022-07-21 14:44         ` Mattijs Korpershoek
2022-07-21 14:44           ` Mattijs Korpershoek
2022-07-21  8:40   ` AngeloGioacchino Del Regno
2022-07-21  8:40     ` AngeloGioacchino Del Regno
2022-07-21 13:34     ` Mattijs Korpershoek
2022-07-21 13:34       ` Mattijs Korpershoek
2022-07-20 14:48 ` [PATCH v1 4/6] Input: mt6779-keypad - support double keys matrix Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek
2022-07-20 14:53   ` Matthias Brugger
2022-07-20 14:53     ` Matthias Brugger
2022-07-21  8:34   ` AngeloGioacchino Del Regno
2022-07-21  8:34     ` AngeloGioacchino Del Regno
2022-07-21 14:51     ` Mattijs Korpershoek
2022-07-21 14:51       ` Mattijs Korpershoek
2022-07-21 14:55       ` AngeloGioacchino Del Regno
2022-07-21 14:55         ` AngeloGioacchino Del Regno
2022-07-26  9:52         ` Mattijs Korpershoek
2022-07-26  9:52           ` Mattijs Korpershoek
2022-07-20 14:48 ` [PATCH v1 5/6] arm64: dts: mediatek: mt8183: add keyboard node Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek
2022-07-21  8:41   ` AngeloGioacchino Del Regno
2022-07-21  8:41     ` AngeloGioacchino Del Regno
2022-07-20 14:48 ` [PATCH v1 6/6] arm64: dts: mediatek: mt8183-pumpkin: add keypad support Mattijs Korpershoek
2022-07-20 14:48   ` Mattijs Korpershoek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=734ed3cf-1461-6067-e718-663ca4be47a6@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=fparent@baylibre.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=mkorpershoek@baylibre.com \
    --cc=parent.f@gmail.com \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.