testptp: set pin function before other requests
authorMiroslav Lichvar <mlichvar@redhat.com>
Wed, 5 Jan 2022 15:25:06 +0000 (16:25 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 6 Jan 2022 01:08:58 +0000 (17:08 -0800)
When the -L option of the testptp utility is specified with other
options (e.g. -p to enable PPS output), the user probably wants to
apply it to the pin configured by the -L option.

Reorder the code to set the pin function before other function requests
to avoid confusing users.

Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Acked-by: Richard Cochran <richardcochran@gmail.com>
Link: https://lore.kernel.org/r/20220105152506.3256026-1-mlichvar@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/ptp/testptp.c

index f7911aaeb0075734e11251fa10d4f10726e22e34..c0f6a062364d03b61b982ed2d3d0131e8b0c7735 100644 (file)
@@ -354,6 +354,18 @@ int main(int argc, char *argv[])
                }
        }
 
+       if (pin_index >= 0) {
+               memset(&desc, 0, sizeof(desc));
+               desc.index = pin_index;
+               desc.func = pin_func;
+               desc.chan = index;
+               if (ioctl(fd, PTP_PIN_SETFUNC, &desc)) {
+                       perror("PTP_PIN_SETFUNC");
+               } else {
+                       puts("set pin function okay");
+               }
+       }
+
        if (extts) {
                memset(&extts_request, 0, sizeof(extts_request));
                extts_request.index = index;
@@ -444,18 +456,6 @@ int main(int argc, char *argv[])
                }
        }
 
-       if (pin_index >= 0) {
-               memset(&desc, 0, sizeof(desc));
-               desc.index = pin_index;
-               desc.func = pin_func;
-               desc.chan = index;
-               if (ioctl(fd, PTP_PIN_SETFUNC, &desc)) {
-                       perror("PTP_PIN_SETFUNC");
-               } else {
-                       puts("set pin function okay");
-               }
-       }
-
        if (pps != -1) {
                int enable = pps ? 1 : 0;
                if (ioctl(fd, PTP_ENABLE_PPS, enable)) {