aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/ecore/src/lib/ecore_psl1ght/spursutil.c
blob: 27b5c1d63572840302d45acde383e53432fb1ad1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include "spursutil.h"
#include <sys/spu.h>

#define SPURS_DEFAULT_PREFIX_NAME "spursutil"

Spurs *
initSpurs(const char *prefix_name)
{
   Spurs *spurs = NULL;
   SpursAttribute attributeSpurs;
   int ret;
   int i;

   ret = sysSpuInitialize (6, 0);
   printf ("sysSpuInitialize return %d\n", ret);

   /* initialize spurs */
   printf ("Initializing spurs\n");
   spurs = (void *)memalign (SPURS_ALIGN, sizeof (Spurs));
   printf ("Initializing spurs attribute\n");

   ret = spursAttributeInitialize (&attributeSpurs, 5, 250, 1000, true);
   if (ret)
     {
        printf ("error : spursAttributeInitialize failed  %x\n", ret);
        goto error;
     }

   printf ("Setting name prefix\n");
   if (!prefix_name)
     prefix_name = SPURS_DEFAULT_PREFIX_NAME;
   ret = spursAttributeSetNamePrefix (&attributeSpurs,
                                      prefix_name, strlen (prefix_name));
   if (ret)
     {
        printf ("error : spursAttributeInitialize failed %x\n", ret);
        goto error;
     }

   printf ("Initializing with attribute\n");
   ret = spursInitializeWithAttribute (spurs, &attributeSpurs);
   if (ret)
     {
        printf ("error: spursInitializeWithAttribute failed  %x\n", ret);
        goto error;
     }

   return spurs;

error:
   if (spurs)
     free (spurs);
   return NULL;
}

void
endSpurs(Spurs *spurs)
{
   spursFinalize (spurs);
   free (spurs);
}