nvidia xavier nx平台上精确时间协议(PTP)调试记录4
1. 前言
承接上篇 https://www.ebaina.com/articles/140000012553
2. linuxptp
来自linuxptp维护人员:
/dev/pps0使用的是软件时间戳
这对PTP GM来说是一个相对贫乏的资源。
有些板(但不是你的)有pps在直接时间戳。
一些imx6有这个。
仍然需要修改驱动程序,因为它只处理PPS-out,但是小于25ns精确一次运行
然而我希望启用SPE/ Apply SPE rtos补丁,
这样从gpio到timepulse信号的pin7将有更少的延迟。
我正在查看如下文件
/l4t-rt/rt-aux-cpu-demo/doc
在那里我只能找到AGX Xavier的说明,如何将rt-aux应用于NX!
此外,linuxptp的维护者建议:
你不能期望在GPIO上使用PPS的微秒精度。
独自中断延迟和抖动将导致太多的时间错误。
如果你的MAC上有这些东西,
cat /sys/class/ptp/ptp0/n_external_timestamps
然后安排PPS信号被准确地打上时间戳
就可以使用ts2phc程序MAC的PHC指向GPS的PPS。
在nx,我可以看到输出0
cat /sys/class/ptp/ptp0/n_external_timestamps
0
3.修改dts
这里有一个dts文件,执行以下操作
添加pps-gpio使用AON GPIO CC 7,这是引脚28在40引脚头(以前是I2C0_SCL)
使用AON GPIO DD 0添加nvpps,这是40引脚头上的引脚27(以前是I2C0_SDA)
启用Tegra通用时间戳引擎
使用AON gpio应该提供事件时间戳
注意:
如果想要ACTIVE_LOW而不是ACTIVE_HIGH,
将gpios行中最后一个" 0 "改为" 1 ",
如果不想捕获清除事件,删除" capture-clear "行。
/dts-v1/;
/plugin/;
/ {
overlay-name = "NX PPS NVPPS";
compatible = "nvidia,p3449-0000+p3668-0000", "nvidia,p3449-0000+p3668-0001", "nvidia,p3509-0000+p3668-0000", "nvidia,p3509-0000+p3668-0001", "nvidia,tegra194";
fragment@pps {
target-path = "/";
__overlay__ {
pps: pps_gpio {
compatible = "pps-gpio";
gpios = <&tegra_aon_gpio ((2 * 8) + 7) 0>;
capture-clear;
status = "okay";
};
};
};
fragment@nvpps {
target-path = "/";
__overlay__ {
nvpps {
compatible = "nvidia,tegra194-nvpps";
gpios = <&tegra_aon_gpio ((3 * 8) + 0) 0>;
status = "okay";
};
};
};
fragment@tegra_gte_aon {
target = < &tegra_gte_aon >;
__overlay__ {
status = "okay";
};
};
};
使用下面的命令编译并复制到/boot
dtc -I dts -O dtb -@ -o NX_PPS_NVPPS.dtbo NX_PPS_NVPPS.dts
4. ntp
没法正常工作
为我使用的默认版本的ntp提供与tyhe系统
cat /etc/udev/rules.d/99-gps.rules
KERNEL=="ttyACM0", SYMLINK+="gps0"
KERNEL=="pps0", MODE="0660", SYMLINK+="gpspps0"
ls /dev/gp
gpiochip0 gpiochip1 gpiochip2 gps0 gpspps0 gpu_freq_max gpu_freq_min
cat /etc/ntp.conf
...
server 127.127.20.0 mode 80 minpoll 3 burst iburst prefer
fudge 127.127.20.0 stratum 1 flag1 1 flag2 0 flag3 1 flag4 0 time1 0.0 time2 0.095 refid GPS0
server 127.127.28.0 minpoll 4
fudge 127.127.28.0 time1 0.183 refid NMEA
server 127.127.28.1 minpoll 4 prefer
fudge 127.127.28.1 refid PPS
service ntp start
ntpq -p
...
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
0.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
1.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
2.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
3.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
ntp.ubuntu.com .POOL. 16 p - 64 0 0.000 0.000 0.000
GPS_NMEA(0) .GPP0. 1 l - 8 0 0.000 0.000 0.000
SHM(0) .NMEA. 0 l - 16 0 0.000 0.000 0.000
SHM(1) .PPS. 0 l - 16 0 0.000 0.000 0.000
gpspipe -r
{"class":"VERSION","release":"3.17","rev":"3.17","proto_major":3,"proto_minor":12}
{"class":"DEVICES","devices":[{"class":"DEVICE","path":"/dev/ttyACM0","driver":"u-blox","activated":"2020-06-29T19:17:22.004Z","flags":1,"native":1,"bps":115200,"parity":"N","stopbits":1,"cycle":1.00,"mincycle":0.25}]}
{"class":"WATCH","enable":true,"json":false,"nmea":true,"raw":0,"scaled":false,"timing":false,"split24":false,"pps":false}
这可能是因为gpsd正在运行,正在声明端口
奇怪的是gps uart输出gpspipe -r将永远不会显示任何东西。
添加用户到拨号组。
ttyACM也不会通过gpspipe -r显示。
cat /dev/ttyTHS0 or /dev/ttyTHS1
fudge 127.127.20.0 stratum 1 flag1 1 flag2 0 flag3 1 flag4 0 time1 0.0 time2 0.095 refid GPS0
127.127.20是一个特殊的地址,意味着使用NMEA Refclock。
最后的.0表示查找/dev/gps0和/dev/gpspps0。
flag1 1 =开启PPS处理
flag2 0 =捕获上升边(设置为1以捕获下降边)
flag3 1 =使用内核规则
flag4 0 =关闭内部时间码中的位置
time1 = PPS时间偏移量(离开0)
time2 = PPS到GPRMC(或其他)句尾的偏移量。
- 分享
- 举报
-
浏览量:7481次2021-05-20 17:08:14
-
浏览量:9388次2021-05-25 17:31:40
-
浏览量:7084次2021-05-20 16:37:42
-
浏览量:9219次2021-05-19 17:32:00
-
浏览量:7417次2021-05-11 17:51:48
-
浏览量:8583次2021-05-14 14:43:43
-
浏览量:9456次2021-05-26 14:17:15
-
浏览量:9407次2021-04-27 17:56:41
-
2021-05-06 16:03:00
-
浏览量:10848次2021-05-06 16:22:01
-
浏览量:9360次2021-07-21 16:55:40
-
浏览量:6453次2021-04-21 17:42:58
-
浏览量:5249次2021-05-10 17:48:42
-
浏览量:7087次2021-05-11 17:04:57
-
2021-04-23 15:54:21
-
2021-04-27 16:19:04
-
浏览量:7940次2021-06-04 16:25:58
-
浏览量:7179次2021-07-31 15:26:23
-
浏览量:5901次2021-05-28 13:52:17
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
free-jdx
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明