summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2 dayssys: mman: Add PROT_USER flagIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os: Introduce support for OMAR initramfsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: vm_map: Add guard pages at end of mappingsIan Moffett
Place a guard page at the end of every mapping to catch overflows before they start corrupting the system. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: vm: Add MI vm_map() functionIan Moffett
Introduce a machine independent mechanism to map multiple pages through the new vm_map() function Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: lapic: Panic if MMIO base has movedIan Moffett
Verify the edge case where firmware may want to move/remap the Local APIC MMIO base as we are making an assumption that the base starts at 0xFEE00000. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: cpu: Add initial SMP startup codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: limits: Add CPU_MAX limitIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysbuild: boot: Show boot menu on startupIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Add initial scheduler skeletonIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Move i8259/uart init to chipset_init()Ian Moffett
These are chipset specific and independent of the processor, therefore they must only be initialized once. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: gdt: Load GDT before setting GS_BASEIan Moffett
If we update the GDTR after setting GS_BASE, we wont be referencing any valid data anymore. Switch out the GDTR early on. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: Add sys/queue.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: lapic: Add LAPIC timer supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: intel: Add i8254 PIT driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: ioapic: Add one to nredirIan Moffett
The redirection entry count within the IOAPICVER register is zero-based, therefore one must be added to make it absolute. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskernel/amd64: Add task state segment logicIan Moffett
This commit implements the task state segment and splits up processor initialization into two seperate stages. The cpu_conf() function is apart of the first stage and sets up things that should be going by the time the kernel is started / early init. The cpu_init() function runs later functions that initialize further platform specific subsystems. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: lapic: Initialize percore Local APICIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: boot: Initialize I/O APIC *once*Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskernel/amd64: Move ioapic_read_madt() to acpi_subrIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysbuild: Clear out sys/target on distcleanIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: ioapic: Add IRQ to vector routingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Improve ioapic_read_madt() scalabilityIan Moffett
This commit improves the scalability of ioapic_read_madt() while retaining as much simplicity as possible. - Add callback argument - Add optional argument to callback ioapic_read_madt() now returns the value given back by a callback. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os_init: Move boot message at topIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Add I/O APIC initialization codeIan Moffett
This commit introduces the initial I/O APIC driver code that does basic initialization i.e., grabbing base address from MADT, masking each pin, etc. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Add sys/mmio.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Initialize ACPI early on during bootIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Add initial ACPI implIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: acpi: Add ACPI table definitionsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: boot: Disable the i8259 chip on bootIan Moffett
To avoid interrupt conflicts on some machines with the I/O APIC, disable the legacy i8259 chip by default Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysvm: physseg: Use new OS nameIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os_init: Initialize console earlier onIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Add exception handlersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Add traprame related MD headersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: Add interrupt descriptor table coreIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: mmu: Add creddit blockIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: cons: Handle ASCII linefeed charIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: Add sys/ascii.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: cons: Finish string writing logicIan Moffett
- Wrap on X overflow - Wrap on Y overflow - Keep track of max console width and height - Add console enable/disable control Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: syslog: Wrap routines in _KERNEL guardIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: cons: Add console string writing routineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: io: Implement initial console logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysos/amd64: Reduce coupling with VAS structureIan Moffett
This commit moves the VAS structure into a standard MD layer side and makes it accessible through a standard MI layer header. This indirection reduces coupling so that the codebase wont break if a name change or anything is needed. Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysos/amd64: Make MMU header standard per archIan Moffett
Lunos's virtual memory system is split into two parts, the machine dependent MMU layer and the machine independent layer. The MMU side exposes a standard bridge header that allows the MI layer to interface with the MD layer. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os: Add initial kalloc subsystemIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: Add TLSF allocator portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os: Add assert.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: Add sys/limits.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayssys: cdefs: Keep offsetof as-isIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: Add sys/mman.h and generic prot flagsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: mmu: Enable support for 5-level pagingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>