fns.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. #include "../port/portfns.h"
  2. int cistrcmp(char*, char*);
  3. int cistrncmp(char*, char*, int);
  4. void clockinit(void);
  5. void clockintr(Ureg*);
  6. void clockintrsched(void);
  7. #define coherence() eieio()
  8. void cpuidprint(void);
  9. #define cycles(x)
  10. void dcflush(void*, ulong);
  11. void delay(int);
  12. void dumpregs(Ureg*);
  13. void delayloopinit(void);
  14. void eieio(void);
  15. void evenaddr(ulong);
  16. void faultpower(Ureg*, ulong addr, int read);
  17. void fprestore(FPsave*);
  18. void fpsave(FPsave*);
  19. char* getconf(char*);
  20. ulong getdar(void);
  21. ulong getdec(void);
  22. ulong getdsisr(void);
  23. ulong gethid0(void);
  24. ulong gethid1(void);
  25. ulong getmsr(void);
  26. ulong getpvr(void);
  27. void gotopc(ulong);
  28. int havetimer(void);
  29. void hwintrinit(void);
  30. void i8250console(void);
  31. void i8259init(void);
  32. int i8259intack(void);
  33. int i8259enable(Vctl*);
  34. int i8259vecno(int);
  35. int i8259disable(int);
  36. void icflush(void*, ulong);
  37. #define idlehands() /* nothing to do in the runproc */
  38. int inb(int);
  39. void insb(int, void*, int);
  40. ushort ins(int);
  41. void inss(int, void*, int);
  42. ulong inl(int);
  43. void insl(int, void*, int);
  44. void intr(Ureg*);
  45. void intrenable(int, void (*)(Ureg*, void*), void*, int, char*);
  46. int ioalloc(int, int, int, char*);
  47. void iofree(int);
  48. void ioinit(void);
  49. int iprint(char*, ...);
  50. int isaconfig(char*, int, ISAConf*);
  51. void kbdinit(void);
  52. #define kexit(a)
  53. #define kmapinval()
  54. void links(void);
  55. void mmuinit(void);
  56. void mmusweep(void*);
  57. void mpicdisable(int);
  58. void mpicenable(int, Vctl*);
  59. int mpiceoi(int);
  60. int mpicintack(void);
  61. int newmmupid(void);
  62. void outb(int, int);
  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);
  81. void pcireset(void);
  82. void pcisetbme(Pcidev*);
  83. #define procrestore(p)
  84. void procsave(Proc*);
  85. void procsetup(Proc*);
  86. void putdec(ulong);
  87. void puthid0(ulong);
  88. void puthid1(ulong);
  89. void putmsr(ulong);
  90. void putsdr1(ulong);
  91. void putsr(int, ulong);
  92. void raveninit(void);
  93. void sync(void);
  94. int tas(void*);
  95. void timeradd(Timer *);
  96. void timerdel(Timer *);
  97. void touser(void*);
  98. void trapinit(void);
  99. void trapvec(void);
  100. void tlbflush(ulong);
  101. void tlbflushall(void);
  102. #define userureg(ur) (((ur)->status & MSR_PR) != 0)
  103. void watchreset(void);
  104. #define waserror() (up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))
  105. #define KADDR(a) ((void*)((ulong)(a)|KZERO))
  106. #define PADDR(a) ((ulong)(a)&~KZERO)