OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [h8300/] [arch/] [current/] [include/] [arch.inc] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
#ifndef CYGONCE_HAL_ARCH_INC
2
#define CYGONCE_HAL_ARCH_INC
3
##=============================================================================
4
##
5
##      arch.inc
6
##
7
##      H8/300 assembler header file
8
##
9
##=============================================================================
10
## ####ECOSGPLCOPYRIGHTBEGIN####
11
## -------------------------------------------
12
## This file is part of eCos, the Embedded Configurable Operating System.
13
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
14
##
15
## eCos is free software; you can redistribute it and/or modify it under
16
## the terms of the GNU General Public License as published by the Free
17
## Software Foundation; either version 2 or (at your option) any later
18
## version.
19
##
20
## eCos is distributed in the hope that it will be useful, but WITHOUT
21
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
22
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
23
## for more details.
24
##
25
## You should have received a copy of the GNU General Public License
26
## along with eCos; if not, write to the Free Software Foundation, Inc.,
27
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
28
##
29
## As a special exception, if other files instantiate templates or use
30
## macros or inline functions from this file, or you compile this file
31
## and link it with other works to produce a work based on this file,
32
## this file does not by itself cause the resulting work to be covered by
33
## the GNU General Public License. However the source code for this file
34
## must still be made available in accordance with section (3) of the GNU
35
## General Public License v2.
36
##
37
## This exception does not invalidate any other reasons why a work based
38
## on this file might be covered by the GNU General Public License.
39
## -------------------------------------------
40
## ####ECOSGPLCOPYRIGHTEND####
41
##=============================================================================
42
#######DESCRIPTIONBEGIN####
43
##
44
## Author(s):   yoshinori sato
45
## Contributors:        yoshinori sato
46
## Date:        2002-02-14
47
## Purpose:     Architecture definitions.
48
## Description: This file contains various definitions and macros that are
49
##              useful for writing assembly code for the H8300 CPU family.
50
## Usage:
51
##              #include 
52
##              ...
53
##
54
##
55
######DESCRIPTIONEND####
56
##
57
##=============================================================================
58
 
59
#include 
60
 
61
#include 
62
 
63
##-----------------------------------------------------------------------------
64
## CPU specific macros. These provide a common assembler interface to
65
## operations that may have CPU specific implementations on different
66
## variants of the architecture.
67
 
68
#ifndef CYGPKG_HAL_H8300_CPU_INIT_DEFINED
69
        # Initialize CPU
70
        .macro  hal_cpu_init
71
        # Set up the PSW
72
        ldc     #0xc0,ccr
73
        .endm
74
#endif
75
 
76
        # Enable further exception processing, and disable
77
        # interrupt processing.
78
        .macro hal_cpu_except_enable
79
        .endm
80
 
81
        # Return from exception.
82
        .macro  hal_cpu_eret pc,sr
83
        .endm
84
 
85
##-----------------------------------------------------------------------------
86
# Default interrupt decoding macros.
87
 
88
#ifndef CYGPKG_HAL_H8300_INTC_DEFINED
89
 
90
#ifndef CYGPKG_HAL_H8300_INTC_INIT_DEFINED
91
        # initialize all interrupts to disabled
92
        .macro  hal_intc_init
93
        .endm
94
#endif
95
 
96
        .macro  hal_intc_decode vnum
97
        .endm
98
 
99
#endif
100
 
101
#------------------------------------------------------------------------------
102
# MMU macros.
103
 
104
#ifndef CYGPKG_HAL_H8300_MMU_DEFINED
105
 
106
        .macro  hal_mmu_init
107
        .endm
108
 
109
#endif
110
 
111
#------------------------------------------------------------------------------
112
# MEMC macros.
113
 
114
#ifndef CYGPKG_HAL_H8300_MEMC_DEFINED
115
 
116
        .macro  hal_memc_init
117
        .endm
118
 
119
#endif
120
 
121
#------------------------------------------------------------------------------
122
# Cache macros.
123
 
124
#ifndef CYGPKG_HAL_H8300_CACHE_DEFINED
125
 
126
        .macro  hal_cache_init
127
        .endm
128
 
129
#endif
130
 
131
#------------------------------------------------------------------------------
132
# Diagnostics macros.
133
 
134
#ifndef CYGPKG_HAL_H8300_DIAG_DEFINED
135
 
136
        .macro  hal_diag_init
137
        .endm
138
 
139
        .macro  hal_diag_excpt_start
140
        .endm
141
 
142
        .macro  hal_diag_intr_start
143
        .endm
144
 
145
        .macro  hal_diag_restore
146
        .endm
147
 
148
        .macro  hal_diag_data
149
        .endm
150
#endif
151
 
152
#------------------------------------------------------------------------------
153
# Timer initialization.
154
 
155
#ifndef CYGPKG_HAL_H8300_TIMER_DEFINED
156
 
157
        .macro  hal_timer_init
158
        .endm
159
 
160
#endif
161
 
162
#------------------------------------------------------------------------------
163
# Monitor initialization.
164
 
165
#ifndef CYGPKG_HAL_H8300_MON_DEFINED
166
 
167
        .macro  hal_mon_init
168
        .endm
169
 
170
#endif
171
 
172
#------------------------------------------------------------------------------
173
#endif // ifndef CYGONCE_HAL_ARCH_INC
174
# end of arch.inc

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.