Hello,
I’m trying to set up a PPS input for the Jetson AGX Orin Devkit.
I connected the PPS signal to pin 23 of the 40-pin header. I then added the following device tree overlay:
/dts-v1/;
/plugin/;
/ {
compatible = "nvidia,p3737-0000+p3701-0005";
overlay-name = "PPS Overlay";
jetson-header-name = "Jetson 40pin Header";
fragment@0 {
target-path = "/";
__overlay__ {
pps: pps-gpio {
status = "okay";
compatible = "pps-gpio";
gpios = <&gpio 155 1>;
assert-falling-edge;
};
};
};
};
I calculated the ID 155 from the pinmux sheet and the definition in the kernel headers.
With this, a pps input shows up in /dev/pps1, and I get the following in the kernel logs:
[ 4.168319] pps pps1: new PPS source pps-gpio.-1
[ 4.168353] pps pps1: Registered IRQ 233 as PPS source
If I run watch -n 0.1 'cat /proc/interrupts | grep 233' I can see that I get one interrupt per second from that pin.
If I however try to run ppstest it times out:
# sudo 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)
time_pps_fetch() error -1 (Connection timed out)
time_pps_fetch() error -1 (Connection timed out)
Shouldn’t this be enough to get ppstest to work? What am I missing?
Thank you in advance!
Ole