run_avr: Add -v argument to raise verbosity level
[simavr] / simavr / sim / avr_spi.c
index 3b35328..ecac48d 100644 (file)
@@ -41,6 +41,7 @@ static uint8_t avr_spi_read(struct avr_t * avr, avr_io_addr_t addr, void * param
        avr_spi_t * p = (avr_spi_t *)param;
        uint8_t v = p->input_data_register;
        p->input_data_register = 0;
+       avr_regbit_clear(avr, p->spi.raised);
 //     printf("avr_spi_read = %02x\n", v);
        return v;
 }
@@ -61,7 +62,7 @@ static void avr_spi_irq_input(struct avr_irq_t * irq, uint32_t value, void * par
        avr_spi_t * p = (avr_spi_t *)param;
        avr_t * avr = p->io.avr;
 
-       // check to see fi receiver is enabled
+       // check to see if receiver is enabled
        if (!avr_regbit_get(avr, p->spe))
                return;
 
@@ -82,9 +83,15 @@ void avr_spi_reset(struct avr_io_t *io)
        avr_irq_register_notify(p->io.irq + SPI_IRQ_INPUT, avr_spi_irq_input, p);
 }
 
+static const char * irq_names[SPI_IRQ_COUNT] = {
+       [SPI_IRQ_INPUT] = "8<in",
+       [SPI_IRQ_OUTPUT] = "8<out",
+};
+
 static avr_io_t        _io = {
        .kind = "spi",
        .reset = avr_spi_reset,
+       .irq_names = irq_names,
 };
 
 void avr_spi_init(avr_t * avr, avr_spi_t * p)