~kris/9p

9hist

ref: 296818c2ea172c03eb4e74fa282f1cd4e1b18cef 9hist/carrera/fns.h -rw-r--r-- 3.5 KiB
296818c2 — David du Colombier Plan 9 from Bell Labs 1995-10-11 30 years ago
                                                                                
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#include "../port/portfns.h"

void		DEBUG(void);

void		addportintr(int(*)(void));
void		allflush(void*, ulong);
void		arginit(void);
int		busprobe(ulong);
void		cleancache(void);
void		clearmmucache(void);
void		clock(Ureg*);
void		clockinit(void);
ulong		confeval(char*);
void		confprint(void);
void		confread(void);
void		confset(char*);
int		conschar(void);
void		consoff(void);
int		consputc(int);
void		dcflush(void*, ulong);
void		dcinvalidate(void*, ulong);
void		dmaend(int);
long		dmasetup(int, void*, long, int);
void		epcenable(ulong);
void		epcinit(int, int);
void		evenaddr(ulong);
void		faultmips(Ureg*, int, int);
ulong		fcr31(void);
void		firmware(int);
#define		flushpage(s)		icflush((void*)(s), BY2PG)
void		fptrap(Ureg*);
ulong		getcallerpc(void*);
int		getline(char*, int);
void		getnveaddr(void*);
int		getnvram(ulong, void *, int);
ulong		getstatus(void);
void		gettlb(int, ulong*);
int		gettlbp(ulong, ulong*);
ulong		gettlbvirt(int);
void		gotopc(ulong);
void		hinv(void);
void		icdirty(void *, ulong);
void		icflush(void *, ulong);
void		intr(Ureg*);
void		ioinit(int);
int		iprint(char*, ...);
int		isaconfig(char*, int, ISAConf*);
int		kbdinit(void);
void		kbdintr(void);
void		kfault(Ureg*);
KMap*		kmap(Page*);
void		kmapinit(void);
void		kmapinval(void);
int		kprint(char*, ...);
void		kproftimer(ulong);
void		kunmap(KMap*);
void		launchinit(void);
void		launch(int);
void		lightbits(int, int);
ulong		machstatus(void);
void		mmunewpage(Page*);
void		mouseintr(void);
void		mntdump(void);
void		newstart(void);
int		newtlbpid(Proc*);
void		nonettoggle(void);
void		novme(int);
void		ns16552install(void);
void		online(void);
Block*		prepend(Block*, int);
void		prflush(void);
ulong		prid(void);
void		printinit(void);
#define		procrestore(p)
#define		procsave(p)
#define		procsetup(p)		((p)->fpstate = FPinit)
void		purgetlb(int);
int		putnvram(ulong, void*, int);
Softtlb*	putstlb(ulong, ulong);
int		puttlb(ulong, ulong, ulong);
void		puttlbx(int, ulong, ulong, ulong, int);
void*		pxalloc(ulong);
void*		pxspanalloc(ulong, int, ulong);
void		rdbginit(void);
ulong		rdcount(void);
int		readlog(ulong, char*, ulong);
long*		reg(Ureg*, int);
void		restfpregs(FPsave*, ulong);
void		screeninit(void);
void		screenputs(char*, int);
void		seteisadma(int, void(*)(void));
long		syscall(Ureg*);
void		syslog(char*, int);
void		sysloginit(void);
int		tas(ulong*);
void		tlbinit(void);
ulong		tlbvirt(void);
void		touser(void*);
void		vecinit(void);
void		vector0(void);
void		vector100(void);
void		vector180(void);
void		vmereset(void);
void		uartclock(void);
void		uvst(void*, void*);
void		uvld(void*, void*);
void		wbflush(void);
void		wrcompare(ulong);
void		Xdelay(int);

void		serialinit(void);
void		ns16552special(int, int, Queue**, Queue**, int (*)(Queue*, int));
void		ns16552setup(ulong, ulong, char*);
void		ns16552intr(int);
void		etherintr(void);
void		iomapinit(void);
void		enetaddr(uchar*);

#define	waserror()		setlabel(&up->errlab[up->nerrlab++])
#define	kmapperm(x)		kmap(x)

#define KADDR(a)	((void*)((ulong)(a)|KSEG0))
#define KADDR1(a)	((void*)((ulong)(a)|KSEG1))
#define PADDR(a)	((ulong)(a)&~KSEGM)

void	ifwrite(void*, Block*, int);
void*	ifinit(int);
void	ifjab(void);
int	ifgetsr(void);
ulong	ifaddr(void*);
void	filiput(Block*);
void	fiberint(int);
void	freset(void*);
void	audiosbintr(void);
void	audiodmaintr(void);
ulong	fwblock(void*, void*, ulong);
ulong	frblock(void*, void*, ulong);
void	ifree(void*);
void	ifflush(void*);
Block*	iallocb(int);
void*	ifroute(ulong);
ulong	ifunroute(ulong);
void	parseip(char*, char*);
void	mpegintr(void);