summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2023-11-12kernel/amd64: lapic: Remove ESR supportsigsegv7
ESR support should be added later on; there is no need for it as of now... Signed-off-by: sigsegv7 <ian@osmora.org>
2023-10-18kernel/amd64: lapic: Add ESR reading logicsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-18kernel/amd64: lapic: Update docssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-18kernel/amd64: lapic: Add basic x2APIC supportsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-11kernel: vm: pmap.h -> vm_pmap.hsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-11kernel: lib: Add memset64()sigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-11kernel: vm: Create vm_init()sigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-11kernel: vm: Add PMAP abstractionsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-11kernel: vm: Add vm_zero_page() helpersigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-07kernel: vm: Add pageframe allocationsigsegv7
This commit introduces pageframe allocation logic to the Vega virtual memory subsystem. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-07kernel: vm: vm.c -> vm_init.csigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-06kernel: vm: Update header guardssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-06kernel/docs: Add timer(9) manpagesigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-06kernel/docs: Add new conventionsigsegv7
This commit adds a new convention that requires devs to write a comment for headers that have a manpage tied to them that shows which manpage it is tied to. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Remove stray newlinesigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Add spinlock to cpu_infosigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Initialize IDT and GDT firstsigsegv7
This commit moves the interrupts_init() and gdt_load() calls to the top so interrupts are set up first in case something goes wrong so we can get information from exception handlers. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: cpu: Add metadatasigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Move metadata macros to topsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Set certain cpu_info fieldssigsegv7
This commit puts certain fields on the cpu_info structure into a known state. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Add system intvec abstractionsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Fix up BSP_KINFO logicsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Add AMD64 CPU abstractionssigsegv7
This commit adds the CPU abstraction files for AMD64. This abstraction implements CPU specific logic Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-10-04kernel/amd64: Cleanup frame macrossigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-30kernel/amd64: machdep: Enable spectre mitigationsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-28kernel: cdefs: Wrap assembly within conditionalsigsegv7
This commit wraps __KERNEL_META for .S files within a conditional. Only makes it easier to trace if on a different architecture and it is not implemented for it; however, this macro could perhaps be placed in a better header (XXX)? This should work for now. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-28kernel/amd64: Add __KERNEL_META for .S filessigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-28kernel: mmio: Add memory barriers to helperssigsegv7
This commit introduces memory barriers to MMIO read/write helpers to ensure the compiler does not re-order these critical memory accesses which would in turn result in very strange behaviour if it were to be re-ordered. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-28kernel: cdefs: Add memory barrier helpersigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-27kernel: tty_subr.c -> subr_tty.csigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-26kernel: Fix spinlock_acquire() flawsigsegv7
This commit fixes a spinlock_acquire() flaw and corrects a [quite an implausible] mistake, in which we do not even spin. It would have been fine how it was before in Vega's contemporary state; however, not a good idea to keep. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-25kernel/amd64: Add spectre mitigation supportsigsegv7
Add spectre mitigation support for AMD64 hosts which may be enabled via the --enable-spectre-mitigation configure flag. This commit currently only adds IBRS support but more techniques may be added later on. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-25kernel: cdefs: Add __naked macrosigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-21kernel: cdefs: Add __STATIC_ASSERT macrosigsegv7
This commit adds a __STATIC_ASSERT which wraps over _Static_assert() to be more consistent with Vega style. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel/amd64: Add stub LAPIC timer supportsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: dev: Register HPET timersigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: init_main: Dump timer registrysigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: Fix typos with timer IDssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: dev: Use errno.h error codessigsegv7
This commit makes the hpet_sleep() function return either EXIT_SUCCESS or EXIT_FAILURE instead of hardcoded constants. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: dev: Setup timer descriptor for HPETsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: Update timer routine return typessigsegv7
This commit makes msleep(), usleep(), etc, return an error code of either EXIT_SUCCESS or EXIT_FAILURE for error handling. This commit also makes the calibrate() routine return a frequency (ideally in Hz), however, it is optional and can return 0 as a way of saying it doesn't return one. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: Add timer abstractionsigsegv7
This commit introduces a new timer abstraction that is architecture-independent. It enables the registration and request of timers in a consistent and uniform manner abstracting away architectural details. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-20kernel: Fixup errno.hsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-17kernel/amd64: Add Local APIC driversigsegv7
This commit introduces the initial Local APIC driver sources Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: dev: Add extra HPET sleep functionssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: dev: Create hpet_sleep() helpersigsegv7
Sleep functions may wrap this helper to simplify their implementation. Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: dev: Handle faulty HPET in msleep routinesigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: dev: Add HPET driversigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: syslog: Add KERR() macrosigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel: Refactor headerssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>