`ifdef verbose $display("Dequeing the FIFO -- PLIC Interrupt Serviced id: %d",id); `endif
endrule
- for(Integer i=0; i <`NUM_INTERRUPTS; i=i+1) begin
+ for(Integer i=0; i <`INTERRUPT_PINS; i=i+1) begin
rule deq_gateway_queue;
if(interrupt_id==fromInteger(i)) begin
ff_gateway_queue[i].deq;
name = "{0}{1}".format(self.name, self.mksuffix(self.name, inum))
plic_obj = self.plic_object(name, idx)
print "plic_obj", name, idx, plic_obj
- plic = mkplic_rule.format(self.name, plic_obj, irq_offs)
+ plic = mkplic_rule.format(name, plic_obj, irq_offs)
res.append(plic)
irq_offs += 1 # increment to next irq
return ('\n'.join(res), irq_offs)
return " interface I2C_out twi{0}_out;\n" + \
" method Bit#(1) twi{0}_isint;"
- def num_irqs(self):
- return 3
-
def num_axi_regs32(self):
return 8
return "pack({0})".format(txt)
return txt
+ def num_irqs(self):
+ return 3
+
def plic_object(self, pname, idx):
return ["{0}.isint()",
"{0}.timerint()",
ret.append(" endrule")
return '\n'.join(ret)
+ def num_irqs(self):
+ return 6
+
+ def plic_object(self, pname, idx):
+ return "{0}.interrupts()[{1}]".format(pname, idx)
+
class pwm(PBase):