Skip to content

Commit d95bc30

Browse files
committed
fix(linux): Update CPSW-PTP timesync_router documentation with actual kernel definitions
Update timesync_router device tree examples in CPSW-PTP documentation to match the actual kernel implementation. Signed-off-by: Chintan Vankar <[email protected]>
1 parent c857e5b commit d95bc30

File tree

1 file changed

+69
-73
lines changed
  • source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network

1 file changed

+69
-73
lines changed

source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-PTP.rst

Lines changed: 69 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -237,63 +237,63 @@ through the Time Sync Router. The procedure to route the CPSWxG CPTS GENF0 outpu
237237
input for example, involves modifying the device-tree node of the Time Sync Router, to map the
238238
CPWSxG CPTS GENF0 output to HW4_TS_PUSH input.
239239

240-
The following block shows the Time Sync Router device-tree node with the mapping from CPSWxG CPTS
241-
GENF0 to HW4_TS_PUSH added.
242-
243240
.. ifconfig:: CONFIG_part_variant in ('AM62AX','AM62X')
244241

242+
The following block shows the Time Sync Router device-tree node with the mapping from CPSWxG CPTS
243+
GENF0 to HW3_TS_PUSH added.
244+
245245
.. code:: dts
246246
247-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
247+
/* Include following header file */
248+
#include <dt-bindings/timesync/k3-timesync-router.h>
249+
248250
&timesync_router {
249-
pinctrl-names = "default";
250-
pinctrl-0 = <&cpsw_cpts>;
251-
252-
/* Example of the timesync routing */
253-
cpsw_cpts: cpsw-cpts {
254-
pinctrl-single,pins = <
255-
/* pps [cpsw cpts genf0] in16 -> out13 [cpsw cpts hw4_push] */
256-
TS_OFFSET(13, 16)
257-
>;
258-
};
251+
/* Use Time Sync Router to map CPTS GENF outputs to HW_TS_PUSH inputs */
252+
mux-reg-masks-state = <
253+
/* pps [cpsw cpts genf1] in17 -> out12 [cpsw cpts hw3_push] */
254+
K3_TS_OFFSET(12, 0x0001ffff, 17)
255+
>;
256+
status = "okay";
259257
};
260258
261259
.. ifconfig:: CONFIG_part_variant in ('AM64X')
262260

261+
The following block shows the Time Sync Router device-tree node with the mapping from CPSWxG CPTS
262+
GENF0 to HW3_TS_PUSH and GENF1 to HW8_TS_PUSH added.
263+
263264
.. code:: dts
264265
265-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
266+
/* Include following header file */
267+
#include <dt-bindings/timesync/k3-timesync-router.h>
266268
267269
&timesync_router {
268-
pinctrl-names = "default";
269-
pinctrl-0 = <&cpsw_cpts>;
270-
271-
/* Example of the timesync routing */
272-
cpsw_cpts: cpsw-cpts {
273-
pinctrl-single,pins = <
274-
/* pps [cpsw cpts genf0] in21 -> out33 [cpsw cpts hw4_push] */
275-
TS_OFFSET(33, 21)
276-
>;
277-
};
270+
/* Use Time Sync Router to map CPTS GENF outputs to HW_TS_PUSH inputs */
271+
mux-reg-masks-state = <
272+
/* pps [cpsw cpts genf0] in29 -> out23 [cpsw cpts hw4_push] */
273+
K3_TS_OFFSET(23, 0x0001ffff, 29)
274+
/* pps [cpsw cpts genf1] in22 -> out37 [cpsw cpts hw8_push] */
275+
K3_TS_OFFSET(37, 0x0001ffff, 22)
276+
>;
277+
status = "okay";
278278
};
279279
280280
.. ifconfig:: CONFIG_part_variant in ('J721E','J7200','J721S2','J784S4','J742S2')
281281

282+
The following block shows the Time Sync Router device-tree node with the mapping from CPSWxG CPTS
283+
GENF1 to HW4_TS_PUSH added.
284+
282285
.. code:: dts
283286
284-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
287+
/* Include following header file */
288+
#include <dt-bindings/timesync/k3-timesync-router.h>
285289
286290
&timesync_router {
287-
pinctrl-names = "default";
288-
pinctrl-0 = <&cpsw_cpts>;
289-
290-
/* Example of the timesync routing */
291-
cpsw_cpts: cpsw-cpts {
292-
pinctrl-single,pins = <
293-
/* pps [cpsw cpts genf0] in16 -> out25 [cpsw cpts hw4_push] */
294-
TS_OFFSET(25, 16)
295-
>;
296-
};
291+
/* Use Time Sync Router to map CPTS GENF outputs to HW_TS_PUSH inputs */
292+
mux-reg-masks-state = <
293+
/* pps [cpsw cpts genf1] in17 -> out25 [cpsw cpts hw4_push] */
294+
K3_TS_OFFSET(25, 0x0001ffff, 17)
295+
>;
296+
status = "okay";
297297
};
298298
299299
Similar approach can be used for routing the outputs of other timestamp generator functions (GENFy)
@@ -391,62 +391,58 @@ The PPS support for |__PART_FAMILY_DEVICE_NAMES__| can be enabled with the follo
391391
CPSWxG CPTS timestamp generator inputs (HWx_TS_PUSH) using the Time Sync Router, by
392392
modifying the device-tree node corresponding to the Time Sync Router:
393393

