aboutsummaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2024-05-19kernel: Add reboot() and reboot syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-18kernel: tty: Handle input processing betterIan Moffett
- Fix copying logic in tty_read() - Handle ICANON correctly - Add ECHO c_lflag bit - Add TTY_SOURCE_DEV and TTY_SOURCE_RAW defines Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-18kernel: tty: Handle ICANONIan Moffett
Add basic handling for canonical mode Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-17kernel/amd64: machdep: Beep based on kernel configIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-17build: Introduce kconf for kernel configurationIan Moffett
The kernel will be configured by a per-arch config file. The config file for the AMD64 port exists at sys/arch/amd64/conf/GENERIC Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-15kernel/amd64: machdep: Cleanup processor_init()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-14kernel/amd64: Fix early panic triple faultIan Moffett
Check for a valid CPU structure and ensure the Local APIC base address has been set before trying to broadcast IPIs Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-14kernel/amd64: machdep: Reorganize functionsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-14kernel: machdep: Add machine_panic() + panic beepIan Moffett
machine_panic() handles things like backtracing, beeping the speaker and halting the processor. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-14kernel: isa: Add pcspkr supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-12kernel/amd64: i8042: Prevent blinking capslock LEDIan Moffett
Holding down the caps-lock key would result in the LED blinking rapidly which is obviously not normal. This commit corrects that behavior. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-12kernel/amd64: isa: Add i8042 driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-07kernel/amd64: trap: Remove unnecessary whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-07kernel/amd64: tss: Ensure stacks are alignedIan Moffett
When allocating a kernel stack, ensure it is aligned on a 16-byte boundary. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-05-07kernel/amd64: trap: Temporarily disable interruptsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-30kernel/amd64: machdep: Add cpu_halt_others()Ian Moffett
Halts all other processors except self Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-28kernel/amd64: ioapic: Add ioapic_set_vec()Ian Moffett
Add helper to set vector in a redirection table entry Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-26kernel/amd64: syscall: Allow RIP/RSP to be resetIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-20kernel: vm: Add initial demand paging supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-10kernel/amd64: trap: Send signals to threadIan Moffett
Send SIGSEGV, SIGFPE, etc to the thread instead of panicking if it is running in userland Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-09kernel/amd64: tss: Remove useless whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-09kernel/amd64: Add backtrace support for panic()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-07kernel/amd64: syscall: Set IP in syscall_argsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-04-06kernel/amd64: lapic: Remove unused includesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-26kernel/amd64: tss: Do not allow userspace port I/OIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-25kernel/amd64: Remove "AP bootstrap done" messageIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-24kernel/amd64: machdep: Init PCI driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-19kernel: syscall: Fix syscall orderIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-16kernel,libc: syscall: Improve syscall codeIan Moffett
- Remove the SYS_debug syscall - First syscall starts at 1 Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-16kernel: syscall: Remove syscall_args.retIan Moffett
It is better to just return a value within the syscall handler and have that passed down to __syscall() like that Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: Add support for syscallsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel/amd64: pmap: Add pmap_free_vas()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add processor_free_pcb()Ian Moffett
Add routine to deallocate resources within the process control block. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Check for NULL instead of 0Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add context switch helperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add pcb init codeIan Moffett
This commit adds a processor specific routine which sets up the Process Control Block for a thread Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Remove extra whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: trap: Update panic messageIan Moffett
We have a scheduler now, this old message does not make sense. So it is replaced. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: spectre: Log only onceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Fix typoIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-11kernel/amd64: machdep: Enable SSE/SSE2 per coreIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-10kernel/amd64: trap: Add stack-segment fault ISRIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel/amd64: trap: Parse TRAP_PAGEFLT error codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel: Require VAS arg in vm + loader refactorIan Moffett
This commit adds vas argument to VM mapping functions as well as changing how mapping is done in the loader. This commit also fixes weird error handling and parses needed PHDRs within the loader Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-06kernel/amd64: Remove switch.SIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: trap: Simplify trap_print() logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: machdep: Add wrappers over CLI/STIIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: pmap: Add user pte flagIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: pmap: Add routine to switch vasIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: pmap: Fix calculation of indicesIan Moffett
This commit fixes a very stupid mistake in the pmap module for AMD64 Signed-off-by: Ian Moffett <ian@osmora.org>