1 |
dpavlin |
4 |
/* |
2 |
|
|
* Cisco Router Simulation platform. |
3 |
|
|
* Copyright (c) 2005,2006 Christophe Fillot (cf@utc.fr) |
4 |
|
|
*/ |
5 |
|
|
|
6 |
|
|
#ifndef __DEV_GT_H__ |
7 |
|
|
#define __DEV_GT_H__ |
8 |
|
|
|
9 |
|
|
#include <sys/types.h> |
10 |
|
|
#include "utils.h" |
11 |
|
|
#include "mips64.h" |
12 |
|
|
#include "cpu.h" |
13 |
|
|
#include "device.h" |
14 |
|
|
#include "net_io.h" |
15 |
|
|
#include "vm.h" |
16 |
|
|
|
17 |
|
|
/* Forward declaration for Galilo controller private data */ |
18 |
|
|
struct gt_data; |
19 |
|
|
|
20 |
|
|
/* Create a new GT64010 controller */ |
21 |
|
|
int dev_gt64010_init(vm_instance_t *vm,char *name, |
22 |
|
|
m_uint64_t paddr,m_uint32_t len,u_int irq); |
23 |
|
|
|
24 |
|
|
/* Create a new GT64120 controller */ |
25 |
|
|
int dev_gt64120_init(vm_instance_t *vm,char *name, |
26 |
|
|
m_uint64_t paddr,m_uint32_t len,u_int irq); |
27 |
|
|
|
28 |
|
|
/* Create a new GT96100 controller */ |
29 |
|
|
int dev_gt96100_init(vm_instance_t *vm,char *name, |
30 |
|
|
m_uint64_t paddr,m_uint32_t len, |
31 |
|
|
u_int dma_irq,u_int eth_irq); |
32 |
|
|
|
33 |
|
|
/* Bind a NIO to GT96100 device */ |
34 |
|
|
int dev_gt96100_set_nio(struct gt_data *d,u_int port_id,netio_desc_t *nio); |
35 |
|
|
|
36 |
|
|
/* Unbind a NIO from a GT96100 device */ |
37 |
|
|
int dev_gt96100_unset_nio(struct gt_data *d,u_int port_id); |
38 |
|
|
|
39 |
|
|
#endif |