commit
2ccd7f6e0c
|
@ -29,6 +29,10 @@ ifeq ($(TARGET), P6600)
|
||||||
TARGET_FLAGS = -mips64r6
|
TARGET_FLAGS = -mips64r6
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(TARGET), I6500)
|
||||||
|
TARGET_FLAGS = -mips64r6
|
||||||
|
endif
|
||||||
|
|
||||||
all: getarch_2nd
|
all: getarch_2nd
|
||||||
./getarch_2nd 0 >> $(TARGET_MAKE)
|
./getarch_2nd 0 >> $(TARGET_MAKE)
|
||||||
./getarch_2nd 1 >> $(TARGET_CONF)
|
./getarch_2nd 1 >> $(TARGET_CONF)
|
||||||
|
|
|
@ -568,6 +568,11 @@ CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MSA_FLAGS)
|
||||||
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MSA_FLAGS)
|
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MSA_FLAGS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CORE), I6500)
|
||||||
|
CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MSA_FLAGS)
|
||||||
|
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MSA_FLAGS)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(OSNAME), AIX)
|
ifeq ($(OSNAME), AIX)
|
||||||
BINARY_DEFINED = 1
|
BINARY_DEFINED = 1
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -63,6 +63,7 @@ LOONGSON3A
|
||||||
LOONGSON3B
|
LOONGSON3B
|
||||||
I6400
|
I6400
|
||||||
P6600
|
P6600
|
||||||
|
I6500
|
||||||
|
|
||||||
5.IA64 CPU:
|
5.IA64 CPU:
|
||||||
ITANIUM2
|
ITANIUM2
|
||||||
|
|
|
@ -76,6 +76,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#define CPU_LOONGSON3B 3
|
#define CPU_LOONGSON3B 3
|
||||||
#define CPU_I6400 4
|
#define CPU_I6400 4
|
||||||
#define CPU_P6600 5
|
#define CPU_P6600 5
|
||||||
|
#define CPU_I6500 6
|
||||||
|
|
||||||
static char *cpuname[] = {
|
static char *cpuname[] = {
|
||||||
"UNKOWN",
|
"UNKOWN",
|
||||||
|
@ -83,7 +84,8 @@ static char *cpuname[] = {
|
||||||
"LOONGSON3A",
|
"LOONGSON3A",
|
||||||
"LOONGSON3B",
|
"LOONGSON3B",
|
||||||
"I6400",
|
"I6400",
|
||||||
"P6600"
|
"P6600",
|
||||||
|
"I6500"
|
||||||
};
|
};
|
||||||
|
|
||||||
int detect(void){
|
int detect(void){
|
||||||
|
@ -165,6 +167,8 @@ void get_subarchitecture(void){
|
||||||
printf("I6400");
|
printf("I6400");
|
||||||
}else if(detect()==CPU_P6600){
|
}else if(detect()==CPU_P6600){
|
||||||
printf("P6600");
|
printf("P6600");
|
||||||
|
}else if(detect()==CPU_I6500){
|
||||||
|
printf("I6500");
|
||||||
}else{
|
}else{
|
||||||
printf("SICORTEX");
|
printf("SICORTEX");
|
||||||
}
|
}
|
||||||
|
@ -211,6 +215,15 @@ void get_cpuconfig(void){
|
||||||
printf("#define DTB_DEFAULT_ENTRIES 64\n");
|
printf("#define DTB_DEFAULT_ENTRIES 64\n");
|
||||||
printf("#define DTB_SIZE 4096\n");
|
printf("#define DTB_SIZE 4096\n");
|
||||||
printf("#define L2_ASSOCIATIVE 8\n");
|
printf("#define L2_ASSOCIATIVE 8\n");
|
||||||
|
}else if(detect()==CPU_I6500){
|
||||||
|
printf("#define I6500\n");
|
||||||
|
printf("#define L1_DATA_SIZE 65536\n");
|
||||||
|
printf("#define L1_DATA_LINESIZE 32\n");
|
||||||
|
printf("#define L2_SIZE 1048576\n");
|
||||||
|
printf("#define L2_LINESIZE 32\n");
|
||||||
|
printf("#define DTB_DEFAULT_ENTRIES 64\n");
|
||||||
|
printf("#define DTB_SIZE 4096\n");
|
||||||
|
printf("#define L2_ASSOCIATIVE 8\n");
|
||||||
}else{
|
}else{
|
||||||
printf("#define SICORTEX\n");
|
printf("#define SICORTEX\n");
|
||||||
printf("#define L1_DATA_SIZE 32768\n");
|
printf("#define L1_DATA_SIZE 32768\n");
|
||||||
|
@ -232,6 +245,8 @@ void get_libname(void){
|
||||||
printf("i6400\n");
|
printf("i6400\n");
|
||||||
}else if(detect()==CPU_P6600) {
|
}else if(detect()==CPU_P6600) {
|
||||||
printf("p6600\n");
|
printf("p6600\n");
|
||||||
|
}else if(detect()==CPU_I6500) {
|
||||||
|
printf("i6500\n");
|
||||||
}else{
|
}else{
|
||||||
printf("mips64\n");
|
printf("mips64\n");
|
||||||
}
|
}
|
||||||
|
|
15
getarch.c
15
getarch.c
|
@ -134,6 +134,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
/* #define FORCE_I6400 */
|
/* #define FORCE_I6400 */
|
||||||
/* #define FORCE_P6600 */
|
/* #define FORCE_P6600 */
|
||||||
/* #define FORCE_P5600 */
|
/* #define FORCE_P5600 */
|
||||||
|
/* #define FORCE_I6500 */
|
||||||
/* #define FORCE_ITANIUM2 */
|
/* #define FORCE_ITANIUM2 */
|
||||||
/* #define FORCE_SPARC */
|
/* #define FORCE_SPARC */
|
||||||
/* #define FORCE_SPARCV7 */
|
/* #define FORCE_SPARCV7 */
|
||||||
|
@ -765,6 +766,20 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#else
|
#else
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef FORCE_I6500
|
||||||
|
#define FORCE
|
||||||
|
#define ARCHITECTURE "MIPS"
|
||||||
|
#define SUBARCHITECTURE "I6500"
|
||||||
|
#define SUBDIRNAME "mips64"
|
||||||
|
#define ARCHCONFIG "-DI6500 " \
|
||||||
|
"-DL1_DATA_SIZE=65536 -DL1_DATA_LINESIZE=32 " \
|
||||||
|
"-DL2_SIZE=1048576 -DL2_LINESIZE=32 " \
|
||||||
|
"-DDTB_DEFAULT_ENTRIES=64 -DDTB_SIZE=4096 -DL2_ASSOCIATIVE=8 "
|
||||||
|
#define LIBNAME "i6500"
|
||||||
|
#define CORENAME "I6500"
|
||||||
|
#else
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef FORCE_ITANIUM2
|
#ifdef FORCE_ITANIUM2
|
||||||
#define FORCE
|
#define FORCE
|
||||||
#define ARCHITECTURE "IA64"
|
#define ARCHITECTURE "IA64"
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
include $(KERNELDIR)/../mips/KERNEL.P5600
|
2
param.h
2
param.h
|
@ -2291,7 +2291,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#define SYMV_P 16
|
#define SYMV_P 16
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(P5600) || defined(I6400) || defined(P6600)
|
#if defined(P5600) || defined(I6400) || defined(P6600) || defined(I6500)
|
||||||
#define SNUMOPT 2
|
#define SNUMOPT 2
|
||||||
#define DNUMOPT 2
|
#define DNUMOPT 2
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue