NOVA
Stripped down NOVA kernel for the OSY course
Loading...
Searching...
No Matches
Gsi Class Reference

Static Public Member Functions

static INIT void setup ()
static void vector (unsigned) asm("gsi_vector")

Public Attributes

uint8 vec
uint8 trg: 1
uint8 pol: 1

Static Public Attributes

static Gsi gsi_table [NUM_GSI]
static unsigned irq_table [NUM_IRQ]

Member Function Documentation

◆ setup()

void Gsi::setup ( )
static
27{
28 for (unsigned gsi = 0; gsi < NUM_GSI; gsi++) {
29
30 gsi_table[gsi].vec = static_cast<uint8>(VEC_GSI + gsi);
31
32 if (gsi < NUM_IRQ) {
33 irq_table[gsi] = gsi;
34 gsi_table[gsi].trg = 0;
35 gsi_table[gsi].pol = 0;
36 } else {
37 gsi_table[gsi].trg = 1;
38 gsi_table[gsi].pol = 1;
39 }
40 }
41}

◆ vector()

NORETURN void Gsi::vector ( unsigned vector)
static
44{
45 unsigned gsi = vector - VEC_GSI;
46
47 panic ("Gsi::vector %#x - not completed\n", gsi);
48}

The documentation for this class was generated from the following files: