summaryrefslogtreecommitdiffstats
path: root/kernel/tools/lib/traceevent/plugin_cfg80211.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/tools/lib/traceevent/plugin_cfg80211.c')
-rw-r--r--kernel/tools/lib/traceevent/plugin_cfg80211.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/kernel/tools/lib/traceevent/plugin_cfg80211.c b/kernel/tools/lib/traceevent/plugin_cfg80211.c
new file mode 100644
index 000000000..4592d8438
--- /dev/null
+++ b/kernel/tools/lib/traceevent/plugin_cfg80211.c
@@ -0,0 +1,29 @@
+#include <stdio.h>
+#include <string.h>
+#include <inttypes.h>
+#include <endian.h>
+#include "event-parse.h"
+
+static unsigned long long
+process___le16_to_cpup(struct trace_seq *s, unsigned long long *args)
+{
+ uint16_t *val = (uint16_t *) (unsigned long) args[0];
+ return val ? (long long) le16toh(*val) : 0;
+}
+
+int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
+{
+ pevent_register_print_function(pevent,
+ process___le16_to_cpup,
+ PEVENT_FUNC_ARG_INT,
+ "__le16_to_cpup",
+ PEVENT_FUNC_ARG_PTR,
+ PEVENT_FUNC_ARG_VOID);
+ return 0;
+}
+
+void PEVENT_PLUGIN_UNLOADER(struct pevent *pevent)
+{
+ pevent_unregister_print_function(pevent, process___le16_to_cpup,
+ "__le16_to_cpup");
+}