Statistics
| Branch: | Revision:

root / hw / arm / strongarm.h @ 9188dbf7

History | View | Annotate | Download (1.5 kB)

1 5bc95aa2 Dmitry Eremin-Solenikov
#ifndef _STRONGARM_H
2 5bc95aa2 Dmitry Eremin-Solenikov
#define _STRONGARM_H
3 5bc95aa2 Dmitry Eremin-Solenikov
4 022c62cb Paolo Bonzini
#include "exec/memory.h"
5 eb2fefbc Avi Kivity
6 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS0          0x00000000
7 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS1          0x08000000
8 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS2          0x10000000
9 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS3          0x18000000
10 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_PCMCIA_CS0   0x20000000
11 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_PCMCIA_CS1   0x30000000
12 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS4          0x40000000
13 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_CS5          0x48000000
14 5bc95aa2 Dmitry Eremin-Solenikov
/* system registers here */
15 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_SDCS0        0xc0000000
16 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_SDCS1        0xc8000000
17 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_SDCS2        0xd0000000
18 5bc95aa2 Dmitry Eremin-Solenikov
#define SA_SDCS3        0xd8000000
19 5bc95aa2 Dmitry Eremin-Solenikov
20 5bc95aa2 Dmitry Eremin-Solenikov
enum {
21 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO0_EDGE = 0,
22 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO1_EDGE,
23 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO2_EDGE,
24 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO3_EDGE,
25 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO4_EDGE,
26 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO5_EDGE,
27 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO6_EDGE,
28 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO7_EDGE,
29 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO8_EDGE,
30 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO9_EDGE,
31 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIO10_EDGE,
32 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_GPIOX_EDGE,
33 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_LCD,
34 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_UDC,
35 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_RSVD1,
36 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_UART1,
37 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_UART2,
38 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_UART3,
39 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_MCP,
40 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_SSP,
41 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH0,
42 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH1,
43 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH2,
44 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH3,
45 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH4,
46 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_DMA_CH5,
47 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_OSTC0,
48 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_OSTC1,
49 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_OSTC2,
50 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_OSTC3,
51 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_RTC_HZ,
52 5bc95aa2 Dmitry Eremin-Solenikov
    SA_PIC_RTC_ALARM,
53 5bc95aa2 Dmitry Eremin-Solenikov
};
54 5bc95aa2 Dmitry Eremin-Solenikov
55 5bc95aa2 Dmitry Eremin-Solenikov
typedef struct {
56 8bf502e2 Andreas Färber
    ARMCPU *cpu;
57 eb2fefbc Avi Kivity
    MemoryRegion sdram;
58 5bc95aa2 Dmitry Eremin-Solenikov
    DeviceState *pic;
59 5bc95aa2 Dmitry Eremin-Solenikov
    DeviceState *gpio;
60 5bc95aa2 Dmitry Eremin-Solenikov
    DeviceState *ppc;
61 5bc95aa2 Dmitry Eremin-Solenikov
    DeviceState *ssp;
62 5bc95aa2 Dmitry Eremin-Solenikov
    SSIBus *ssp_bus;
63 5bc95aa2 Dmitry Eremin-Solenikov
} StrongARMState;
64 5bc95aa2 Dmitry Eremin-Solenikov
65 eb2fefbc Avi Kivity
StrongARMState *sa1110_init(MemoryRegion *sysmem,
66 eb2fefbc Avi Kivity
                            unsigned int sdram_size, const char *rev);
67 5bc95aa2 Dmitry Eremin-Solenikov
68 5bc95aa2 Dmitry Eremin-Solenikov
#endif