9d39a80e |
1 | #define u8 unsigned char |
2 | #define u16 unsigned short |
3 | #define u32 unsigned int |
4 | |
5 | #define noinline __attribute__((noinline)) |
6 | #define unused __attribute__((unused)) |
7 | #define _packed __attribute__((packed)) |
8 | |
9 | #define mem_barrier() \ |
10 | asm volatile("":::"memory") |
11 | |
12 | #define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) |
13 | |
14 | #define MKLONG(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) |
15 | |
16 | #define read8(a) \ |
17 | *((volatile u8 *) (a)) |
18 | #define read16(a) \ |
19 | *((volatile u16 *) (a)) |
20 | #define read32(a) \ |
21 | *((volatile u32 *) (a)) |
22 | #define write8(a, d) \ |
23 | *((volatile u8 *) (a)) = (d) |
24 | #define write16(a, d) \ |
25 | *((volatile u16 *) (a)) = (d) |
26 | #define write32(a, d) \ |
27 | *((volatile u32 *) (a)) = (d) |
28 | |
29 | enum x32x_cmd { |
30 | CMD_ECHO = 1, |
71b41fdd |
31 | CMD_READ_FRT = 2, // read Free-Running Timer |
06d7984c |
32 | CMD_READ8 = 3, |
33 | CMD_READ16 = 4, |
34 | CMD_READ32 = 5, |
35 | CMD_WRITE8 = 6, |
36 | CMD_WRITE16 = 7, |
37 | CMD_WRITE32 = 8, |
5073ab5a |
38 | CMD_GETGBR = 9, |
39 | CMD_GETVBR = 10, |
9d39a80e |
40 | }; |
41 | |
42 | // vim:ts=4:sw=4:expandtab |