AnsweredAssumed Answered

Linuxptp-2 on MPC8315 board

Question asked by gourav jain on Jun 3, 2019
Latest reply on Jun 5, 2019 by bpe

Hello All,

I'm trying to configure IEEE 1588 PTP on my board based on MPC8315 chipset.

Kernel version: 3.12

kernel have two related files,

1) gianfar.c

2)gainfar_ptp.c (kept some prints and getting while testing)

 

Modified dts file and did some kernel configuration,

dts file changes,

 

ptp_clock@24E00 {
         compatible = "fsl,etsec-ptp";
         reg = <0x24E00 0xB0>;
/*
interrupts = <12 0x8 13 0x8>;
interrupt-parent = < &ipic >;
*/
         interrupts = <12 0x8>;
         interrupt-parent = < &ipic >;
         fsl,tclk-period = <10>;
         fsl,tmr-prsc = <100>;
         fsl,tmr-add = <0x999999A4>;
         fsl,tmr-fiper1 = <0x3B9AC9F6>;
         fsl,tmr-fiper2 = <0x00018696>;
         fsl,max-adj = <659999998>;
};

 

Kernel configuration: 

      enabled following flags,

                  1) CONFIG_PPS

                  2) CONFIG_NETWORK_PHY_TIMESTAMPING

                  3) PTP_1588_CLOCK

I guess my kernel is configured now.

 

After that, I have cross compiled "linuxptp-2 " and try to run ptp4l application on board and getting following messages,

 

ethtool -T eth1
Time stamping parameters for eth1:
Capabilities:
hardware-transmit (SOF_TIMESTAMPING_TX_HARDWARE)
hardware-receive (SOF_TIMESTAMPING_RX_HARDWARE)
hardware-raw-clock (SOF_TIMESTAMPING_RAW_HARDWARE)
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes:
off (HWTSTAMP_TX_OFF)
on (HWTSTAMP_TX_ON)
Hardware Receive Filter Modes:
none (HWTSTAMP_FILTER_NONE)
all (HWTSTAMP_FILTER_ALL)

 

1) My doubt is why software capabilities are missing here ?? How to add those ??

 

./ptp4l -S -i eth1 -H -m
ptp4l main
GJ: HW Timestamping
GJ: ptp_gianfar_adjfreq

ptp4l[423975.934]: selected /dev/ptp0 as PTP clock
GJ: EV_INIT_COMPLETE
ptp4l[423975.942]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
GJ: EV_INIT_COMPLETE
ptp4l[423975.944]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[423982.456]: port 1: LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[423982.456]: selected local clock 002488.fffe.003ca3 as best master
ptp4l[423982.456]: assuming the grand master role
GJ: TS_HARDWARE
ptp4l[423983.460]: missing timestamp on transmitted sync
ptp4l[423983.461]: port 1: MASTER to FAULTY on FAULT_DETECTED (FT_UNSPECIFIED)

2) Above, while running ptp4l in slave mode, why timestamp is missing and getting faulty message???

 

3) Whats the difference between ptp4l and ptpd application ???

 

Kindly advice me what went wrong and how to debug....

 

thanks,

Gourav

Outcomes