Thread (1 message) 1 message, 1 author, 2025-02-10

Re: [PATCH RFC v2] dt-bindings: mmc: mmc-slot: make compatible property optional

From: neil.armstrong@linaro.org
Date: 2025-02-10 09:51:47
Also in: linux-amlogic, linux-devicetree, linux-mmc, lkml

On 10/02/2025 06:28, Dharma.B@microchip.com wrote:
On 07/02/25 2:47 pm, neil.armstrong@linaro.org wrote:
quoted
EXTERNAL EMAIL: Do not click links or open attachments unless you know
the content is safe

On 07/02/2025 10:02, Dharma.B@microchip.com wrote:
quoted
On 07/02/25 2:25 pm, Neil Armstrong wrote:
quoted
EXTERNAL EMAIL: Do not click links or open attachments unless you know
the content is safe

On 05/02/2025 04:48, Dharma Balasubiramani wrote:
quoted
Remove the compatible property from the list of required properties and
mark it as optional.

Signed-off-by: Dharma Balasubiramani <dharma.b@microchip.com>
---
Changes in v2:
- Instead of moving the compatible string to the other binding, just
make it
     optional (remove from required list).
- Link to v1: https://lore.kernel.org/r/20241219-mmc-slot-v1-1-
dfc747a3d3fb@microchip.com
---
    Documentation/devicetree/bindings/mmc/mmc-slot.yaml | 1 -
    1 file changed, 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/mmc/mmc-slot.yaml b/
Documentation/devicetree/bindings/mmc/mmc-slot.yaml
index 1f0667828063..ca3d0114bfc6 100644
--- a/Documentation/devicetree/bindings/mmc/mmc-slot.yaml
+++ b/Documentation/devicetree/bindings/mmc/mmc-slot.yaml
@@ -29,7 +29,6 @@ properties:
        maxItems: 1

    required:
-  - compatible
      - reg
If you remove it from here then it's still required in Documentation/
devicetree/bindings/mmc/amlogic,meson-mx-sdio.yaml
so please add it.
If moving the compatible to its specific binding isn't appropriate (as
per Conor),
and if removing it from the required list here doesn’t seem reasonable
to you,
then adding an unnecessary compatible string in our DTS files doesn’t
make sense to me.

What could be the solution then?
The solution is right but you modify the meson-mx-sdio bindings, so
simply add compatible in a required list for the slot node.
Okay, we declare compatible as optional in the generic mmc-slot binding
but make it required in the meson-mx-sdio binding, which inherits from it.

So why not define the property directly in the meson-mx-sdio binding
instead?

It feels like the mmc-slot binding itself serves no real purpose.
It's designed to be reused, the goal was to facilitate migration of
other mmc controllers bindings.

Neil
quoted
Something like:
========================================================================
diff --git a/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-
sdio.yaml b/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-
sdio.yaml
index 022682a977c6..0d4d9ca6a8d9 100644
--- a/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-sdio.yaml
+++ b/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-sdio.yaml
@@ -60,6 +60,9 @@ patternProperties:
         bus-width:
           enum: [1, 4]

+    required:
+      - compatible
+
       unevaluatedProperties: false
========================================================================

Conor, Is it right ?

Neil
quoted
quoted
Thanks,
Neil
quoted
    unevaluatedProperties: false

---
base-commit: 40b8e93e17bff4a4e0cc129e04f9fdf5daa5397e
change-id: 20241219-mmc-slot-0574889daea3

Best regards,
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help