summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
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>
2023-09-15kernel/amd64: Add msr.hsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel/amd64: Add cpuid.hsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-15kernel/amd64: Add LAPIC register constantssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-14kernel/amd64: Improve docssigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-14kernel/amd64: Add I/O APIC pin mask/unmask logicsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-14kernel: acpi: Add IRQ to GSI functionsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-14kernel/amd64: Introduce initial I/O APIC supportsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-14kernel: init: Init ACPI before processorsigsegv7
This commit ensures basic ACPI stuff will get set up before processor_init() is called... Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-13kernel: mmio: Remove useless argumentsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
2023-09-12kernel: fix include bugsigsegv7
2023-09-12project-wide: migrate to gitsigsegv7
2023-09-03project-wide: update project authoremilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@43 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: Add MMIO read helpersemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@42 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: Fix type warningsemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@41 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: align backslashemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@40 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: uintptr_t -> void *emilia
Changes argument type for mmio_write<n>() as most MMIO addresses shall be passed as void * git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@39 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: Check for physical addressesemilia
This commit adds extra documentation to mmio_write<n>() as well as adding checks for physical addresses and handling them properly. git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@38 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-27kernel: mmio: Add missing includeemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@37 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-25kernel: cdefs: Remove duplicate __used definitionemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@36 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-25kernel: Add MMIO helpersemilia
Allows MMIO to be preformed more concisely while be less error prone git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@35 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-19kernel: Update Vega author name in kernel metaemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@34 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-19project-wide: Update author nameemilia
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@33 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-17kernel: cdefs: Fix macro indentationian
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@32 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-17kernel: cdefs: Move attributes above other macrosian
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@31 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-08-17kernel/amd64: machdep: Refactor attribute usageian
Use __weak only in headers git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@30 a8a8aea2-181d-ee11-89e8-15fd0e089fc4
2023-07-28kernel: Cleanup arch abstraction layerian
git-svn-id: https://svn.vegaa.systems/svn/vega-Vega/trunk@29 a8a8aea2-181d-ee11-89e8-15fd0e089fc4