summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
40 hourskern: iotap: Fix typo in commentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
40 hourskern/amd64: isa: Add locks to keybuf operationsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
41 hourslibc: iotap: Add I/O tap syscall interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
41 hourskern: iotap: Expose I/O taps to userlandIan Moffett
Expose I/O taps to userland using a tap message interface. An application may construct a tap message to send to the kernel requesting data from a specific tap, if there is data, the buffers will be safely populated, otherwise some error returned. An example is accessing the PS/2 keyboard tap: -- char name[] = "i8042.port.0"; char buf[2] = {0, 0}; struct iotap_msg msg = { .opcode = IOTAP_OPC_READ, .buf = buf, .len = len }; ... /* muxtap() may be used */ ... -- Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskern: security: Improve scalability of MAC checksIan Moffett
The concept of resource borders is mostly used for resources that can easily be mapped into memory, synced and contain attributes. However, some things (e.g., a network resource, keyboard input, etc) may not be great with raw memory mappings. This commit mitigates this problem. Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskernel/amd64: Add PS/2 scancode buffering + IO tapIan Moffett
This commit introduces scancoding buffering as well as an I/O tap so that it may be exposed outside of the driver Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern/amd64: isa: Add PS/2 keyboard prototypeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 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>
3 dayskern/amd64: Copy handler to `ih_new'Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayslibc: build: Clean all objects on `make clean'Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayslibc: build: Build musl-math portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 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>
3 dayslibc: Add musl math portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayslibc: Add fenv.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayslibc: stdint: Add signed integer typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayslibc: stdint: Add missing _HAVE_UINT64_TIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 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>
3 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>
3 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>
3 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>
3 dayskern: iotap: Remove unused includeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 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>
4 dayskern: os: Support up to 8 max namespacesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 daysdocs: Add initial PCI(e) documentationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Write non standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Fix erroneous sizeof()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Add missing whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Ignore unitialized vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: vfs: Add write vop to vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: syscall: Add SYS_open to syscall tableIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayslib: libc: Add fcntl.h headerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: os: Verify access semantics in fd_write()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Duplicate FDs for standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedes: Save the mode in fd_open()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 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>
5 daysFix conflictsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayslib: libc: Add SYS_open system call interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: filedes: Add SYS_open system callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 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>
5 dayslib: libc: Add mount syscall interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: Add /dev/nullIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 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>
5 daysusb: Add EHCI skeletonIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: syscall: Add initial SYS_spawn syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: proc: Add initial spawn functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 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>
6 dayskern/amd64: mp: Initialize sched queue per coreIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: os: Add copyinstr()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 daysbuild: Use toolchain for user programsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: ns: Increment object count upon entryIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>