Hi,KevinFFF:
Thanks for your replay.
Dmesg query PPS loading error occurred:
nvidia@nvidia-desktop:~$ sudo dmesg | grep pps
[ 1.333500] pps_core: LinuxPPS API ver. 1 registered
[ 1.338461] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 3.986464] pps pps0: new PPS source ktimer
[ 3.990771] pps pps0: ktimer PPS source registered
[ 3.995700] pps_ldisc: PPS line discipline registered
[ 4.000955] pps-gpio pps_gpio: failed to request PPS GPIO
[ 4.006493] pps-gpio: probe of pps_gpio failed with error -22
[ 9.643250] pps pps1: new PPS source ptp0
dmesg file:
dmesg.log (69.8 KB)
check PGPIO_PY.03:
root@nvidia-desktop:~# cat /sys/kernel/debug/gpio | grep PY.03
gpio-473 (PY.03 )
root@nvidia-desktop:~#
root@nvidia-desktop:~# cat /sys/kernel/debug/gpio | grep PY.03
gpio-473 (PY.03 )
root@nvidia-desktop:~# echo 473 > /sys/class/gpio/export
root@nvidia-desktop:~#
root@nvidia-desktop:~# cd /sys/class/gpio/PY.03
root@nvidia-desktop:/sys/class/gpio/PY.03# cat direction
in
root@nvidia-desktop:/sys/class/gpio/PY.03# cat edge
none
root@nvidia-desktop:/sys/class/gpio/PY.03# ls
active_low device direction edge power subsystem uevent value
gpio config:
spi3_cs0_py3 {
nvidia,pins = "spi3_cs0_py3";
nvidia,function = "rsvd1";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_DISABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
check interrupts:
root@nvidia-desktop:/sys/class/gpio/PY.03# cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
9: 0 0 0 0 GICv3 25 Level vgic
11: 0 0 0 0 GICv3 30 Level kvm guest ptimer
12: 0 0 0 0 GICv3 27 Level kvm guest vtimer
13: 92569 60568 58880 56418 GICv3 26 Level arch_timer
18: 0 0 0 0 GICv3 255 Level mc_status
20: 0 0 0 0 GICv3 202 Level arm-smmu global fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault
21: 0 0 0 0 GICv3 264 Level arm-smmu global fault, arm-smmu-context-fault
22: 0 0 0 0 GICv3 272 Level arm-smmu global fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault
23: 0 0 0 0 GICv3 270 Level arm-smmu global fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault, arm-smmu-context-fault
24: 0 0 0 0 GICv3 274 Level arm-smmu global fault, arm-smmu-context-fault
25: 0 0 0 0 GICv3 263 Level 13a00000.cbb-fabric
26: 0 0 0 0 GICv3 204 Level c600000.aon-fabric
27: 0 0 0 0 GICv3 206 Level d600000.bpmp-fabric
28: 0 0 0 0 GICv3 413 Level de00000.dce-fabric
29: 0 0 0 0 GICv3 207 Level be00000.rce-fabric
30: 0 0 0 0 GICv3 205 Level b600000.sce-fabric
31: 0 0 0 0 GICv3 368 Level tegra-p2u-intr
32: 0 0 0 0 GICv3 369 Level tegra-p2u-intr
33: 0 0 0 0 GICv3 370 Level tegra-p2u-intr
34: 0 0 0 0 GICv3 371 Level tegra-p2u-intr
35: 0 0 0 0 GICv3 372 Level tegra-p2u-intr
36: 0 0 0 0 GICv3 373 Level tegra-p2u-intr
37: 0 0 0 0 GICv3 374 Level tegra-p2u-intr
38: 0 0 0 0 GICv3 375 Level tegra-p2u-intr
39: 0 0 0 0 GICv3 376 Level tegra-p2u-intr
40: 0 0 0 0 GICv3 377 Level tegra-p2u-intr
41: 0 0 0 0 GICv3 378 Level tegra-p2u-intr
42: 0 0 0 0 GICv3 379 Level tegra-p2u-intr
43: 0 0 0 0 GICv3 380 Level tegra-p2u-intr
44: 0 0 0 0 GICv3 381 Level tegra-p2u-intr
45: 0 0 0 0 GICv3 382 Level tegra-p2u-intr
46: 0 0 0 0 GICv3 383 Level tegra-p2u-intr
47: 0 0 0 0 GICv3 235 Level tegra-p2u-intr
48: 0 0 0 0 GICv3 252 Level tegra-p2u-intr
49: 0 0 0 0 GICv3 253 Level tegra-p2u-intr
50: 0 0 0 0 GICv3 254 Level tegra-p2u-intr
51: 0 0 0 0 GICv3 140 Level tegra-p2u-intr
52: 0 0 0 0 GICv3 141 Level tegra-p2u-intr
53: 0 0 0 0 GICv3 142 Level tegra-p2u-intr
54: 0 0 0 0 GICv3 143 Level tegra-p2u-intr
55: 0 0 0 0 GICv3 77 Level tegra-pcie-intr, PCIe PME, aerdrv
57: 0 0 0 0 GICv3 83 Level tegra-pcie-intr, PCIe PME, aerdrv
59: 0 0 0 0 GICv3 386 Level tegra-pcie-intr
61: 0 0 0 0 GICv3 388 Level tegra-pcie-intr, PCIe PME, aerdrv
63: 0 0 0 0 GICv3 390 Level tegra-pcie-intr, PCIe PME, aerdrv
67: 671 0 0 0 GICv3 317 Level uart-pl011
68: 0 0 0 0 GICv3 152 Level 3c00000.tegra-hsp
69: 0 0 0 0 GICv3 68 Level 3210000.spi
70: 0 0 0 0 GICv3 70 Level 3230000.spi
71: 51 0 0 0 GICv3 57 Level 3160000.i2c
72: 78 0 0 0 GICv3 58 Level c240000.i2c
73: 2 0 0 0 GICv3 59 Level 3180000.i2c
74: 0 0 0 0 GICv3 60 Level 3190000.i2c
75: 0 0 0 0 GICv3 62 Level 31b0000.i2c
76: 0 0 0 0 GICv3 63 Level 31c0000.i2c
77: 0 0 0 0 GICv3 64 Level c250000.i2c
78: 0 0 0 0 GICv3 65 Level 31e0000.i2c
80: 0 0 0 0 GICv3 108 Level gpcdma.0
81: 0 0 0 0 GICv3 109 Level gpcdma.1
82: 0 0 0 0 GICv3 110 Level gpcdma.2
83: 0 0 0 0 GICv3 111 Level gpcdma.3
84: 0 0 0 0 GICv3 112 Level gpcdma.4
85: 0 0 0 0 GICv3 113 Level gpcdma.5
86: 0 0 0 0 GICv3 114 Level gpcdma.6
87: 0 0 0 0 GICv3 115 Level gpcdma.7
88: 0 0 0 0 GICv3 116 Level gpcdma.8
89: 0 0 0 0 GICv3 117 Level gpcdma.9
90: 0 0 0 0 GICv3 118 Level gpcdma.10
91: 0 0 0 0 GICv3 119 Level gpcdma.11
92: 0 0 0 0 GICv3 120 Level gpcdma.12
93: 0 0 0 0 GICv3 121 Level gpcdma.13
94: 0 0 0 0 GICv3 122 Level gpcdma.14
95: 0 0 0 0 GICv3 123 Level gpcdma.15
96: 0 0 0 0 GICv3 124 Level gpcdma.16
97: 0 0 0 0 GICv3 125 Level gpcdma.17
98: 0 0 0 0 GICv3 126 Level gpcdma.18
99: 0 0 0 0 GICv3 127 Level gpcdma.19
113: 5554 0 0 0 GICv3 92 Level snd_hda_tegra
114: 0 0 0 0 GICv3 51 Level bc00000.rtcpu
115: 196 0 0 0 GICv3 242 Level d230000.actmon
116: 0 0 0 0 GICv3 23 Level arm-pmu
117: 0 0 0 0 GICv3 579 Level arm_dsu_0
118: 0 0 0 0 GICv3 580 Level arm_dsu_1
119: 0 0 0 0 GICv3 581 Level arm_dsu_2
120: 0 0 0 0 GICv3 583 Level scf-pmu
121: 0 0 0 0 GICv3 398 Level e860000.psc
122: 0 0 0 0 GICv3 399 Level e860000.psc
123: 0 0 0 0 GICv3 400 Level e860000.psc
124: 0 0 0 0 GICv3 401 Level e860000.psc
125: 0 0 0 0 GICv3 402 Level e860000.psc
126: 0 0 0 0 GICv3 403 Level e860000.psc
127: 0 0 0 0 GICv3 404 Level e860000.psc
128: 0 0 0 0 GICv3 405 Level e860000.psc
129: 232083 0 0 0 GICv3 480 Level host_syncpt
130: 0 0 0 0 GICv3 481 Level host_syncpt
131: 0 0 0 0 GICv3 482 Level host_syncpt
132: 0 0 0 0 GICv3 483 Level host_syncpt
133: 0 0 0 0 GICv3 484 Level host_syncpt
134: 0 0 0 0 GICv3 485 Level host_syncpt
135: 0 0 0 0 GICv3 486 Level host_syncpt
136: 0 0 0 0 GICv3 487 Level host_syncpt
137: 0 0 0 0 GICv3 295 Level host_status
138: 0 0 0 0 GICv3 238 Level vic
139: 0 0 0 0 GICv3 260 Level tsec_riscv_irq
140: 0 0 0 0 GICv3 266 Level pva-isr
141: 0 0 0 0 GICv3 464 Level pva-isr
142: 0 0 0 0 GICv3 465 Level pva-isr
143: 0 0 0 0 GICv3 466 Level pva-isr
144: 0 0 0 0 GICv3 467 Level pva-isr
145: 0 0 0 0 GICv3 468 Level pva-isr
146: 0 0 0 0 GICv3 469 Level pva-isr
147: 0 0 0 0 GICv3 470 Level pva-isr
148: 0 0 0 0 GICv3 471 Level pva-isr
149: 0 0 0 0 GICv3 268 Level nvdla0
150: 11330 0 0 0 GICv3 165 Level c150000.tegra-hsp
154: 47718 0 0 0 GICv3 208 Level 3c00000.tegra-hsp
162: 1 0 0 0 GICv3 160 Level 3d00000.tegra-hsp
167: 116 0 0 0 GICv3 214 Level b950000.tegra-hsp
171: 0 0 0 0 GICv3 316 Level tegra-se-nvrng
224: 13 0 0 0 GICv3 39 Level 2190000.watchdog
228: 0 0 0 0 GICv3 199 Level 3610000.xhci
229: 2202 0 0 0 GICv3 198 Level 3550000.xudc
230: 3864 0 0 0 GICv3 195 Level xhci-hcd:usb1
231: 0 0 0 0 GICv3 196 Level 3610000.xhci
232: 0 0 0 0 GICv3 100 Level gk20a_stall
233: 29 0 0 0 GICv3 102 Level gk20a_stall
234: 2493 0 0 0 GICv3 103 Level gk20a_stall
235: 0 0 0 0 GICv3 99 Level gk20a_nonstall
236: 0 0 0 0 GICv3 408 Level tegra_dce_isr
237: 6784 0 0 0 GICv3 409 Level tegra_dce_isr
245: 0 0 0 0 c360000.pmc 73 Level tegra_rtc
246: 1 0 0 0 c360000.pmc 24 Level nvvrs-pseq-irq
247: 1 0 0 0 nvvrs-pseq-irq 3 Edge rtc-alarm
249: 45 0 0 0 agic-controller 73 Edge
250: 23 0 0 0 agic-controller 64 Edge
252: 22 0 0 0 agic-controller 94 Edge
262: 3538 0 0 0 agic-controller 32 Level dma1chan0
263: 53 0 0 0 agic-controller 33 Level
294: 17 0 0 0 MSI 537395200 Edge nvme0q0
295: 2770 0 0 0 MSI 537395201 Edge nvme0q1
296: 0 4485 0 0 MSI 537395202 Edge nvme0q2
297: 0 0 5833 0 MSI 537395203 Edge nvme0q3
298: 0 0 0 5223 MSI 537395204 Edge nvme0q4
299: 0 0 0 0 MSI 537395205 Edge nvme0q5
300: 0 0 0 0 MSI 537395206 Edge nvme0q6
301: 0 0 0 0 MSI 1208483840 Edge eth0
302: 198 0 0 0 MSI 1208483841 Edge eth0-TxRx-0
303: 198 0 0 0 MSI 1208483842 Edge eth0-TxRx-1
304: 198 0 0 0 MSI 1208483843 Edge eth0-TxRx-2
305: 198 0 0 0 MSI 1208483844 Edge eth0-TxRx-3
307: 0 0 0 0 c360000.pmc 83 Edge sw-wake
308: 0 0 0 0 gpio 35 Edge force-recovery
309: 0 0 0 0 gpio 27 Edge power-key
310: 224769 0 0 0 MSI 1074266112 Edge eth1
311: 2 0 0 0 gpio 131 Level 1-0025
IPI0: 120021 222795 224000 219754 Rescheduling interrupts
IPI1: 4709 5094 5396 3392 Function call interrupts
IPI2: 0 0 0 0 CPU stop interrupts
IPI3: 0 0 0 0 CPU stop (for crash dump) interrupts
IPI4: 0 0 0 0 Timer broadcast interrupts
IPI5: 14942 6963 7748 7041 IRQ work interrupts
IPI6: 0 0 0 0 CPU wake-up interrupts
Err: 0
my pps config:
pps: pps_gpio
{
compatible = "pps-gpio";
gpios = <&tegra_main_gpio TEGRA234_MAIN_GPIO(Y, 3) GPIO_ACTIVE_HIGH>;
status = "okay";
interrupts = <TEGRA234_MAIN_GPIO(Y, 3) IRQ_TYPE_EDGE_RISING>;
assert-falling-edge;
interrupt-parent = <&tegra_main_gpio>;
};
ppstest:
root@nvidia-desktop:/sys/class/gpio/PY.03# ppstest /dev/pps0
trying PPS source "/dev/pps0"
found PPS source "/dev/pps0"
ok, found 1 source(s), now start fetching data...
source 0 - assert 1744961675.606500352, sequence: 688 - clear 0.000000000, sequence: 0
source 0 - assert 1744961676.634516256, sequence: 689 - clear 0.000000000, sequence: 0
source 0 - assert 1744961677.654493376, sequence: 690 - clear 0.000000000, sequence: 0
^C
root@nvidia-desktop:/sys/class/gpio/PY.03#
root@nvidia-desktop:/sys/class/gpio/PY.03# ppstest /dev/pps1
trying PPS source "/dev/pps1"
found PPS source "/dev/pps1"
ok, found 1 source(s), now start fetching data...
time_pps_fetch() error -1 (Connection timed out)
time_pps_fetch() error -1 (Connection timed out)
^C
It seems that PPS is not working correctly.