394-
For example, route CPSWxG CPTS GENF1 output to HW3_TS_PUSH input
395-
396394
.. ifconfig:: CONFIG_part_variant in ('AM62AX','AM62X')
397395

396+
For example, route CPSWxG CPTS GENF1 output to HW3_TS_PUSH input for PPS generation:
397+
398398
.. code:: dts
399399
400-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
400+
/* Include following header file */
401+
#include <dt-bindings/timesync/k3-timesync-router.h>
401402
402403
&timesync_router {
403-
pinctrl-names = "default";
404-
pinctrl-0 = <&cpsw_cpts>;
405-
406-
/* Example of timesync routing */
407-
cpsw_cpts: cpsw-cpts {
408-
pinctrl-single,pins = <
409-
/* pps [cpsw cpts genf1] in17 -> out12 [cpsw cpts hw3_push] */
410-
TS_OFFSET(12, 17)
411-
>;
412-
};
404+
/* Use Time Sync Router to map CPTS GENF1 to HW3_TS_PUSH for PPS */
405+
mux-reg-masks-state = <
406+
/* pps [cpsw cpts genf1] in17 -> out12 [cpsw cpts hw3_push] */
407+
K3_TS_OFFSET(12, 0x0001ffff, 17)
408+
>;
409+
status = "okay";
413410
};
414411
415412
.. ifconfig:: CONFIG_part_variant in ('AM64X')
416413

417-
.. code:: dts
414+
For example, route CPSWxG CPTS GENF1 output to HW3_TS_PUSH input for PPS generation:
415+
416+
.. code:: dts
417+
418+
/* Include following header file */
419+
#include <dt-bindings/timesync/k3-timesync-router.h>
418420
419-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
420421
&timesync_router {
421-
pinctrl-names = "default";
422-
pinctrl-0 = <&cpsw_cpts>;
423-
424-
/* Example of timesync routing */
425-
cpsw_cpts: cpsw-cpts {
426-
pinctrl-single,pins = <
427-
/* pps [cpsw cpts genf1] in22 -> out32 [cpsw cpts hw3_push] */
428-
TS_OFFSET(32, 22)
429-
>;
430-
};
422+
/* Use Time Sync Router to map CPTS GENF1 to HW3_TS_PUSH for PPS */
423+
mux-reg-masks-state = <
424+
/* pps [cpts genf1] in22 -> out32 [cpts hw3_push] */
425+
K3_TS_OFFSET(32, 0x0001ffff, 22)
426+
>;
427+
status = "okay";
431428
};
432429
433430
.. ifconfig:: CONFIG_part_variant in ('J721E','J7200','J721S2','J784S4','J742S2')
434431

435-
.. code:: dts
432+
For example, route CPSWxG CPTS GENF1 output to HW4_TS_PUSH input for PPS generation:
433+
434+
.. code:: dts
436435
437-
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
436+
/* Include following header file */
437+
#include <dt-bindings/timesync/k3-timesync-router.h>
438438
439439
&timesync_router {
440-
pinctrl-names = "default";
441-
pinctrl-0 = <&cpsw_cpts>;
442-
443-
/* Example of timesync routing */
444-
cpsw_cpts: cpsw-cpts {
445-
pinctrl-single,pins = <
446-
/* pps [cpsw cpts genf1] in17 -> out24 [cpsw cpts hw3_push] */
447-
TS_OFFSET(24, 17)
448-
>;
449-
};
440+
/* Use Time Sync Router to map CPTS GENF1 to HW4_TS_PUSH for PPS */
441+
mux-reg-masks-state = <
442+
/* pps [mcu cpsw cpts genf1] in17 -> out25 [mcu cpsw cpts hw4_push] */
443+
K3_TS_OFFSET(25, 0x0001ffff, 17)
444+
>;
445+
status = "okay";
450446
};
451447
452448
2. Inform the mapping to the CPSWxG driver, by using the "ti,pps" device-tree property

0 commit comments

Comments
 (0)