fns.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  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 cpuidprint(void);
  7. void cycles(uvlong*);
  8. void dbgputc(int c);
  9. void dcacheenb(void);
  10. void dcflush(void*, ulong);
  11. void dczap(void*, ulong);
  12. void delay(int);
  13. void delayloopinit(void);
  14. void dmiss(void);
  15. void dumpregs(Ureg*);
  16. void eieio(void);
  17. void evenaddr(ulong);
  18. void faultpower(Ureg*, ulong addr, int read);
  19. void flashprogpower(int);
  20. void fpgareset(void);
  21. void fprestore(FPsave*);
  22. void fpsave(FPsave*);
  23. void fptrap(Ureg*);
  24. char* getconf(char*);
  25. ulong getdar(void);
  26. ulong getdcmp(void);
  27. ulong getdec(void);
  28. ulong getdmiss(void);
  29. ulong getdsisr(void);
  30. ulong gethash1(void);
  31. ulong gethash2(void);
  32. ulong gethid0(void);
  33. ulong gethid1(void);
  34. ulong geticmp(void);
  35. ulong geticmp(void);
  36. ulong getimiss(void);
  37. ulong getmsr(void);
  38. ulong getpvr(void);
  39. ulong getrpa(void);
  40. ulong getsdr1(void);
  41. ulong getsr(int);
  42. ulong getsrr1(void);
  43. void gotopc(ulong);
  44. void hwintrinit(void);
  45. void icacheenb(void);
  46. void icflush(void*, ulong);
  47. void idle(void);
  48. #define idlehands() /* nothing to do in the runproc */
  49. void imiss(void);
  50. int inb(int);
  51. void intr(Ureg*);
  52. void intrenable(int, void (*)(Ureg*, void*), void*, char*);
  53. void intrdisable(int, void (*)(Ureg*, void*), void*, char*);
  54. int ioalloc(int, int, int, char*);
  55. void iofree(int);
  56. int iprint(char*, ...);
  57. int isaconfig(char*, int, ISAConf*);
  58. void kfpinit(void);
  59. #define kmapinval()
  60. void links(void);
  61. void vectordisable(Vctl *);
  62. int vectorenable(Vctl *);
  63. void intack(void);
  64. void intend(int);
  65. int intvec(void);
  66. void l2disable(void);
  67. void mmuinit(void);
  68. void mmusweep(void*);
  69. int newmmupid(void);
  70. void outb(int, int);
  71. int pcicfgr16(Pcidev*, int);
  72. int pcicfgr32(Pcidev*, int);
  73. int pcicfgr8(Pcidev*, int);
  74. void pcicfgw16(Pcidev*, int, int);
  75. void pcicfgw32(Pcidev*, int, int);
  76. void pcicfgw8(Pcidev*, int, int);
  77. void procsave(Proc*);
  78. void procsetup(Proc*);
  79. void putdcmp(ulong);
  80. void putdec(ulong);
  81. void puthash1(ulong);
  82. void puthash2(ulong);
  83. void puthid0(ulong);
  84. void puthid2(ulong);
  85. void puticmp(ulong);
  86. void puticmp(ulong);
  87. void putmsr(ulong);
  88. void putrpa(ulong);
  89. void putsdr1(ulong);
  90. void putsdr1(ulong);
  91. void putsr(int, ulong);
  92. void putsrr1(ulong);
  93. void sethvec(int, void (*)(void));
  94. void setmvec(int, void (*)(void), void (*)(void));
  95. void sharedseginit(void);
  96. void console(void);
  97. void sync(void);
  98. int tas(void*);
  99. void timeradd(Timer *);
  100. void timerdel(Timer *);
  101. void timerinit(void);
  102. void tlbflush(ulong);
  103. void tlbflushall(void);
  104. void tlbld(ulong);
  105. void tlbli(ulong);
  106. void tlbvec(void);
  107. void touser(void*);
  108. void trapinit(void);
  109. void trapvec(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*);
  118. #ifdef ucuconf
  119. extern ulong getpll(void);
  120. extern ulong getl2cr(void);
  121. extern void putl2cr(ulong);
  122. #endif