OpenCores
URL https://opencores.org/ocsvn/mips_enhanced/mips_enhanced/trunk

Subversion Repositories mips_enhanced

[/] [mips_enhanced/] [trunk/] [grlib-gpl-1.0.19-b3188/] [software/] [leon3/] [standalone.c] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dimamali
#include <stdlib.h>
2
#include <stdio.h>
3
#include "grcommon.h"
4
 
5
report_start()
6
{
7
        if (!get_pid()) printf("\nStarting test ...\n");
8
}
9
 
10
report_end()
11
{
12
        printf("\nTested ended\n");
13
}
14
 
15
char *dev_to_string(unsigned int dev);
16
int device = 0;
17
report_device(int dev)
18
{
19
        device = dev;
20
        printf("%s\n", dev_to_string(dev));
21
        return(1);
22
}
23
 
24
 
25
char *dev_to_subtest(int dev, int test);
26
report_subtest(int test)
27
{
28
        printf("  %s\n", dev_to_subtest(device, test));
29
}
30
 
31
fail(int dev)
32
{
33
        printf("    test failed at %d\n", dev);
34
}
35
 
36
 
37
char *dev_to_string(unsigned int dev)
38
{
39
        switch (dev >> 24) {
40
        case 1:
41
          switch ((dev >> 12) & 0x0fff) {
42
          case GAISLER_LEON3:   return("LEON3 V8 Processor"); break;
43
          case GAISLER_ETHMAC:  return("GR Ethernet MAC"); break;
44
          case GAISLER_PCIFBRG:  return("Fast 32-bit PCI Bridge"); break;
45
          case GAISLER_LEON3FT: return("LEON3FT V8 Processor"); break;
46
          case GAISLER_GPTIMER: return("Modular Timer unit"); break;
47
          case GAISLER_IRQMP: return("Interrupt Controller"); break;
48
          case GAISLER_APBUART: return("UART"); break;
49
          case GAISLER_CANAHB: return("OC CAN AHB interface"); break;
50
          case GAISLER_GRGPIO: return("General Purpose I/O port"); break;
51
          case GAISLER_FTMCTRL: return("PROM/SRAM/SDRAM Memory controller with EDAC"); break;
52
          case GAISLER_FTAHBRAM: return("Generic FT AHB SRAM module"); break;
53
          case GAISLER_FTSRCTRL: return("Simple FT SRAM Controller"); break;
54
          case GAISLER_SPW: return("SpaceWire Serial Link"); break;
55
          case GAISLER_SPICTRL: return("SPI controller"); break;
56
          case GAISLER_I2CMST: return("I2C master"); break;
57
          default:  return("Unknown device");
58
          }
59
          break;
60
        case 4:
61
          switch ((dev >> 12) & 0x0fff) {
62
          case ESA_LEON2: return("Leon2 SPARC V8 Processor"); break;
63
          case ESA_MCTRL: return("Leon2 Memory Controller"); break;
64
          case ESA_L2IRQ: return("Leon2 Interrupt Controller"); break;
65
          default:  return("Unknown device");
66
          }
67
          break;
68
        default:  return("Unknown vendor");
69
        }
70
}
71
 
72
char *dev_to_subtest(int dev, int test)
73
{
74
    switch (dev >> 24) {
75
    case VENDOR_GAISLER:
76
      switch ((dev >> 12) & 0x0fff) {
77
      case GAISLER_LEON3:
78
      case GAISLER_LEON3FT:
79
      case ESA_LEON2:
80
        switch (test) {
81
        case 3:   return("register file");
82
        case 4:   return("multiplier");
83
        case 5:   return("radix-2 divider");
84
        case 6:   return("cache system");
85
        case 7:   return("multi-processing");
86
        case 8:   return("floating-point unit");
87
        case 9:   return("itag cache ram");
88
        case 10:   return("dtag cache ram");
89
        case 11:   return("idata cache ram");
90
        case 12:   return("ddata cache ram");
91
        case 13:   return("GRFPU test");
92
        case 14:   return("memory management unit");
93
        default:  return("sub-test");
94
        }
95
      case GAISLER_GPTIMER:
96
        switch (test) {
97
        case 0:   return("timer 0");
98
        case 1:   return("timer 1");
99
        case 2:   return("timer 2");
100
        case 3:   return("timer 3");
101
        case 4:   return("timer 4");
102
        case 5:   return("timer 5");
103
        case 6:   return("timer 6");
104
        case 7:   return("timer 7");
105
        case 8:   return("chain-mode");
106
        default:  return("sub-test");
107
        }
108
      break;
109
      default:  return("sub-test");
110
      }
111
    }
112
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.