[BACK]Return to m88100.h CVS log [TXT][DIR] Up to [local] / sys / arch / m88k / include

Annotation of sys/arch/m88k/include/m88100.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: m88100.h,v 1.3 2006/11/18 22:58:28 miod Exp $ */
                      2: /*
                      3:  * Mach Operating System
                      4:  * Copyright (c) 1993-1992 Carnegie Mellon University
                      5:  * All Rights Reserved.
                      6:  *
                      7:  * Permission to use, copy, modify and distribute this software and its
                      8:  * documentation is hereby granted, provided that both the copyright
                      9:  * notice and this permission notice appear in all copies of the
                     10:  * software, derivative works or modified versions, and any portions
                     11:  * thereof, and that both notices appear in supporting documentation.
                     12:  *
                     13:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     14:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     15:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     16:  *
                     17:  * Carnegie Mellon requests users of this software to return to
                     18:  *
                     19:  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
                     20:  *  School of Computer Science
                     21:  *  Carnegie Mellon University
                     22:  *  Pittsburgh PA 15213-3890
                     23:  *
                     24:  * any improvements or extensions that they make and grant Carnegie Mellon
                     25:  * the rights to redistribute these changes.
                     26:  */
                     27:
                     28: #ifndef __M88K_M88100_H__
                     29: #define __M88K_M88100_H__
                     30:
                     31: /*
                     32:  *     88100 RISC definitions
                     33:  */
                     34:
                     35: /*
                     36:  * DMT0, DMT1, DMT2 layout
                     37:  *
                     38:  * The DMT_SKIP bit is never set by the cpu.  It is used to mark 'known'
                     39:  * transactions so that they don't get processed a second time by
                     40:  * data_access_emulation().
                     41:  */
                     42: #define DMT_SKIP       0x00010000      /* skip this dmt */
                     43: #define DMT_BO         0x00008000      /* Byte-Ordering */
                     44: #define DMT_DAS                0x00004000      /* Data Access Space */
                     45: #define DMT_DOUB1      0x00002000      /* Double Word */
                     46: #define DMT_LOCKBAR    0x00001000      /* Bud Lock */
                     47: #define DMT_DREG       0x00000F80      /* Destination Registers 5bits */
                     48: #define DMT_SIGNED     0x00000040      /* Sign-Extended Bit */
                     49: #define DMT_EN         0x0000003C      /* Byte Enable Bit */
                     50: #define DMT_WRITE      0x00000002      /* Read/Write Transaction Bit */
                     51: #define        DMT_VALID       0x00000001      /* Valid Transaction Bit */
                     52:
                     53: #define        DMT_DREGSHIFT   7
                     54: #define        DMT_ENSHIFT     2
                     55:
                     56: #define        DMT_DREGBITS(x) (((x) & DMT_DREG) >> DMT_DREGSHIFT)
                     57: #define        DMT_ENBITS(x)   (((x) & DMT_EN) >> DMT_ENSHIFT)
                     58:
                     59: #if defined(_KERNEL) && !defined(_LOCORE)
                     60:
                     61: void   dae_print(unsigned *);
                     62: void   data_access_emulation(unsigned *);
                     63:
                     64: u_int32_t do_load_word(vaddr_t, int);
                     65: u_int16_t do_load_half(vaddr_t, int);
                     66: u_int8_t  do_load_byte(vaddr_t, int);
                     67: void      do_store_word(vaddr_t, u_int32_t, int);
                     68: void      do_store_half(vaddr_t, u_int16_t, int);
                     69: void      do_store_byte(vaddr_t, u_int8_t, int);
                     70: u_int32_t do_xmem_word(vaddr_t, u_int32_t, int);
                     71: u_int8_t  do_xmem_byte(vaddr_t, u_int8_t, int);
                     72:
                     73: void   m88100_apply_patches(void);
                     74:
                     75: #endif
                     76:
                     77: #endif /* __M88K_M88100_H__ */

CVSweb