blob: 18466b3e0d0cde71dab0aa5c299040e470c5c079 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
################################################################################
# Embtoolkit
# Copyright(C) 2009-2010 Abdoulaye Walsimou GAYE. All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
################################################################################
#
# \file arch-variant.kconfig
# \brief MIPS architecture kconfig options.
# \author Abdoulaye Walsimou GAYE <awg@embtoolkit.org>
# \date August 2009
################################################################################
choice
prompt "MIPS architecture variant"
depends on EMBTK_ARCH_MIPS
default EMBTK_ARCH_MIPS_MIPS32_LITTLE
help
Select architecture variant.
config EMBTK_ARCH_MIPS_MIPS1_LITTLE
bool "MIPS I little endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS1_BIG
bool "MIPS I big endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS2_LITTLE
bool "MIPS II little endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS2_BIG
bool "MIPS II big endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS3_LITTLE
bool "MIPS III little endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS3_BIG
bool "MIPS III big endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS4_LITTLE
bool "MIPS IV little endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS4_BIG
bool "MIPS IV big endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS32_LITTLE
bool "MIPS32 little endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS32_BIG
bool "MIPS32 big endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS32R2_LITTLE
bool "MIPS32 release 2 little endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS32R2_BIG
bool "MIPS32 release 2 big endian"
select EMBTK_TARGET_ARCH_32BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS64_LITTLE
bool "MIPS64 little endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS64_BIG
bool "MIPS64 big endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
config EMBTK_ARCH_MIPS_MIPS64R2_LITTLE
bool "MIPS64 release 2 little endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_LITTLE_ENDIAN
config EMBTK_ARCH_MIPS_MIPS64R2_BIG
bool "MIPS64 release 2 big endian"
select EMBTK_TARGET_ARCH_64BITS
select EMBTK_ARCH_MIPS_BIG_ENDIAN
endchoice
choice
prompt "ABI"
depends on EMBTK_ARCH_MIPS
default EMBTK_ARCH_MIPS_ABI_O32
help
Here you can select which abi you want to use.
config EMBTK_ARCH_MIPS_ABI_O32
bool "o32"
select EMBTK_32BITS_FS
config EMBTK_ARCH_MIPS_ABI_N32
bool "n32" if !EMBTK_TARGET_ARCH_32BITS
select EMBTK_64BITS_FS_COMPAT32
# config EMBTK_ARCH_MIPS_ABI_EABI
# bool "eabi (BROKEN)" if !EMBTK_TARGET_ARCH_32BITS
# config EMBTK_ARCH_MIPS_ABI_O64
# bool "o64 (BROKEN)" if !EMBTK_TARGET_ARCH_32BITS
config EMBTK_ARCH_MIPS_ABI_N64
bool "n64" if !EMBTK_TARGET_ARCH_32BITS
select EMBTK_64BITS_FS
endchoice
config EMBTK_ARCH_MIPS_BIG_ENDIAN
bool
select EMBTK_TARGET_ARCH_BIG_ENDIAN
config EMBTK_ARCH_MIPS_LITTLE_ENDIAN
bool
select EMBTK_TARGET_ARCH_LITTLE_ENDIAN
|