65363da25e
Tree structure: - sys/arch/sh3: sh3 generic code As commented, in-chip device drivers are put into sys/arch/sh3/dev. - sys/arch/evbsh3: sh3 evaluation boards (pure sh3 CPU, no fancy external HW) - sys/arch/mmeye: Brains mmEye, www.brains.co.jp MI source code includes couple of #ifdef for sh3-coff support. (sh3 uses coff or elf) Needs some more improvements, especialy in sys/arch/sh3/conf/files.sh3, to compile the tree (due to last minute tree structure change).
99 lines
4.7 KiB
C
99 lines
4.7 KiB
C
/* $NetBSD: trap.h,v 1.1 1999/09/13 10:31:23 itojun Exp $ */
|
|
|
|
/*-
|
|
* Copyright (c) 1990 The Regents of the University of California.
|
|
* All rights reserved.
|
|
*
|
|
* This code is derived from software contributed to Berkeley by
|
|
* William Jolitz.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions
|
|
* are met:
|
|
* 1. Redistributions of source code must retain the above copyright
|
|
* notice, this list of conditions and the following disclaimer.
|
|
* 2. Redistributions in binary form must reproduce the above copyright
|
|
* notice, this list of conditions and the following disclaimer in the
|
|
* documentation and/or other materials provided with the distribution.
|
|
* 3. All advertising materials mentioning features or use of this software
|
|
* must display the following acknowledgement:
|
|
* This product includes software developed by the University of
|
|
* California, Berkeley and its contributors.
|
|
* 4. Neither the name of the University nor the names of its contributors
|
|
* may be used to endorse or promote products derived from this software
|
|
* without specific prior written permission.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
* SUCH DAMAGE.
|
|
*
|
|
* @(#)trap.h 5.4 (Berkeley) 5/9/91
|
|
*/
|
|
|
|
/*
|
|
* Trap type values
|
|
* also known in trap.c for name strings
|
|
*/
|
|
|
|
/*
|
|
* SH3 version
|
|
*
|
|
* T.Horiuchi Brains Corp. 05/22/1998
|
|
*/
|
|
#define T_POWERON 0x000 /* Power on */
|
|
#define T_RESET 0x020 /* Reset */
|
|
#define T_TLBMISSR 0x040 /* TLB miss(Read) */
|
|
#define T_TLBINVALIDR 0x040 /* Invalid TLB(Read) */
|
|
#define T_TLBMISSW 0x060 /* TLB miss(Write) */
|
|
#define T_TLBINVALIDW 0x060 /* Invalid TLB(Write) */
|
|
#define T_INITPAGEWR 0x080 /* Initial Page write */
|
|
#define T_TLBPRIVR 0x0a0 /* TLB privilege violation(Read) */
|
|
#define T_TLBPRIVW 0x0c0 /* TLB privilege violation(Write) */
|
|
#define T_ADDRESSERRR 0x0e0 /* Address Error(Read) */
|
|
#define T_ADDRESSERRW 0x100 /* Address Error(Write) */
|
|
#define T_TRAP 0x160 /* trapa instruction */
|
|
#define T_INVALIDISN 0x180 /* Invalid instruction */
|
|
#define T_INVALIDSLOT 0x1a0 /* Invalid slot instruction */
|
|
#define T_USERBREAK 0x1e0 /* User break */
|
|
#define T_NMI 0x1c0 /* NMI */
|
|
#define T_EXTINT0 0x200 /* External Interrupt IRL=0 */
|
|
#define T_EXTINT1 0x220 /* External Interrupt IRL=1 */
|
|
#define T_EXTINT2 0x240 /* External Interrupt IRL=2 */
|
|
#define T_EXTINT3 0x260 /* External Interrupt IRL=3 */
|
|
#define T_EXTINT4 0x280 /* External Interrupt IRL=4 */
|
|
#define T_EXTINT5 0x2a0 /* External Interrupt IRL=5 */
|
|
#define T_EXTINT6 0x2c0 /* External Interrupt IRL=6 */
|
|
#define T_EXTINT7 0x2e0 /* External Interrupt IRL=7 */
|
|
#define T_EXTINT8 0x300 /* External Interrupt IRL=8 */
|
|
#define T_EXTINT9 0x320 /* External Interrupt IRL=9 */
|
|
#define T_EXTINT10 0x340 /* External Interrupt IRL=10 */
|
|
#define T_EXTINT11 0x360 /* External Interrupt IRL=11 */
|
|
#define T_EXTINT12 0x380 /* External Interrupt IRL=12 */
|
|
#define T_EXTINT13 0x3a0 /* External Interrupt IRL=13 */
|
|
#define T_EXTINT14 0x3c0 /* External Interrupt IRL=14 */
|
|
#define T_PIN_TMU0 0x400 /* Peripheral Interrupt(TMU0) */
|
|
#define T_PIN_TMU1 0x420 /* Peripheral Interrupt(TMU1) */
|
|
#define T_PIN_TMU2_TUNI2 0x440 /* Peripheral Interrupt(TMU2_TUNI2) */
|
|
#define T_PIN_TMU2_TICPI2 0x460 /* Peripheral Interrupt(TMU2_TICPI2) */
|
|
#define T_PIN_RTC_ATI 0x480 /* Peripheral Interrupt(RTC_ATI) */
|
|
#define T_PIN_RTC_PRI 0x4a0 /* Peripheral Interrupt(RTC_PRI) */
|
|
#define T_PIN_RTC_CUI 0x4c0 /* Peripheral Interrupt(RTC_CUI) */
|
|
#define T_PIN_SCI_ERI 0x4e0 /* Peripheral Interrupt(SCI_ERI) */
|
|
#define T_PIN_SCI_RXI 0x500 /* Peripheral Interrupt(SCI_RXI) */
|
|
#define T_PIN_SCI_TXI 0x520 /* Peripheral Interrupt(SCI_TXI) */
|
|
#define T_PIN_SCI_TEI 0x540 /* Peripheral Interrupt(SCI_TEI) */
|
|
#define T_PIN_WDT 0x560 /* Peripheral Interrupt(WDT) */
|
|
#define T_PIN_REF_RCMI 0x580 /* Peripheral Interrupt(REF_RCMI) */
|
|
#define T_PIN_REF_ROVI 0x5a0 /* Peripheral Interrupt(REF_ROVI) */
|
|
|
|
#define T_ASTFLT 0xf00 /* Asynchronous system trap */
|
|
#define T_USER 0x001 /* Trap in user mode */
|