1 #include "../port/portfns.h"
6 void clockintrsched(void);
7 int cmpswap(long*, long, long);
8 #define coherence() eieio()
10 #define cycles(x) do{}while(0)
11 void dcflush(void*, ulong);
14 void delayloopinit(void);
17 void faultpower(Ureg*, ulong addr, int read);
18 void fprestore(FPsave*);
30 void hwintrinit(void);
31 void i8250console(void);
33 int i8259intack(void);
34 int i8259enable(Vctl*);
36 int i8259disable(int);
37 void icflush(void*, ulong);
38 #define idlehands() /* nothing to do in the runproc */
40 void insb(int, void*, int);
42 void inss(int, void*, int);
44 void insl(int, void*, int);
46 void intrenable(int, void (*)(Ureg*, void*), void*, int, char*);
47 int ioalloc(int, int, int, char*);
50 int iprint(char*, ...);
51 int isaconfig(char*, int, ISAConf*);
57 void mpicdisable(int);
58 void mpicenable(int, Vctl*);
63 void outsb(int, void*, int);
64 void outs(int, ushort);
65 void outss(int, void*, int);
66 void outl(int, ulong);
67 void outsl(int, void*, int);
68 int pciscan(int, Pcidev **);
69 ulong pcibarsize(Pcidev *, int);
70 int pcicfgr8(Pcidev*, int);
71 int pcicfgr16(Pcidev*, int);
72 int pcicfgr32(Pcidev*, int);
73 void pcicfgw8(Pcidev*, int, int);
74 void pcicfgw16(Pcidev*, int, int);
75 void pcicfgw32(Pcidev*, int, int);
76 void pciclrbme(Pcidev*);
77 void pcihinv(Pcidev*);
78 uchar pciipin(Pcidev *, uchar);
79 Pcidev* pcimatch(Pcidev*, int, int);
80 Pcidev* pcimatchtbdf(int);
82 void pcisetbme(Pcidev*);
83 #define procrestore(p)
85 void procsetup(Proc*);
92 void putsr(int, ulong);
96 void timeradd(Timer *);
97 void timerdel(Timer *);
101 void tlbflush(ulong);
102 void tlbflushall(void);
103 #define userureg(ur) (((ur)->status & MSR_PR) != 0)
104 void watchreset(void);
106 #define waserror() (up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))
107 #define KADDR(a) ((void*)((ulong)(a)|KZERO))
108 #define PADDR(a) ((ulong)(a)&~KZERO)