ARM64: Fix auto detect of ARM64 cpus
This commit is contained in:
parent
95649dee28
commit
738d622feb
|
@ -91,18 +91,21 @@ int detect(void)
|
||||||
#ifdef linux
|
#ifdef linux
|
||||||
|
|
||||||
FILE *infile;
|
FILE *infile;
|
||||||
char buffer[512], *p, *cpu_part, *cpu_implementer;
|
char buffer[512], *p, *cpu_part = NULL, *cpu_implementer = NULL;
|
||||||
p = (char *) NULL ;
|
p = (char *) NULL ;
|
||||||
|
|
||||||
infile = fopen("/proc/cpuinfo", "r");
|
infile = fopen("/proc/cpuinfo", "r");
|
||||||
while (fgets(buffer, sizeof(buffer), infile)) {
|
while (fgets(buffer, sizeof(buffer), infile)) {
|
||||||
|
if ((cpu_part != NULL) && (cpu_implementer != NULL)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (!strncmp("CPU part", buffer, 8)) {
|
if ((cpu_part == NULL) && !strncmp("CPU part", buffer, 8)) {
|
||||||
cpu_part = strchr(buffer, ':') + 2;
|
cpu_part = strchr(buffer, ':') + 2;
|
||||||
break;
|
cpu_part = strdup(cpu_part);
|
||||||
} else if (!strncmp("CPU implementer", buffer, 15)) {
|
} else if ((cpu_implementer == NULL) && !strncmp("CPU implementer", buffer, 15)) {
|
||||||
cpu_implementer = strchr(buffer, ':') + 2;
|
cpu_implementer = strchr(buffer, ':') + 2;
|
||||||
break;
|
cpu_implementer = strdup(cpu_implementer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue