Thread (13 messages) 13 messages, 5 authors, 2023-06-16

Re: [PATCH v9 3/3] dt-bindings: mtd: marvell-nand: Convert to YAML DT scheme

flat view

From: Krzysztof Kozlowski <hidden>
Date: 2023-06-16 08:38:51
Also in: linux-devicetree, lkml

On 16/06/2023 10:24, Miquel Raynal wrote:
Hi Krzysztof,

krzysztof.kozlowski@linaro.org wrote on Fri, 16 Jun 2023 10:15:31 +0200:
quoted
On 15/06/2023 23:06, Chris Packham wrote:
quoted
quoted
 
quoted
+
+properties:
+  compatible:
+    oneOf:
+      - items:
+          - const: marvell,armada-8k-nand-controller
+          - const: marvell,armada370-nand-controller
+      - enum:
+          - marvell,armada-8k-nand-controller  
This is wrong. 8k cannot be both: compatible and not compatible with
370. It's not someone's cat to be in both states at the same time...  
The correct state (IMHO, Miquel correct me if I'm wrong) is `compatible 
= "marvell,armada-8k-nand-controller";`  as there are some 8K specific 
requirements that aren't present on the 370 (specifically the 
system-controller and the 2nd clock).   
Presence of specific requirements does not invalidate compatibility. Two
devices are compatible if the 8k can bind and work with 370 compatible
string, even if this means some lower performance or less features (e.g.
subset of features).
Quoting myself from 2019 (comment in the driver):
"Some SoCs like A7k/A8k need to enable manually the NAND controller,
gated clocks and reset bits to avoid being bootloader dependent."

So can the 8k controller work using a 370 compatible : yes, if the
booloader enabled the NAND controller already, no otherwise. But in
practice it is the same controller.

Given this information I don't know whether it makes sense to qualify
the 8k controller compatible with the 370 compatible or not.
Indeed, a bit tricky decision. For me they could stay compatible,
because apparently programming model is the same or similar.

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help