]> git.lizzy.rs Git - plan9front.git/blob - sys/src/9/mtx/fns.h
bcm64: update io.h for pci express and raspberry pi 4
[plan9front.git] / sys / src / 9 / mtx / fns.h
1 #include "../port/portfns.h"
2
3 ulong   cankaddr(ulong);
4 void    clockinit(void);
5 void    clockintr(Ureg*);
6 void    clockintrsched(void);
7 int     cmpswap(long*, long, long);
8 #define coherence()     eieio()
9 void    cpuidprint(void);
10 #define cycles(x)       do{}while(0)
11 void    dcflush(void*, ulong);
12 void    delay(int);
13 void    dumpregs(Ureg*);
14 void    delayloopinit(void);
15 void    eieio(void);
16 void    evenaddr(ulong);
17 void    faultpower(Ureg*, ulong addr, int read);
18 void    fprestore(FPsave*);
19 void    fpsave(FPsave*);
20 char*   getconf(char*);
21 ulong   getdar(void);
22 ulong   getdec(void);
23 ulong   getdsisr(void);
24 ulong   gethid0(void);
25 ulong   gethid1(void);
26 ulong   getmsr(void);
27 ulong   getpvr(void);
28 void    gotopc(ulong);
29 int     havetimer(void);
30 void    hwintrinit(void);
31 void    i8250console(void);
32 void    i8259init(void);
33 int     i8259intack(void);
34 int     i8259enable(Vctl*);
35 int     i8259vecno(int);
36 int     i8259disable(int);
37 void    icflush(void*, ulong);
38 #define idlehands()                     /* nothing to do in the runproc */
39 int     inb(int);
40 void    insb(int, void*, int);
41 ushort  ins(int);
42 void    inss(int, void*, int);
43 ulong   inl(int);
44 void    insl(int, void*, int);
45 void    intr(Ureg*);
46 void    intrenable(int, void (*)(Ureg*, void*), void*, int, char*);
47 int     ioalloc(int, int, int, char*);
48 void    iofree(int);
49 void    ioinit(void);
50 int     iprint(char*, ...);
51 int     isaconfig(char*, int, ISAConf*);
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    procfork(Proc*);
87 void    putdec(ulong);
88 void    puthid0(ulong);
89 void    puthid1(ulong);
90 void    putmsr(ulong);
91 void    putsdr1(ulong);
92 void    putsr(int, ulong);
93 void    raveninit(void);
94 void    sync(void);
95 int     tas(void*);
96 void    timeradd(Timer *);
97 void    timerdel(Timer *);
98 void    touser(void*);
99 void    trapinit(void);
100 void    trapvec(void);
101 void    tlbflush(ulong);
102 void    tlbflushall(void);
103 #define userureg(ur) (((ur)->status & MSR_PR) != 0)
104 void    watchreset(void);
105
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)