Files
my-kern/kernel/cpu/cpuidx.c
2021-08-22 19:59:55 +02:00

32 lines
599 B
C

//
// Created by rick on 12-02-21.
//
#include <cpuid.h>
#include <stdio.h>
#include <sys/types.h>
#include <myke/cpu/cpuidx.h>
union cpu_name {
uint32_t parts[3];
struct {
char name[12];
char end;
};
};
static bool has_apic() {
uint32_t eax, unused, edx;
__get_cpuid(CPUID_FEATURE_FLAGS, &eax, &unused, &unused, &edx);
return edx & CPUID_FEAT_EDX_APIC;
}
void cpuidx_print_info() {
union cpu_name name;
__get_cpuid(CPUID_VENDOR_ID, NULL, &name.parts[0], &name.parts[2], &name.parts[1]);
name.end = 0;
printf("CPU: %s\n", &name.name);
}