summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
8 dayskernel/amd64: cpu: Implement 'ioapic_common' stubIan Moffett
This implementation walks through the entire table of registered interrupt handlers and calls each driver handler. The driver is to return a value of 1 if the interrupt is theirs and has been handled, otherwise it is to return 0. The handling core is to respoond to a 1 by exiting the table walk early, and responds to a 0 by continuing. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskern/amd64: Copy handler to `ih_new'Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: build: Clean all objects on `make clean'Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: build: Build musl-math portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskern/amd64: intr: Zero the handler structureIan Moffett
Ensure no uninitialized garbage ends up in the handler structure after we've allocated it. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: Add musl math portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: Add fenv.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: stdint: Add signed integer typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayslibc: stdint: Add missing _HAVE_UINT64_TIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel/amd64: intr: Make interrupt table globalIan Moffett
This commit makes the interrupt table global so it can be accessed through assembly. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskern/amd64: Reserve 64 vectors for I/O APIC inputsIan Moffett
This commit reserves the first 64 vectors for the I/O APIC input lines. During an IRQ, each handler will be called to see which one handles it. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskern/amd64: Add interrupt registration frameworkIan Moffett
This commit introduces the interrupt registration framework for L5 and accounts for I/O APIC IRQ inputs, and interrupt priority levels encoded within bits 7:4 of the interrupt vector Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern/amd64: ioapic: Add ISA IRQ to GSI conversionIan Moffett
Introduce a helper function to convert legacy ISA IRQ numbers to the GSI numbers assigned to an I/O APIC pin Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: iotap: Remove unused includeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Add I/O tap frameworkIan Moffett
The I/O tap framework provides a way to bypass the typical device filesystem interface for applications where more direct access would be beneficial. Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Support up to 8 max namespacesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 daysdocs: Add initial PCI(e) documentationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Write non standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Fix erroneous sizeof()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Add missing whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Ignore unitialized vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: vfs: Add write vop to vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: syscall: Add SYS_open to syscall tableIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayslib: libc: Add fcntl.h headerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Verify access semantics in fd_write()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Duplicate FDs for standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Save the mode in fd_open()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 daysos: vnode: Add refcounts to vnodesIan Moffett
Keep track of how many referencing are on a vnode so one isn't freed early while another object is still using it. Signed-off-by: Ian Moffett <ian@osmora.org>
10 daysFix conflictsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayslib: libc: Add SYS_open system call interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: filedes: Add SYS_open system callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: filedesc: Add fd_open() functionIan Moffett
Introduce the fd_open() function as apart of the kernel file descriptor API to open a file and get a file descriptor. Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayslib: libc: Add mount syscall interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: Add /dev/nullIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: syscall: Add SYS_mount syscallIan Moffett
This commit introduces the system call for mounting filesystems. As of now, only the fstype and target params are supported Signed-off-by: Ian Moffett <ian@osmora.org>
10 daysusb: Add EHCI skeletonIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: syscall: Add initial SYS_spawn syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: proc: Add initial spawn functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: proc: Add process environment blockIan Moffett
Introduce a process environment block structure to pass information such as arguments, argument counts, etc to the process during startup without having to make a mess on the stack Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern/amd64: mp: Initialize sched queue per coreIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: os: Add copyinstr()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 daysbuild: Use toolchain for user programsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: ns: Increment object count upon entryIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
13 daysnp: codegen: Support returning symbols / stringsIan Moffett
Introduce support for returning symbols or strings in memory by using the symbol table and REX prefixes for 64-bit register accesses Signed-off-by: Ian Moffett <ian@osmora.org>
13 daysnp: parse: Add symbol listIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
13 daysnp: symbol: Ensure of assigned name and IDIan Moffett
This commit adds a lookup ID to each symbol as well as ensuring that they have a defined name even if the requested one is NULL Signed-off-by: Ian Moffett <ian@osmora.org>
13 daysnp: piir: Add bitmap based register allocationIan Moffett
Introduce register allocation via a bitmap where each bit corresponds to a specific register index. Signed-off-by: Ian Moffett <ian@osmora.org>
14 daysnp: Remove deprecated ast_root fieldIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
14 daysnp: symbol: Introduce symbol table + symbol cacheIan Moffett
This commit introduces a way to allocate and store symbols as structures consiting of a name and an address. We also provide a way to cache lookups to provide faster access. Signed-off-by: Ian Moffett <ian@osmora.org>
14 daysnp: lex: Introduce string tokensIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>