ptp: ocp: Fix PTP_PF_* verification requests
Update and check functionality for pin configuration requests:
PTP_PF_NONE: requests "IN: None", disabling the pin.
# testptp -d /dev/ptp3 -L3,0 -i1
set pin function okay
# cat sma4
IN: None
PTP_PF_EXTTS: should configure external timestamps, but since the
timecard can steer inputs to multiple inputs as well as timestamps,
allow the request, but don't change configurations.
# testptp -d /dev/ptp3 -L3,1 -i1
set pin function okay
(no functional or configuration change here yet)
PTP_PF_PEROUT: Channel 0 is the PHC, at 1PPS. Channels 1-4 are
the programmable frequency generators.
# fails because period is not 1PPS.
# testptp -d /dev/ptp3 -L3,2 -i0 -p
500000000
PTP_PEROUT_REQUEST: Invalid argument
# testptp -d /dev/ptp3 -L3,2 -i0 -p
1000000000
periodic output request okay
# cat sma4
OUT: PHC
# testptp -d /dev/ptp3 -L3,2 -i1 -p
500000000 -w
200000000
periodic output request okay
# cat sma4
OUT: GEN1
# cat gen1/signal
500000000 40 0 1 2022-03-10T23:55:26 TAI
# cat gen1/running
1
# testptp -d /dev/ptp3 -L3,2 -i1 -p 0
periodic output request okay
# cat gen1/running
0
Signed-off-by: Jonathan Lemon <jonathan.lemon@gmail.com>
Link: https://lore.kernel.org/r/20220315194626.1895-1-jonathan.lemon@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>