dev_sgi_ip32.cc File Reference

Back to the index.

Classes | Macros | Functions
dev_sgi_ip32.cc File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "bus_pci.h"
#include "console.h"
#include "cpu.h"
#include "device.h"
#include "devices.h"
#include "emul.h"
#include "machine.h"
#include "memory.h"
#include "misc.h"
#include "net.h"
#include "thirdparty/crimereg.h"
#include "thirdparty/if_mecreg.h"
#include "thirdparty/sgi_macereg.h"

Go to the source code of this file.

Classes

struct  macepci_data
 
struct  crime_data
 
struct  mace_data
 
struct  sgi_mec_data
 
struct  sgi_ust_data
 
struct  sgi_mte_data
 

Macros

#define CRIME_TICKSHIFT   14
 
#define CRIME_SPEED_MUL_FACTOR   1
 
#define CRIME_SPEED_DIV_FACTOR   1
 
#define DEV_CRIME_LENGTH   0x1000
 
#define DEV_MACE_LENGTH   0x100
 
#define MEC_TICK_SHIFT   14
 
#define MAX_TX_PACKET_LEN   1700
 
#define N_RX_ADDRESSES   16
 
#define ZERO_CHUNK_LEN   4096
 

Functions

void crime_interrupt_assert (struct interrupt *interrupt)
 
void crime_interrupt_deassert (struct interrupt *interrupt)
 
 DEVICE_TICK (crime)
 
 DEVICE_ACCESS (crime)
 
void dev_crime_init (struct machine *machine, struct memory *mem, uint64_t baseaddr, char *irq_path, int use_fb)
 
void mace_interrupt_assert (struct interrupt *interrupt)
 
void mace_interrupt_deassert (struct interrupt *interrupt)
 
 DEVICE_ACCESS (mace)
 
 DEVINIT (mace)
 
 DEVICE_ACCESS (macepci)
 
struct pci_data * dev_macepci_init (struct machine *machine, struct memory *mem, uint64_t baseaddr, char *irq_path)
 
 DEVICE_TICK (sgi_mec)
 
 DEVICE_ACCESS (sgi_mec)
 
void dev_sgi_mec_init (struct machine *machine, struct memory *mem, uint64_t baseaddr, char *irq_path, unsigned char *macaddr)
 
 DEVICE_ACCESS (sgi_ust)
 
void dev_sgi_ust_init (struct memory *mem, uint64_t baseaddr)
 
 DEVICE_ACCESS (sgi_mte)
 
void dev_sgi_mte_init (struct memory *mem, uint64_t baseaddr)
 

Macro Definition Documentation

◆ CRIME_SPEED_DIV_FACTOR

#define CRIME_SPEED_DIV_FACTOR   1

Definition at line 60 of file dev_sgi_ip32.cc.

Referenced by DEVICE_TICK().

◆ CRIME_SPEED_MUL_FACTOR

#define CRIME_SPEED_MUL_FACTOR   1

Definition at line 59 of file dev_sgi_ip32.cc.

Referenced by DEVICE_TICK().

◆ CRIME_TICKSHIFT

#define CRIME_TICKSHIFT   14

Definition at line 58 of file dev_sgi_ip32.cc.

Referenced by dev_crime_init(), and DEVICE_TICK().

◆ DEV_CRIME_LENGTH

#define DEV_CRIME_LENGTH   0x1000

Definition at line 67 of file dev_sgi_ip32.cc.

Referenced by dev_crime_init().

◆ DEV_MACE_LENGTH

#define DEV_MACE_LENGTH   0x100

Definition at line 311 of file dev_sgi_ip32.cc.

Referenced by DEVINIT().

◆ MAX_TX_PACKET_LEN

#define MAX_TX_PACKET_LEN   1700

Definition at line 587 of file dev_sgi_ip32.cc.

◆ MEC_TICK_SHIFT

#define MEC_TICK_SHIFT   14

Definition at line 585 of file dev_sgi_ip32.cc.

◆ N_RX_ADDRESSES

#define N_RX_ADDRESSES   16

Definition at line 588 of file dev_sgi_ip32.cc.

◆ ZERO_CHUNK_LEN

#define ZERO_CHUNK_LEN   4096

Definition at line 1177 of file dev_sgi_ip32.cc.

Referenced by DEVICE_ACCESS().

Function Documentation

◆ crime_interrupt_assert()

void crime_interrupt_assert ( struct interrupt interrupt)

◆ crime_interrupt_deassert()

void crime_interrupt_deassert ( struct interrupt interrupt)

◆ dev_crime_init()

void dev_crime_init ( struct machine machine,
struct memory mem,
uint64_t  baseaddr,
char *  irq_path,
int  use_fb 
)

◆ dev_macepci_init()

struct pci_data* dev_macepci_init ( struct machine machine,
struct memory mem,
uint64_t  baseaddr,
char *  irq_path 
)

◆ dev_sgi_mec_init()

void dev_sgi_mec_init ( struct machine machine,
struct memory mem,
uint64_t  baseaddr,
char *  irq_path,
unsigned char *  macaddr 
)

Definition at line 1075 of file dev_sgi_ip32.cc.

References CHECK_ALLOCATION, INTERRUPT_CONNECT, sgi_mec_data::irq, and sgi_mec_data::macaddr.

Referenced by MACHINE_SETUP().

◆ dev_sgi_mte_init()

void dev_sgi_mte_init ( struct memory mem,
uint64_t  baseaddr 
)

◆ dev_sgi_ust_init()

void dev_sgi_ust_init ( struct memory mem,
uint64_t  baseaddr 
)

◆ DEVICE_ACCESS() [1/6]

DEVICE_ACCESS ( crime  )

◆ DEVICE_ACCESS() [2/6]

DEVICE_ACCESS ( mace  )

◆ DEVICE_ACCESS() [3/6]

DEVICE_ACCESS ( macepci  )

◆ DEVICE_ACCESS() [4/6]

DEVICE_ACCESS ( sgi_mec  )

◆ DEVICE_ACCESS() [5/6]

DEVICE_ACCESS ( sgi_ust  )

◆ DEVICE_ACCESS() [6/6]

DEVICE_ACCESS ( sgi_mte  )

◆ DEVICE_TICK() [1/2]

DEVICE_TICK ( crime  )

◆ DEVICE_TICK() [2/2]

DEVICE_TICK ( sgi_mec  )

Definition at line 892 of file dev_sgi_ip32.cc.

◆ DEVINIT()

DEVINIT ( mace  )

◆ mace_interrupt_assert()

void mace_interrupt_assert ( struct interrupt interrupt)

◆ mace_interrupt_deassert()

void mace_interrupt_deassert ( struct interrupt interrupt)

Generated on Sun Sep 30 2018 16:05:18 for GXemul by doxygen 1.8.13