Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include "../port/portfns.h"
2
 
3
void	arginit(void);
4
int	busprobe(ulong);
5
ulong	cankaddr(ulong);
6
void	cleancache(void);
7
void	clearmmucache(void);
8
void	clock(Ureg*);
9
void	clockinit(void);
10
void	clockshutdown(void);
11
int	cmpswap(long*, long, long);
12
void	coherence(void);
13
void	cycles(uvlong *);
14
void	dcflush(void*, ulong);
15
void	faultmips(Ureg*, int, int);
16
ulong	fcr31(void);
17
void	firmware(int);
18
void	fpclear(void);
19
void	fpsave(FPsave *);
20
void	fptrap(Ureg*);
21
int	fpuemu(Ureg *);
22
void	fpwatch(Ureg *);
23
ulong	getcause(void);
24
char*	getconf(char*);
25
ulong	getconfig(void);
26
ulong	getconfig1(void);
27
ulong	getconfig2(void);
28
ulong	getconfig3(void);
29
ulong	getconfig7(void);
30
ulong	gethwreg3(void);
31
ulong	getpagemask(void);
32
ulong	getstatus(void);
33
int	gettlbp(ulong, ulong*);
34
ulong	gettlbvirt(int);
35
void	gotopc(ulong);
36
void	hinv(void);
37
int	i8250console(void);
38
void	icflush(void *, ulong);
39
void	idle(void);
40
void	idlehands(void);
41
int	inb(int);
42
void	insb(int, void*, int);
43
ushort	ins(int);
44
void	inss(int, void*, int);
45
ulong	inl(int);
46
void	insl(int, void*, int);
47
void	ioinit(void);
48
void	introff(int);
49
void	intron(int);
50
void	intrshutdown(void);
51
void	kfault(Ureg*);
52
KMap*	kmap(Page*);
53
void	kmapinit(void);
54
void	kmapinval(void);
55
void	kunmap(KMap*);
56
void	launchinit(void);
57
void	launch(int);
58
void	links(void);
59
ulong	machstatus(void);
60
void	newstart(void);
61
int	newtlbpid(Proc*);
62
void	online(void);
63
void	outb(int, int);
64
void	outsb(int, void*, int);
65
void	outs(int, ushort);
66
void	outss(int, void*, int);
67
void	outl(int, ulong);
68
void	outsl(int, void*, int);
69
ulong	pcibarsize(Pcidev*, int);
70
void	pcibussize(Pcidev*, ulong*, ulong*);
71
int	pcicfgr8(Pcidev*, int);
72
int	pcicfgr16(Pcidev*, int);
73
int	pcicfgr32(Pcidev*, int);
74
void	pcicfgw8(Pcidev*, int, int);
75
void	pcicfgw16(Pcidev*, int, int);
76
void	pcicfgw32(Pcidev*, int, int);
77
void	pciclrbme(Pcidev*);
78
void	pciclrioe(Pcidev*);
79
void	pciclrmwi(Pcidev*);
80
int	pcigetpms(Pcidev*);
81
void	pcihinv(Pcidev*);
82
uchar	pciipin(Pcidev*, uchar);
83
Pcidev* pcimatch(Pcidev*, int, int);
84
Pcidev* pcimatchtbdf(int);
85
void	pcireset(void);
86
int	pciscan(int, Pcidev**);
87
void	pcisetbme(Pcidev*);
88
void	pcisetioe(Pcidev*);
89
void	pcisetmwi(Pcidev*);
90
int	pcisetpms(Pcidev*, int);
91
ulong	prid(void);
92
void	procrestore(Proc *);
93
void	procsave(Proc *);
94
#define	procsetup(p)	((p)->fpstate = FPinit)
95
void	purgetlb(int);
96
Softtlb*	putstlb(ulong, ulong);
97
int	puttlb(ulong, ulong, ulong);
98
void	puttlbx(int, ulong, ulong, ulong, int);
99
ulong	rdcompare(void);
100
ulong	rdcount(void);
101
ulong*	reg(Ureg*, int);
102
void	restfpregs(FPsave*, ulong);
103
void	intrenable(int, void(*)(void *), void *);
104
void	setleveldest(int, int, uvlong*);
105
void	setpagemask(ulong);
106
void	setsp(ulong);
107
void	setstatus(ulong);
108
void	setwatchhi0(ulong);
109
void	setwatchlo0(ulong);
110
void	setwired(ulong);
111
void	sicwdog(void);
112
void	silencewdog(void);
113
ulong	stlbhash(ulong);
114
void	stopwdog(void);
115
void	syncclock(void);
116
long	syscall(Ureg*);
117
void	syscallfmt(int syscallno, ulong pc, va_list list);
118
void	sysretfmt(int syscallno, va_list list, long ret, uvlong start, uvlong stop);
119
int	tas(ulong*);
120
void	tlbinit(void);
121
ulong	tlbvirt(void);
122
void	touser(uintptr);
123
void	unleash(void);
124
#define	userureg(ur) ((ur)->status & KUSER)
125
void	validalign(uintptr, unsigned);
126
void	vecinit(void);
127
void	vector0(void);
128
void	vector100(void);
129
void	vector180(void);
130
void	wdogreset(void);
131
void	wrcompare(ulong);
132
void	wrcount(ulong);
133
ulong	wiredpte(vlong);
134
void	machwire(void);
135
void	_uartputs(char*, int);
136
int	_uartprint(char*, ...);
137
 
138
#define PTR2UINT(p)	((uintptr)(p))
139
#define UINT2PTR(i)	((void*)(i))
140
 
141
#define	waserror()	(up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))
142
 
143
#define KADDR(a)	((void*)((ulong)(a)|KSEG0))
144
#define PADDR(a)	((ulong)(a)&~KSEGM)
145
 
146
#define KSEG1ADDR(a)	((void*)((ulong)(a)|KSEG1))