Linux Audio

Check our new training course

Loading...
v3.15
 1#include <stdio.h>
 2#include <string.h>
 3#include <inttypes.h>
 4#include <endian.h>
 5#include "event-parse.h"
 6
 
 
 
 
 
 
 
 
 
 
 
 
 
 7static unsigned long long
 8process___le16_to_cpup(struct trace_seq *s,
 9		       unsigned long long *args)
10{
11	uint16_t *val = (uint16_t *) (unsigned long) args[0];
12	return val ? (long long) le16toh(*val) : 0;
13}
14
15int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
16{
17	pevent_register_print_function(pevent,
18				       process___le16_to_cpup,
19				       PEVENT_FUNC_ARG_INT,
20				       "__le16_to_cpup",
21				       PEVENT_FUNC_ARG_PTR,
22				       PEVENT_FUNC_ARG_VOID);
23	return 0;
24}
25
26void PEVENT_PLUGIN_UNLOADER(struct pevent *pevent)
27{
28	pevent_unregister_print_function(pevent, process___le16_to_cpup,
29					 "__le16_to_cpup");
30}
v4.10.11
 1#include <stdio.h>
 2#include <string.h>
 3#include <inttypes.h>
 4#include <endian.h>
 5#include "event-parse.h"
 6
 7/*
 8 * From glibc endian.h, for older systems where it is not present, e.g.: RHEL5,
 9 * Fedora6.
10 */
11#ifndef le16toh
12# if __BYTE_ORDER == __LITTLE_ENDIAN
13#  define le16toh(x) (x)
14# else
15#  define le16toh(x) __bswap_16 (x)
16# endif
17#endif
18
19
20static unsigned long long
21process___le16_to_cpup(struct trace_seq *s, unsigned long long *args)
 
22{
23	uint16_t *val = (uint16_t *) (unsigned long) args[0];
24	return val ? (long long) le16toh(*val) : 0;
25}
26
27int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
28{
29	pevent_register_print_function(pevent,
30				       process___le16_to_cpup,
31				       PEVENT_FUNC_ARG_INT,
32				       "__le16_to_cpup",
33				       PEVENT_FUNC_ARG_PTR,
34				       PEVENT_FUNC_ARG_VOID);
35	return 0;
36}
37
38void PEVENT_PLUGIN_UNLOADER(struct pevent *pevent)
39{
40	pevent_unregister_print_function(pevent, process___le16_to_cpup,
41					 "__le16_to_cpup");
42}