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

Macros

#define D(_w)
 

Functions

static uint8_t avr_ioport_read (struct avr_t *avr, avr_io_addr_t addr, void *param)
 
static void avr_ioport_update_irqs (avr_ioport_t *p)
 
static void avr_ioport_write (struct avr_t *avr, avr_io_addr_t addr, uint8_t v, void *param)
 
static void avr_ioport_pin_write (struct avr_t *avr, avr_io_addr_t addr, uint8_t v, void *param)
 
static void avr_ioport_ddr_write (struct avr_t *avr, avr_io_addr_t addr, uint8_t v, void *param)
 
void avr_ioport_irq_notify (struct avr_irq_t *irq, uint32_t value, void *param)
 
static void avr_ioport_reset (avr_io_t *port)
 
static int avr_ioport_ioctl (struct avr_io_t *port, uint32_t ctl, void *io_param)
 
void avr_ioport_init (avr_t *avr, avr_ioport_t *p)
 

Variables

static const char * irq_names [IOPORT_IRQ_COUNT]
 
static avr_io_t _io
 

Macro Definition Documentation

#define D (   _w)

Function Documentation

static void avr_ioport_ddr_write ( struct avr_t avr,
avr_io_addr_t  addr,
uint8_t  v,
void *  param 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static int avr_ioport_ioctl ( struct avr_io_t port,
uint32_t  ctl,
void *  io_param 
)
static
void avr_ioport_irq_notify ( struct avr_irq_t irq,
uint32_t  value,
void *  param 
)

Here is the call graph for this function:

Here is the caller graph for this function:

static void avr_ioport_pin_write ( struct avr_t avr,
avr_io_addr_t  addr,
uint8_t  v,
void *  param 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static uint8_t avr_ioport_read ( struct avr_t avr,
avr_io_addr_t  addr,
void *  param 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static void avr_ioport_reset ( avr_io_t port)
static

Here is the call graph for this function:

static void avr_ioport_update_irqs ( avr_ioport_t p)
static

Here is the call graph for this function:

Here is the caller graph for this function:

static void avr_ioport_write ( struct avr_t avr,
avr_io_addr_t  addr,
uint8_t  v,
void *  param 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

avr_io_t _io
static
Initial value:
= {
.kind = "port",
.reset = avr_ioport_reset,
.ioctl = avr_ioport_ioctl,
.irq_names = irq_names,
}
static int avr_ioport_ioctl(struct avr_io_t *port, uint32_t ctl, void *io_param)
Definition: avr_ioport.c:147
static void avr_ioport_reset(avr_io_t *port)
Definition: avr_ioport.c:139
static const char * irq_names[IOPORT_IRQ_COUNT]
Definition: avr_ioport.c:217
const char* irq_names[IOPORT_IRQ_COUNT]
static
Initial value:
= {
[IOPORT_IRQ_PIN0] = "=pin0",
[IOPORT_IRQ_PIN1] = "=pin1",
[IOPORT_IRQ_PIN2] = "=pin2",
[IOPORT_IRQ_PIN3] = "=pin3",
[IOPORT_IRQ_PIN4] = "=pin4",
[IOPORT_IRQ_PIN5] = "=pin5",
[IOPORT_IRQ_PIN6] = "=pin6",
[IOPORT_IRQ_PIN7] = "=pin7",
[IOPORT_IRQ_PIN_ALL] = "8=all",
[IOPORT_IRQ_REG_PORT] = "8>port",
[IOPORT_IRQ_REG_PIN] = "8>pin",
}
Definition: avr_ioport.h:40
Definition: avr_ioport.h:37
Definition: avr_ioport.h:38
Definition: avr_ioport.h:37
Definition: avr_ioport.h:37
Definition: avr_ioport.h:37
Definition: avr_ioport.h:38
Definition: avr_ioport.h:42
Definition: avr_ioport.h:38
Definition: avr_ioport.h:39
Definition: avr_ioport.h:38
Definition: avr_ioport.h:41