limine/common/sys/smp.h
mintsuki 2c8c0c3deb Revert "misc: Converge with 5.x"
This reverts commit f9682543fd.
2023-11-03 06:24:58 +01:00

43 lines
1.2 KiB
C

#ifndef __SYS__SMP_H__
#define __SYS__SMP_H__
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#include <mm/vmm.h>
#define LIMINE_NO_POINTERS
#include <limine.h>
#if defined (__x86_64__) || defined (__i386__)
struct limine_smp_info *init_smp(size_t *cpu_count,
uint32_t *_bsp_lapic_id,
int paging_mode,
pagemap_t pagemap,
bool x2apic,
bool nx,
uint64_t hhdm,
bool wp);
#elif defined (__aarch64__)
struct limine_smp_info *init_smp(size_t *cpu_count,
uint64_t *bsp_mpidr,
pagemap_t pagemap,
uint64_t mair,
uint64_t tcr,
uint64_t sctlr,
uint64_t hhdm_offset);
#elif defined (__riscv64)
struct limine_smp_info *init_smp(size_t *cpu_count,
pagemap_t pagemap,
uint64_t hhdm_offset);
#else
#error Unknown architecture
#endif
#endif