summaryrefslogtreecommitdiff
path: root/sys/include
AgeCommit message (Collapse)Author
2024-02-22kernel/amd64: Create per-processor context storageIan Moffett
This commit introduces per-processor context storage within the IA32_KERNEL_GS_BASE MSR Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-18kernel/amd64: trap: Remove useless functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-15kernel/amd64: cpu: Prefix machdeps with cpu_Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-14kernel: queue: Keep track of element countIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-14kernel: cpu: Add hint_spinwait()Ian Moffett
This commit introduces a macro that must exist per architecture (even if it does nothing) to ensure it is machine independent. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-14kernel: Add __TRY_CALL() macroIan Moffett
This commit adds a macro to make testing if weak functions are implemented, then running them, less messy. This allows you to do so in one line. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-14kernel: machdep: Remove __weak for some routinesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-14kernel/amd64: hpet: HPET is architecture specificIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-13kernel: proc: Fix field within proc structIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-11kernel/amd64: acpi: Fetch LAPIC base separateIan Moffett
This commit creates a acpi_get_lapic_base() so we don't have to parse the MADT each time we want the Local APIC base. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-11kernel: sched: Add initial sched related codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-11kernel: Add machine independent CPU routinesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-11kernel: cdefs: Add __noreturn macroIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-04kernel/amd64: lapic: Add support for sending IPIsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-17kernel: Add serial logging supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-13kernel: vm: Add vm_map interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-13kernel: assert: Be more verboseIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-13kernel/amd64: pmap: Add pmap_unmap()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-12kernel/amd64: pmap: Add pmap_map() routineIan Moffett
Add pmap_map() routine for creating virtual memory mappings. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-12kernel/amd64: vas: Add more documentationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-12kernel/amd64: asm: Add vmem tlb headerIan Moffett
Add TLB header to facilitate TLB cache operations Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-12kernel: types: Add vmem specific typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-12kernel: vm: Make vm_get_bsp_ctx() return pointerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-11kernel: vm: Move vm_ctx structure to pmap.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-10kernel: _VEGA_SOURCE -> _HYRA_SOURCEIan Moffett
Vega is now known as Hyra Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-10kernel: syslog: Add KWARN()Ian Moffett
Add macro to facilitate kernel warning logs Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-10kernel/amd64: machdep: Add pre_init()Ian Moffett
This commit introduces a pre_init() function for setting up things that processor_init() may depend on Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-01project-wide: Make copyright year a rangeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-01-01project-wide: Update copyright yearIan Moffett
Happy new year!! Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-25kernel/amd64: lapic: Add initial LAPIC Timer logicIan Moffett
The commit adds the initial Local APIC timer support in Hyra... However, the interrupt service routine is a stub and needs to be completed. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-25kernel: timer: Add microseconds supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-23kernel/amd64: cpu: Add interrupt helper routineIan Moffett
This commit adds a helper that allows checking if maskable interrupts are disabled on the current core. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-21build: Update build constant OS prefixesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-19kernel: cdefs: Add extra helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-19kernel/amd64: lapic: Fixup LAPIC state trackingIan Moffett
This commit removes the lapic_set_base() function and certain globals from the Local APIC driver so it won't cause problems on hardware with many CPU sockets or that is just wacky. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-19kernel/amd64: isa: Add i8254 driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-19kernel/amd64: io: Add I/O helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-17kernel/amd64: trap: Fix stack issuesIan Moffett
This fixes a bug relating to a lack of error code (pushed by hardware) misaligning the stack. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-17kernel/amd64: frame: Seperate ASM from C headerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-15docs: man: Create virtual memory related manpagesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel: vm: Ensure calls are serializedIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel: vm: `cpu_vm_ctx' -> `vm_ctx'Ian Moffett
This commit cleans up the naming of the `cpu_vm_ctx' as it already implies it is per core Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel: vm: Add support for dynalloc pool resizeIan Moffett
This commit creates a wrapper that allows resizing of a memory pool created by dynalloc() Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel/amd64: intr: Add Interrupt Stack definesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel/amd64: tss: Add TSS stack helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel/amd64: trap: Add TRAP_NONE defineIan Moffett
This commit introduces the trap type TRAP_NONE to allow for general interrupts as they also use the `trap_frame' but are not interrupts that will occur during instruction execution. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-13kernel/amd64: tss: Fix broken TSS codeIan Moffett
This commit fixes some horribly broken TSS code. It is unclear how it got this broken. Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-12kernel: lib: Fix warnings with __assert()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-11kernel/amd64: Add Task State SegmentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2023-12-11kernel/amd64: Update arch(9)Ian Moffett
This commit cleans up arch(9) as a few things were noticed. First, it would make sense to identify cores (described by the cpu_info structure) in every arch ported, thus the lapic_id has been changed to id so it can be shared. Some annotations have also been added for the sake of clarity. The manpage for arch(9) has also been cleaned up. Signed-off-by: Ian Moffett <ian@osmora.org>