1 /*
2  * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
3  *               Frank Mehnert <fm3@os.inf.tu-dresden.de>,
4  *               Jork Löser <jork@os.inf.tu-dresden.de>
5  *     economic rights: Technische Universität Dresden (Germany)
6  * This file is part of TUD:OS and distributed under the terms of the
7  * GNU Lesser General Public License 2.1.
8  * Please see the COPYING-LGPL-2.1 file for details.
9  */
10 /**
11  * \brief   lib for performance measurement counters.
12  */
13 
14 #include <l4/sys/types.h>
15 
16 #define CONFIG_PERFORM_ONLY_PROTOTYPES
17 #include <l4/util/perform.h>
18 
19 typedef struct
20 {
21   l4_uint32_t index;
22   const char *string;
23 } event_entry;
24 
25 static const event_entry event_array[]=
26 {
27 #include "pmc_events.h"
28 };
29 
30 const char*
strp6pmc_event(l4_uint32_t event)31 strp6pmc_event(l4_uint32_t event)
32 {
33   unsigned i;
34 
35   for (i=0; i<sizeof(event_array)/sizeof(event_entry); i++)
36     if (event_array[i].index == event)
37       return event_array[i].string;
38 
39   return "unknown";
40 }
41