add CTL_MACHDEP definitions
[unix-history] / usr / src / sys / hp300 / include / param.h
index 71fdd10..45d77c7 100644 (file)
@@ -9,9 +9,9 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- * from: Utah $Hdr: machparam.h 1.11 89/08/14$
+ * from: Utah $Hdr: machparam.h 1.16 92/12/20$
  *
  *
- *     @(#)param.h     7.4 (Berkeley) %G%
+ *     @(#)param.h     7.13 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
  */
 #define        MACHINE "hp300"
 
  */
 #define        MACHINE "hp300"
 
+/*
+ * Round p (pointer or byte index) up to a correctly-aligned value for all
+ * data types (int, long, ...).   The result is u_int and must be cast to
+ * any desired pointer type.
+ */
+#define        ALIGNBYTES      3
+#define        ALIGN(p)        (((u_int)(p) + ALIGNBYTES) &~ ALIGNBYTES)
+
 #define        NBPG            4096            /* bytes/page */
 #define        PGOFSET         (NBPG-1)        /* byte offset into page */
 #define        PGSHIFT         12              /* LOG2(NBPG) */
 #define        NPTEPG          (NBPG/(sizeof (struct pte)))
 
 #define        NBPG            4096            /* bytes/page */
 #define        PGOFSET         (NBPG-1)        /* byte offset into page */
 #define        PGSHIFT         12              /* LOG2(NBPG) */
 #define        NPTEPG          (NBPG/(sizeof (struct pte)))
 
-#define NBSEG          (1024*NBPG)     /* bytes/segment */
+#define NBSEG          0x400000        /* bytes/segment */
 #define        SEGOFSET        (NBSEG-1)       /* byte offset into segment */
 #define        SEGSHIFT        22              /* LOG2(NBSEG) */
 
 #define        SEGOFSET        (NBSEG-1)       /* byte offset into segment */
 #define        SEGSHIFT        22              /* LOG2(NBSEG) */
 
@@ -43,7 +51,7 @@
 #define        SSIZE           1               /* initial stack size/NBPG */
 #define        SINCR           1               /* increment of stack/NBPG */
 
 #define        SSIZE           1               /* initial stack size/NBPG */
 #define        SINCR           1               /* increment of stack/NBPG */
 
-#define        UPAGES          3               /* pages of u-area */
+#define        UPAGES          2               /* pages of u-area */
 
 /*
  * Constants related to network buffer management.
 
 /*
  * Constants related to network buffer management.
@@ -53,8 +61,8 @@
  * of the hardware page size.
  */
 #define        MSIZE           128             /* size of an mbuf */
  * of the hardware page size.
  */
 #define        MSIZE           128             /* size of an mbuf */
-#define        MCLBYTES        1024
-#define        MCLSHIFT        10
+#define        MCLBYTES        2048            /* large enough for ether MTU */
+#define        MCLSHIFT        11
 #define        MCLOFSET        (MCLBYTES - 1)
 #ifndef NMBCLUSTERS
 #ifdef GATEWAY
 #define        MCLOFSET        (MCLBYTES - 1)
 #ifndef NMBCLUSTERS
 #ifdef GATEWAY
  * Size of kernel malloc arena in CLBYTES-sized logical pages
  */ 
 #ifndef NKMEMCLUSTERS
  * Size of kernel malloc arena in CLBYTES-sized logical pages
  */ 
 #ifndef NKMEMCLUSTERS
-#define        NKMEMCLUSTERS   (512*1024/CLBYTES)
+#define        NKMEMCLUSTERS   (2048*1024/CLBYTES)
 #endif
 
 #endif
 
-/*
- * Some macros for units conversion
- */
-/* Core clicks (4096 bytes) to segments and vice versa */
-#define        ctos(x) (x)
-#define        stoc(x) (x)
-
-/* Core clicks (4096 bytes) to disk blocks */
+/* pages ("clicks") (4096 bytes) to disk blocks */
 #define        ctod(x) ((x)<<(PGSHIFT-DEV_BSHIFT))
 #define        dtoc(x) ((x)>>(PGSHIFT-DEV_BSHIFT))
 #define        dtob(x) ((x)<<DEV_BSHIFT)
 
 #define        ctod(x) ((x)<<(PGSHIFT-DEV_BSHIFT))
 #define        dtoc(x) ((x)>>(PGSHIFT-DEV_BSHIFT))
 #define        dtob(x) ((x)<<DEV_BSHIFT)
 
-/* clicks to bytes */
+/* pages to bytes */
 #define        ctob(x) ((x)<<PGSHIFT)
 
 #define        ctob(x) ((x)<<PGSHIFT)
 
-/* bytes to clicks */
+/* bytes to pages */
 #define        btoc(x) (((unsigned)(x)+(NBPG-1))>>PGSHIFT)
 
 #define        btoc(x) (((unsigned)(x)+(NBPG-1))>>PGSHIFT)
 
+#define LABELSECTOR    (1024/DEV_BSIZE)
+#define LABELOFFSET    0
+
 #define        btodb(bytes)                    /* calculates (bytes / DEV_BSIZE) */ \
        ((unsigned)(bytes) >> DEV_BSHIFT)
 #define        dbtob(db)                       /* calculates (db * DEV_BSIZE) */ \
 #define        btodb(bytes)                    /* calculates (bytes / DEV_BSIZE) */ \
        ((unsigned)(bytes) >> DEV_BSHIFT)
 #define        dbtob(db)                       /* calculates (db * DEV_BSIZE) */ \
 /*
  * Mach derived conversion macros
  */
 /*
  * Mach derived conversion macros
  */
-#define hp300_round_seg(x)     ((((unsigned)(x)) + NBSEG - 1) & ~(NBSEG-1))
-#define hp300_trunc_seg(x)     ((unsigned)(x) & ~(NBSEG-1))
 #define hp300_round_page(x)    ((((unsigned)(x)) + NBPG - 1) & ~(NBPG-1))
 #define hp300_trunc_page(x)    ((unsigned)(x) & ~(NBPG-1))
 #define hp300_round_page(x)    ((((unsigned)(x)) + NBPG - 1) & ~(NBPG-1))
 #define hp300_trunc_page(x)    ((unsigned)(x) & ~(NBPG-1))
-#define hp300_btos(x)          ((unsigned)(x) >> SEGSHIFT)
-#define hp300_stob(x)          ((unsigned)(x) << SEGSHIFT)
 #define hp300_btop(x)          ((unsigned)(x) >> PGSHIFT)
 #define hp300_ptob(x)          ((unsigned)(x) << PGSHIFT)
 
 #define hp300_btop(x)          ((unsigned)(x) >> PGSHIFT)
 #define hp300_ptob(x)          ((unsigned)(x) << PGSHIFT)
 
 #define spl6()  _spl(PSL_S|PSL_IPL6)
 #define spl7()  _spl(PSL_S|PSL_IPL7)
 
 #define spl6()  _spl(PSL_S|PSL_IPL6)
 #define spl7()  _spl(PSL_S|PSL_IPL7)
 
-#define splsoftclock()  spl1()
-#define splnet()        spl1()
-#define splbio()        spl5()
-#define splimp()        spl5()
-#define spltty()        spl5()
-#define splclock()      spl6()
-#define splvm()         spl6()
-#define splhigh()       spl7()
-#define splsched()      spl7()
+#define splsoftclock() spl1()
+#define splnet()       spl1()
+#define splbio()       spl5()
+#define splimp()       spl5()
+#define spltty()       spl5()
+#define splclock()     spl6()
+#define splstatclock() spl6()
+#define splvm()                spl6()
+#define splhigh()      spl7()
+#define splsched()     spl7()
 
 /* watch out for side effects */
 #define splx(s)         (s & PSL_IPL ? _spl(s) : spl0())
 
 /* watch out for side effects */
 #define splx(s)         (s & PSL_IPL ? _spl(s) : spl0())
 int    cpuspeed;
 #define        DELAY(n)        { register int N = cpuspeed * (n); while (--N > 0); }
 #endif
 int    cpuspeed;
 #define        DELAY(n)        { register int N = cpuspeed * (n); while (--N > 0); }
 #endif
-
-#else KERNEL
+#else
 #define        DELAY(n)        { register int N = (n); while (--N > 0); }
 #define        DELAY(n)        { register int N = (n); while (--N > 0); }
-#endif KERNEL
+#endif
 
 #ifdef HPUXCOMPAT
 /*
 
 #ifdef HPUXCOMPAT
 /*
@@ -166,7 +166,10 @@ int        cpuspeed;
  * Pages in the first 256Mb are mapped in at every 256Mb segment.
  */
 #define HPMMMASK       0xF0000000
  * Pages in the first 256Mb are mapped in at every 256Mb segment.
  */
 #define HPMMMASK       0xF0000000
-#define ISHPMMADDR(v)  \
-    ((curproc->p_addr->u_pcb.pcb_flags&PCB_HPUXMMAP) && ((unsigned)(v)&HPMMMASK) != HPMMMASK)
-#define HPMMBASEADDR(v)        ((unsigned)(v) & ~HPMMMASK)
+#define ISHPMMADDR(v) \
+       ((curproc->p_md.md_flags & MDP_HPUXMMAP) && \
+        ((unsigned)(v) & HPMMMASK) && \
+        ((unsigned)(v) & HPMMMASK) != HPMMMASK)
+#define HPMMBASEADDR(v) \
+       ((unsigned)(v) & ~HPMMMASK)
 #endif
 #endif