aboutsummaryrefslogtreecommitdiff
path: root/sys/include
AgeCommit message (Collapse)Author
2023-10-11kernel: lib: Add memset64()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-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: Add spinlock to cpu_infosigsegv7
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: 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-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-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: Fix typos with timer IDssigsegv7
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: 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: 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-13kernel: mmio: Remove useless argumentsigsegv7
Signed-off-by: sigsegv7 <ian@vegaa.systems>
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-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