1 #include "../port/portfns.h"
9 void dcflush(void*, ulong);
10 void dczap(void*, ulong);
12 void delayloopinit(void);
17 void faultpower(Ureg*, ulong addr, int read);
18 void flashprogpower(int);
20 void fprestore(FPsave*);
43 void hwintrinit(void);
45 void icflush(void*, ulong);
47 #define idlehands() /* nothing to do in the runproc */
51 void intrenable(int, void (*)(Ureg*, void*), void*, char*);
52 void intrdisable(int, void (*)(Ureg*, void*), void*, char*);
53 int ioalloc(int, int, int, char*);
55 int iprint(char*, ...);
56 int isaconfig(char*, int, ISAConf*);
60 void vectordisable(Vctl *);
61 int vectorenable(Vctl *);
70 int pcicfgr16(Pcidev*, int);
71 int pcicfgr32(Pcidev*, int);
72 int pcicfgr8(Pcidev*, int);
73 void pcicfgw16(Pcidev*, int, int);
74 void pcicfgw32(Pcidev*, int, int);
75 void pcicfgw8(Pcidev*, int, int);
77 void procsetup(Proc*);
91 void putsr(int, ulong);
93 void sethvec(int, void (*)(void));
94 void setmvec(int, void (*)(void), void (*)(void));
95 void sharedseginit(void);
99 void timeradd(Timer *);
100 void timerdel(Timer *);
101 void timerinit(void);
102 void tlbflush(ulong);
103 void tlbflushall(void);
110 #define userureg(ur) (((ur)->status & MSR_PR) != 0)
111 #define waserror() (up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))
112 #define KADDR(a) ((void*)((ulong)(a)|KZERO))
113 #define PADDR(a) ((((ulong)(a)&0xf0000000)==0xf0000000)?(ulong)(a):((ulong)(a)&~KZERO))
114 #define coherence() eieio()
115 Pcidev* pcimatch(Pcidev*, int, int);
116 Pcidev* pcimatchtbdf(int);
117 void procrestore(Proc*);
120 extern ulong getpll(void);
121 extern ulong getl2cr(void);
122 extern void putl2cr(ulong);