summaryrefslogtreecommitdiff
path: root/rtl/gfx/firmware/hostif.h
blob: f20467f889981c16e8f636fafcd0463a7a5351c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#ifndef HOSTIF_H
#define HOSTIF_H

struct hostif_ctrl
{
	unsigned arint   : 1;
	unsigned awint   : 1;
	unsigned rsvd2   : 6;
	unsigned arvalid : 1;
	unsigned awvalid : 1;
	unsigned rdone   : 1;
	unsigned wvalid  : 1;
	unsigned bdone   : 1;
	unsigned rsvd13  : 19;
};

struct hostif_ar
{
	unsigned valid : 1;
	unsigned rsvd1 : 1;
	unsigned addr  : 30;
};

struct hostif_aw
{
	unsigned valid : 1;
	unsigned rsvd1 : 1;
	unsigned addr  : 30;
};

struct hostif_r
{
	unsigned data : 32;
};

struct hostif_w
{
	unsigned data : 32;
};

struct hostif_b
{
	unsigned valid : 1;
	unsigned rsvd1 : 31;
};

#define HOSTIF_BASE 0x00300000
#define HOSTIF_CTRL (*(volatile struct hostif_ctrl *)(HOSTIF_BASE + 0x00))
#define HOSTIF_AR   (*(volatile struct hostif_ar *)  (HOSTIF_BASE + 0x04))
#define HOSTIF_AW   (*(volatile struct hostif_aw *)  (HOSTIF_BASE + 0x08))
#define HOSTIF_R    (*(volatile struct hostif_r *)   (HOSTIF_BASE + 0x0c))
#define HOSTIF_W    (*(volatile struct hostif_w *)   (HOSTIF_BASE + 0x10))
#define HOSTIF_B    (*(volatile struct hostif_b *)   (HOSTIF_BASE + 0x14))

#endif