Thread (8 messages) 8 messages, 4 authors, 2025-10-13

Re: [PATCH 2/2] can: add Transmitter Delay Compensation (TDC) documentation

From: Simon Horman <horms@kernel.org>
Date: 2025-10-13 09:42:04
Also in: linux-can, linux-doc, lkml

On Sun, Oct 12, 2025 at 08:23:43PM +0900, Vincent Mailhol wrote:

...
quoted hunk ↗ jump to hunk
@@ -1464,6 +1464,66 @@ Example when 'fd-non-iso on' is added on this switchable CAN FD adapter::
    can <FD,FD-NON-ISO> state ERROR-ACTIVE (berr-counter tx 0 rx 0) restart-ms 0
 
 
+Transmitter Delay Compensation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+At high bit rates, the propagation delay from the TX pin to the RX pin of
+the transceiver might become greater than the actual bit time causing
+measurement errors: the RX pin would still be measuring the previous bit.
+
+The Transmitter Delay Compensation (thereafter, TDC) resolves this problem
+by introducing a Secondary Sample Point (SSP) equal to the distance, in
+minimum time quantum, from the start of the bit time on the TX pin to the
+actual measurement on the RX pin. The SSP is calculated as the sum of two
+configurable values: the TDC Value (TDCV) and the TDC offset (TDCO).
+
+TDC, if supported by the device, can be configured together with CAN-FD
+using the ip tool's "tdc-mode" argument as follow::
+
+- **omitted**: when no "tdc-mode" option is provided, the kernel will
Hi Vincent,

I'm unsure why, but make htmldocs reports:

.../can.rst:1484: ERROR: Unexpected indentation. [docutils]
+  automatically decide whether TDC should be turned on, in which case it
+  will calculate a default TDCO and use the TDCV as measured by the
+  device. This is the recommended method to use TDC.
...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help