Thread (32 messages) 32 messages, 4 authors, 2022-12-08

Re: [PATCH v2 7/9] dt-bindings: spi: mtk-snfi: Add read latch latency property

From: Xiangsheng Hou (侯祥胜) <hidden>
Date: 2022-12-08 01:15:47
Also in: linux-devicetree, linux-mediatek, linux-spi, lkml

On Wed, 2022-12-07 at 10:48 +0100, AngeloGioacchino Del Regno wrote:
Il 07/12/22 03:00, Xiangsheng Hou (侯祥胜) ha scritto:
quoted
Hi Angelo,

On Tue, 2022-12-06 at 13:19 +0100, AngeloGioacchino Del Regno
wrote:
quoted
quoted
quoted
quoted
diff --git
a/Documentation/devicetree/bindings/spi/mediatek,spi-
mtk-snfi.yaml
b/Documentation/devicetree/bindings/spi/mediatek,spi-
mtk-snfi.yaml
index bab23f1b11fd..6e6ff8d73fcd 100644
--- a/Documentation/devicetree/bindings/spi/mediatek,spi-
mtk-
snfi.yaml
+++ b/Documentation/devicetree/bindings/spi/mediatek,spi-
mtk-
snfi.yaml
@@ -45,6 +45,13 @@ properties:
        description: device-tree node of the accompanying
ECC
engine.
        $ref: /schemas/types.yaml#/definitions/phandle
    
+  mediatek,rx-latch-latency:
+    description: Rx delay to sample data with this value,
the
value
+                 unit is clock cycle.
Can't we use nanoseconds or microseconds as a unit here,
instead
of
clock cycles?
The clock cycle will be various with MediaTek SPI NAND
controller
which
clock frequency can support 26/52/68/81/104MHz...
It`s may be easy to configure and understand with clock cycle
in
unit.
Yes, but whatever clock frequency we use, the target is to always
wait for
X nanoseconds, right?

Waiting for 5 clock cycles at 104MHz is obviously not the same as
waiting
for the same 5 clock cycles at 26MHz: in that case, expressing
the
value
in nanoseconds or microseconds would make that independent from
the
controller's clock frequency as the calculation from `time` to
`cycles`
would be performed inside of the driver.
There have two rx related timing properties in spi-peripheral-
props.
The rx-sample-delay-ns have been used in Mediatek snfi driver to
adjust
controller sample delay.
However another spi-rx-delay-us is in microseconds. Take 52MHz for
example, the clock cycle will be 19.23ns which lower than 1us. This
may
not easy to by one clock cycle.
I agree, but nothing prevents you from adding your own property for
that.

I propose "mediatek,rx-latch-latency-ns" or "mediatek,rx-latency-ns", 
so that
we can specify the delay in nanoseconds: in that case, when we
specify 19ns,
the driver will safely round that resulting in 52MHz == 19.23ns =>
19ns valid.
Will be fixed in next series.

Thanks
Xiangsheng Hou
_______________________________________________
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