ethtool: Expand documentation of struct ethtool_test
authorBen Hutchings <ben@decadent.org.uk>
Wed, 12 Feb 2014 22:14:38 +0000 (22:14 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 12 Feb 2014 22:33:03 +0000 (17:33 -0500)
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/ethtool.h

index e726340d1f8e5513e2bb6f41838bae64faadb27e..f246f3703ed870caa69c8c47f4d512005e7b45c5 100644 (file)
@@ -575,12 +575,25 @@ enum ethtool_test_flags {
        ETH_TEST_FL_EXTERNAL_LB_DONE    = (1 << 3),
 };
 
-/* for requesting NIC test and getting results*/
+/**
+ * struct ethtool_test - device self-test invocation
+ * @cmd: Command number = %ETHTOOL_TEST
+ * @flags: A bitmask of flags from &enum ethtool_test_flags.  Some
+ *     flags may be set by the user on entry; others may be set by
+ *     the driver on return.
+ * @len: On return, the number of test results
+ * @data: Array of test results
+ *
+ * Users must use %ETHTOOL_GSSET_INFO or %ETHTOOL_GDRVINFO to find the
+ * number of test results that will be returned.  They must allocate a
+ * buffer of the appropriate size (8 * number of results) immediately
+ * following this structure.
+ */
 struct ethtool_test {
-       __u32   cmd;            /* ETHTOOL_TEST */
-       __u32   flags;          /* ETH_TEST_FL_xxx */
+       __u32   cmd;
+       __u32   flags;
        __u32   reserved;
-       __u32   len;            /* result length, in number of u64 elements */
+       __u32   len;
        __u64   data[0];
 };