xref: /inferno-os/os/ipaq1110/fns.h (revision 74a4d8c26dd3c1e9febcb717cfd6cb6512991a7a)
1 #include "../port/portfns.h"
2 
3 ulong	aifinit(uchar *aifarr);
4 void	aamloop(int);
5 int	archaudiopower(int);
6 void	archaudiomute(int);
7 void	archaudioamp(int);
8 int	archaudiospeed(int, int);
9 void	archcodecreset(void);
10 void	archconfinit(void);
11 void	archconsole(void);
12 int	archflash12v(int);
13 int	archhooksw(int);
14 long	archkprofmicrosecondspertick(void);
15 void	archkprofenable(int);
16 void	archlcdenable(int);
17 void	archpowerdown(void);
18 void	archpowerup(void);
19 void	archreboot(void);
20 void	archreset(void);
21 vlong	archrdtsc(void);
22 ulong archrdtsc32(void);
23 void	archuartpower(int, int);
24 void	blankscreen(int);
25 ulong	call_apcs(ulong addr, int nargs, ...);
26 ulong	call_apcs0(ulong addr);
27 ulong	call_apcs1(ulong addr, ulong a1);
28 ulong	call_apcs2(ulong addr, ulong a1, ulong a2);
29 ulong	call_apcs3(ulong addr, ulong a1, ulong a2, ulong a3);
30 void	cisread(int slotno, void (*f)(int, uchar *));
31 void	clockcheck(void);
32 void	clockinit(void);
33 void	clockpoll(void);
34 #define	coherence()		/* nothing to do for cache coherence for uniprocessor */
35 void	cursorhide(void);
36 void	cursorunhide(void);
37 void	dcflush(void*, ulong);
38 void	dcflushall(void);
39 void	dcinval(void);
40 int	dmaidle(Dma*);
41 Dma*	dmasetup(int device, int direction, int bigend, void(*)(void*,ulong), void*);
42 int	dmastart(Dma*, void*, int);
43 int	dmacontinue(Dma*, void*, int);
44 void	dmastop(Dma*);
45 int	dmaerror(Dma*);
46 void	dmafree(Dma*);
47 void	dmareset(void);
48 void	dmawait(Dma*);
49 void dumplongs(char *, ulong *, int);
50 void	dumpregs(Ureg* ureg);
51 void	dumpstack(void);
52 int	fpiarm(Ureg*);
53 void	fpinit(void);
54 ulong	getcallerpc(void*);
55 ulong	getcpsr(void);
56 ulong	getcpuid(void);
57 ulong	getspsr(void);
58 void	gotopc(ulong);
59 
60 void	icflushall(void);
61 void	_idlemode(void);
62 void	(*idle)(void);
63 void	idlehands(void);
64 int	inb(ulong);
65 int	ins(ulong);
66 ulong	inl(ulong);
67 void	outb(ulong, int);
68 void	outs(ulong, int);
69 void	outl(ulong, ulong);
70 void inss(ulong, void*, int);
71 void outss(ulong, void*, int);
72 void	insb(ulong, void*, int);
73 void	outsb(ulong, void*, int);
74 void	intrdisable(int, void (*)(Ureg*, void*), void*, int, char*);
75 void	intrenable(int, void (*)(Ureg*, void*), void*, int, char*);
76 void	iofree(int);
77 #define	iofree(x)
78 void	ioinit(void);
79 int	iounused(int, int);
80 int	ioalloc(int, int, int, char*);
81 #define	ioalloc(a,b,c,d) 0
82 int	iprint(char*, ...);
83 void	installprof(void (*)(Ureg *, int));
84 int	isvalid_va(void*);
85 void	kbdinit(void);
86 void	L3init(void);
87 int	L3read(int, void*, int);
88 int	L3write(int, void*, int);
89 void	lcd_setbacklight(int);
90 void	lcd_sethz(int);
91 void	lights(ulong);
92 void	links(void);
93 ulong	mcpgettfreq(void);
94 void	mcpinit(void);
95 void	mcpsettfreq(ulong tfreq);
96 void	mcpspeaker(int, int);
97 void	mcptelecomsetup(ulong hz, int adm, int xint, int rint);
98 ushort	mcpadcread(int ts);
99 void	mcptouchsetup(int ts);
100 void	mcptouchintrenable(void);
101 void	mcptouchintrdisable(void);
102 void	mcpgpiowrite(ushort mask, ushort data);
103 void	mcpgpiosetdir(ushort mask, ushort dir);
104 ushort	mcpgpioread(void);
105 void*	minicached(void*);
106 void	minidcflush(void);
107 void	mmuenable(ulong);
108 ulong	mmugetctl(void);
109 ulong	mmugetdac(void);
110 ulong	mmugetfar(void);
111 ulong	mmugetfsr(void);
112 void	mmuinit(void);
113 void*	mmuphysmap(ulong, ulong);
114 void	mmuputctl(ulong);
115 void	mmuputdac(ulong);
116 void	mmuputfsr(ulong);
117 void	mmuputttb(ulong);
118 void	mmureset(void);
119 void	mouseinit(void);
120 void	nowriteSeg(void *, void *);
121 void*	pa2va(ulong);
122 void	pcmcisread(PCMslot*);
123 int	pcmcistuple(int, int, int, void*, int);
124 PCMmap*	pcmmap(int, ulong, int, int);
125 void	pcmunmap(int, PCMmap*);
126 int	pcmpin(int slot, int type);
127 void	pcmpower(int slotno, int on);
128 int	pcmpowered(int);
129 void	pcmreset(int);
130 void	pcmsetvcc(int, int);
131 void	pcmsetvpp(int, int);
132 int	pcmspecial(char *idstr, ISAConf *isa);
133 void	pcmspecialclose(int slotno);
134 void	pcmintrenable(int, void (*)(Ureg*, void*), void*);
135 void	powerenable(void (*)(int));
136 void	powerdisable(void (*)(int));
137 void	powerdown(void);
138 void	powerinit(void);
139 void	powersuspend(void);
140 #define procsave(p)
141 #define procrestore(p)
142 long	rtctime(void);
143 void	screeninit(void);
144 void	(*screenputs)(char*, int);
145 int	segflush(void*, ulong);
146 void	setpanic(void);
147 void	setr13(int, void*);
148 int	splfhi(void);
149 int	splflo(void);
150 void	_suspendcode(void);
151 void	tlbinvalidate(void);
152 void	tlbinvalidateaddr(void*);
153 void	trapinit(void);
154 void	trapstacks(void);
155 void	trapspecial(int (*)(Ureg *, uint));
156 int	uartprint(char*, ...);
157 void	uartspecial(int, int, char, Queue**, Queue**, int (*)(Queue*, int));
158 ulong	va2pa(void*);
159 void	vectors(void);
160 void	vtable(void);
161 #define	waserror()	(up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))
162 int	wasbusy(int);
163 
164 #define KADDR(p)	((void *) p)
165 #define PADDR(v)	va2pa((void*)(v))
166 
167 // #define timer_start()	(*OSCR)
168 // #define timer_ticks(t)	(*OSCR - (ulong)(t))
169 ulong	timer_start(void);
170 ulong	timer_ticks(ulong);
171 int 	timer_devwait(ulong *adr, ulong mask, ulong val, int ost);
172 void 	timer_setwatchdog(int ost);
173 void 	timer_delay(int ost);
174 ulong	ms2tmr(int ms);
175 int	tmr2ms(ulong t);
176 void	delay(int ms);
177 ulong	us2tmr(int us);
178 int	tmr2us(ulong t);
179 void 	microdelay(int us);
180