Annotation of coherent/f/usr/include/sys/coherent.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * /usr/include/sys/coherent.h
                      3:  *
                      4:  * Coherent-specific definitions, for linking kernels and related bits.
                      5:  *
                      6:  * Revised: Thu May 27 08:07:17 1993 CDT
                      7:  */
                      8: #ifndef        __SYS_COHERENT_H__
                      9: #define        __SYS_COHERENT_H__
                     10: 
                     11: #define        __KERNEL__      1
                     12: 
                     13: #include <common/feature.h>
                     14: #include <common/__paddr.h>
                     15: #include <common/_null.h>
                     16: #include <common/_time.h>
                     17: #include <kernel/_sleep.h>
                     18: #include <sys/types.h>
                     19: #include <sys/mmu.h>
                     20: #include <sys/uproc.h>
                     21: #include <kernel/alloc.h>
                     22: #if    _I386
                     23: #include <kernel/reg.h>
                     24: #include <kernel/param.h>
                     25: #define v_sleep(a1,a2,a3,a4,a5)                w_sleep(a1,a2,a5)
                     26: #else
                     27: #include <kernel/machine.h>
                     28: #include <kernel/const.h>
                     29: #define v_sleep(a1,a2,a3,a4,a5)                sleep(a1,a2,a3,a4)
                     30: #endif
                     31: 
                     32: #ifdef TRACER
                     33: #include <sys/mwc_coherent.h>
                     34: #else
                     35: #define SET_U_ERROR(errno, msg)                ((void) (u.u_error = errno))
                     36: #define T_HAL(f,c)                     ((void) 0)
                     37: #define T_PIGGY(f,c)                   ((void) 0)
                     38: #define T_VLAD(f,c)                    ((void) 0)
                     39: #define T_CON(f,c)                     ((void) 0)
                     40: #define T_MSGQ(f,c)                    ((void) 0)
                     41: #define DV(v)                          ((void) 0)
                     42: #endif /* TRACER */
                     43: 
                     44: #if    _I386
                     45: 
                     46: #define CHIRP(ch)              chirp(ch)
                     47: #define _CHIRP(ch, locn)       _chirp(ch, locn)
                     48: #define kclear(buf, nbytes)            memset(buf, 0, nbytes)
                     49: #define kkcopy(src, dest, nbytes)      (memcpy(dest, src, nbytes),nbytes)
                     50: 
                     51: #else
                     52: 
                     53: #define CHIRP(ch)              ((void) 0)
                     54: #define _CHIRP(ch, locn)       ((void) 0)
                     55: 
                     56: #endif /* ! _I386 */
                     57: 
                     58: /*
                     59:  * Storage management functions.
                     60:  */
                     61: 
                     62: #define        kalloc(n)       alloc(allkp, n)
                     63: #define kfree(p)       free(p)
                     64: 
                     65: /*
                     66:  * Functions for copying between kernel and segments.
                     67:  */
                     68: #define kscopy(k, s, o, n)     kpcopy(k, s->s_paddr+o, n)
                     69: #define skcopy(s, o, k, n)     pkcopy(s->s_paddr+o, k, n)
                     70: 
                     71: /*
                     72:  * Time of day structure.
                     73:  */
                     74: 
                     75: extern struct _TIME_OF_DAY {
                     76:        time_t  t_time;                 /* Time and date */
                     77:        int     t_tick;                 /* Clock ticks into this second */
                     78:        int     t_zone;                 /* Time zone */
                     79:        int     t_dstf;                 /* Daylight saving time used */
                     80: } timer;
                     81: 
                     82: /*
                     83:  * General global variables.
                     84:  */
                     85: extern int      debflag;               /* General debug flag */
                     86: extern int      batflag;               /* Turn on clock flag */
                     87: extern int      outflag;               /* Device timeouts */
                     88: extern int      ttyflag;               /* Console is present */
                     89: extern int      mactype;               /* Machine type */
                     90: extern unsigned utimer;                /* Unsigned timer */
                     91: extern long     lbolt;                 /* Clock ticks since system startup */
                     92: extern TIM     stimer;                 /* Swap timer */
                     93: extern unsigned msize;                 /* Memory size in K */
                     94: extern unsigned asize;                 /* Alloc size in bytes */
                     95: extern char     *icodep;               /* Init code start */
                     96: extern int      icodes;                /* Init code size */
                     97: extern dev_t    rootdev;               /* Root device */
                     98: extern dev_t    swapdev;               /* Swap device */
                     99: extern dev_t    pipedev;               /* Pipe device */
                    100: extern __paddr_t        corebot;       /* Bottom of core */
                    101: extern __paddr_t        coretop;        /* Top of core */
                    102: extern __paddr_t        holebot;       /* Bottom of I/O memory */
                    103: extern __paddr_t        holetop;       /* Top of I/O memory */
                    104: extern daddr_t  swapbot;               /* Bottom of swap */
                    105: extern daddr_t  swaptop;               /* Top of swap */
                    106: extern __paddr_t        clistp;        /* Base of clists */
                    107: extern heap_t        * allkp;          /* Alloc space */
                    108: extern int      NSLOT;                 /* Num of loadable driver data slots */
                    109: extern int      slotsz;                /* Size of loadable driver data slot */
                    110: extern int *    slotp;                 /* Loadable driver pids/data space */
                    111: extern int      (*altclk)();           /* hook for polled devices */
                    112: extern UPROC    u;                     /* Current user area. */
                    113: 
                    114: #if    _I386
                    115: 
                    116: extern unsigned total_mem;             /* Total physical memory in bytes.  */
                    117: extern SR      blockp;                 /* Base of buffers */
                    118: extern SR      allocp;
                    119: extern int     dev_loaded;
                    120: extern int     DUMP_LIM;
                    121: 
                    122: #else
                    123: 
                    124: extern char     *idatap;               /* Init data start */
                    125: extern int      idatas;                /* Init data size */
                    126: extern __paddr_t        blockp;        /* Base of buffers */
                    127: extern int      altsel;                /* for far polling, this is selector */
                    128:                                        /* ... for altclk; for near polling, */
                    129:                                        /* ... this is zero */
                    130: extern int     is_ps;                  /* 1 if running on a PS/2            */ 
                    131: 
                    132: #endif /* ! _I386 */
                    133: 
                    134: #endif /* ! defined (__SYS_COHERENT_H__) */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.