SimAVR
AVR Simulator
sim_irq.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "sim_irq.h"
Include dependency graph for sim_irq.c:

Data Structures

struct  avr_irq_hook_t
 

Typedefs

typedef struct avr_irq_hook_t avr_irq_hook_t
 

Functions

static void _avr_irq_pool_add (avr_irq_pool_t *pool, avr_irq_t *irq)
 
static void _avr_irq_pool_remove (avr_irq_pool_t *pool, avr_irq_t *irq)
 
void avr_init_irq (avr_irq_pool_t *pool, avr_irq_t *irq, uint32_t base, uint32_t count, const char **names)
 Init 'count' IRQs, initializes their "irq" starting from 'base' and increment. More...
 
avr_irq_tavr_alloc_irq (avr_irq_pool_t *pool, uint32_t base, uint32_t count, const char **names)
 Allocates 'count' IRQs, initializes their "irq" starting from 'base' and increment. More...
 
static avr_irq_hook_t_avr_alloc_irq_hook (avr_irq_t *irq)
 
void avr_free_irq (avr_irq_t *irq, uint32_t count)
 Free allocated IRQs. More...
 
void avr_irq_register_notify (avr_irq_t *irq, avr_irq_notify_t notify, void *param)
 Register a notification hook (callback) for an irq. More...
 
void avr_irq_unregister_notify (avr_irq_t *irq, avr_irq_notify_t notify, void *param)
 Unregister a callback for an irq. More...
 
void avr_raise_irq (avr_irq_t *irq, uint32_t value)
 Raise an IRQ. I.e. call their 'hooks', and raise any chained IRQs, and set the new 'value'. More...
 
void avr_connect_irq (avr_irq_t *src, avr_irq_t *dst)
 Connect a source IRQ to a destination IRQ. More...
 
void avr_unconnect_irq (avr_irq_t *src, avr_irq_t *dst)
 Disconnect a source IRQ to a destination IRQ. More...
 

Typedef Documentation

Function Documentation

static avr_irq_hook_t* _avr_alloc_irq_hook ( avr_irq_t irq)
static

Here is the caller graph for this function:

static void _avr_irq_pool_add ( avr_irq_pool_t pool,
avr_irq_t irq 
)
static

Here is the caller graph for this function:

static void _avr_irq_pool_remove ( avr_irq_pool_t pool,
avr_irq_t irq 
)
static

Here is the caller graph for this function: