[BACK]Return to reboot.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / sys

Annotation of src/sys/sys/reboot.h, Revision 1.10

1.10    ! mrg         1: /*     $NetBSD: reboot.h,v 1.9 1996/04/22 01:23:25 christos Exp $      */
1.6       cgd         2:
1.1       cgd         3: /*
1.7       mycroft     4:  * Copyright (c) 1982, 1986, 1988, 1993, 1994
1.4       cgd         5:  *     The Regents of the University of California.  All rights reserved.
1.1       cgd         6:  *
                      7:  * Redistribution and use in source and binary forms, with or without
                      8:  * modification, are permitted provided that the following conditions
                      9:  * are met:
                     10:  * 1. Redistributions of source code must retain the above copyright
                     11:  *    notice, this list of conditions and the following disclaimer.
                     12:  * 2. Redistributions in binary form must reproduce the above copyright
                     13:  *    notice, this list of conditions and the following disclaimer in the
                     14:  *    documentation and/or other materials provided with the distribution.
                     15:  * 3. All advertising materials mentioning features or use of this software
                     16:  *    must display the following acknowledgement:
                     17:  *     This product includes software developed by the University of
                     18:  *     California, Berkeley and its contributors.
                     19:  * 4. Neither the name of the University nor the names of its contributors
                     20:  *    may be used to endorse or promote products derived from this software
                     21:  *    without specific prior written permission.
                     22:  *
                     23:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     24:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     25:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     26:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     27:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     28:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     29:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     30:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     31:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     32:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     33:  * SUCH DAMAGE.
                     34:  *
1.7       mycroft    35:  *     @(#)reboot.h    8.2 (Berkeley) 7/10/94
1.1       cgd        36:  */
                     37:
                     38: /*
1.8       scottr     39:  * Arguments to reboot system call.  These are passed to the boot program,
                     40:  * and then on to init.
1.1       cgd        41:  */
                     42: #define        RB_AUTOBOOT     0       /* flags for system auto-booting itself */
                     43:
1.7       mycroft    44: #define        RB_ASKNAME      0x001   /* ask for file name to reboot from */
                     45: #define        RB_SINGLE       0x002   /* reboot to single user only */
                     46: #define        RB_NOSYNC       0x004   /* dont sync before reboot */
                     47: #define        RB_HALT         0x008   /* don't reboot, just halt */
                     48: #define        RB_INITNAME     0x010   /* name given for /etc/init (unused) */
                     49: #define        RB_DFLTROOT     0x020   /* use compiled-in rootdev */
                     50: #define        RB_KDB          0x040   /* give control to kernel debugger */
                     51: #define        RB_RDONLY       0x080   /* mount root fs read-only */
1.1       cgd        52: #define        RB_DUMP         0x100   /* dump kernel memory before reboot */
1.4       cgd        53: #define        RB_MINIROOT     0x200   /* mini-root present in memory at boot time */
1.1       cgd        54:
                     55: /*
                     56:  * Constants for converting boot-style device number to type,
                     57:  * adaptor (uba, mba, etc), unit number and partition number.
                     58:  * Type (== major device number) is in the low byte
                     59:  * for backward compatibility.  Except for that of the "magic
                     60:  * number", each mask applies to the shifted value.
                     61:  * Format:
                     62:  *      (4) (4) (4) (4)  (8)     (8)
                     63:  *     --------------------------------
                     64:  *     |MA | AD| CT| UN| PART  | TYPE |
                     65:  *     --------------------------------
                     66:  */
                     67: #define        B_ADAPTORSHIFT          24
                     68: #define        B_ADAPTORMASK           0x0f
                     69: #define        B_ADAPTOR(val)          (((val) >> B_ADAPTORSHIFT) & B_ADAPTORMASK)
                     70: #define B_CONTROLLERSHIFT      20
                     71: #define B_CONTROLLERMASK       0xf
                     72: #define        B_CONTROLLER(val)       (((val)>>B_CONTROLLERSHIFT) & B_CONTROLLERMASK)
                     73: #define B_UNITSHIFT            16
                     74: #define B_UNITMASK             0xf
                     75: #define        B_UNIT(val)             (((val) >> B_UNITSHIFT) & B_UNITMASK)
                     76: #define B_PARTITIONSHIFT       8
                     77: #define B_PARTITIONMASK                0xff
                     78: #define        B_PARTITION(val)        (((val) >> B_PARTITIONSHIFT) & B_PARTITIONMASK)
                     79: #define        B_TYPESHIFT             0
                     80: #define        B_TYPEMASK              0xff
                     81: #define        B_TYPE(val)             (((val) >> B_TYPESHIFT) & B_TYPEMASK)
                     82:
1.7       mycroft    83: #define        B_MAGICMASK     0xf0000000
                     84: #define        B_DEVMAGIC      0xa0000000
1.1       cgd        85:
                     86: #define MAKEBOOTDEV(type, adaptor, controller, unit, partition) \
                     87:        (((type) << B_TYPESHIFT) | ((adaptor) << B_ADAPTORSHIFT) | \
                     88:        ((controller) << B_CONTROLLERSHIFT) | ((unit) << B_UNITSHIFT) | \
                     89:        ((partition) << B_PARTITIONSHIFT) | B_DEVMAGIC)
1.9       christos   90:
                     91: #ifdef _KERNEL
                     92:
                     93: __BEGIN_DECLS
                     94:
1.10    ! mrg        95: void   boot __P((int, char *))
1.9       christos   96:     __attribute__((__noreturn__));
                     97:
                     98: __END_DECLS
                     99:
                    100: #endif /* _KERNEL */
                    101:

CVSweb <webmaster@jp.NetBSD.org>