summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
14 hourskernel: ahci: Add /ctl/sdx/bsize control filemainIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
14 hourskernel: ahci: Include sys/device.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
14 hourskernel: ctlfs: Include sys/sio.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
27 hourskernel: fs: Introduce ctlfsIan Moffett
ctlfs (Control FS) is a filesystem aimed to provide configuration of devices separate from their respective devices files. Most UNIX-like systems rely on the ioctl() mechanism for sending commands to device drivers, while this certainly works, it is important to realize how messy it can get doing all of this through a single interface. ctlfs fixes this by giving each device a "node" in ctlfs that contains several control files. For example, imagine we have a SCSI device (/dev/sd1). Its ctlfs counterpart would be a directory at /ctl/sd1/. For an hdd this may contain files such as: /ctl/sd1/bsize # Block size if read (mode [rwx]: -w-) /ctl/sd1/cmd # Command if written, status if read (mode [rwx]: rw-) ... et cetera Signed-off-by: Ian Moffett <ian@osmora.org>
28 hourskernel: vfs: Allow multi component lookupsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
30 hourskernel/amd64: i8042: Flush console for reset logsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: ahci: Improve COMRESET reset logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Expose to devfs @ /dev/sd<n>Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Implement disk I/O logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Store major in HBA descriptorIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Keep track of total portsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: nvme: Return -ENODEV instead of -EIOIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Handle AHCI interface/HBA errorsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Ensure bus mastering + MMIO is setIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Remove redundant newlineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Perform ATA IDENTIFYIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Initialize device link before initIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Cleanup identity dump logsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Implement ATA IDENTIFY commandIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Add HBA port reset logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Add command list helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Define ATA identity structureIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Detect staggered spin upIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Improve HBA port scan logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Add sanity checks to port start/stopIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: ahci: Add command table + PRD definitionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Clear out PxSERR per portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Initialize each HBA portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Split CLB/FB into lower/upper bitsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Cleanup port count logIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Add basic AHCI constantsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: achi: Define command header and H2D FISIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Implement initial HBA port logicIan Moffett
- Implement logic to scan the HBA for ports - Implement logic to stop HBA ports - Add ahci_init_port() stub Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: ahci: Remove stray newlineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayssys: Add popcnt() implementationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel/amd64: gdt: Fix indentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel: ahci: Return 0 in ahci_poll_reg()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskernel: rt8139: Autoload 93C46 + read MAC addressIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskernel: net: Add initial net_if headersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskernel: xhci: Workaround Dell USBLEGSUP quirkIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
12 dayskernel: cons: Add backspace supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
12 dayskernel: initramfs: Add initial OMAR portIan Moffett
CPIO is very outdated and its implementations varies on different hosts, best to use OSMORA Archive Format (OMAR) instead! Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel: syscall: Fix conditional includesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel: Startup osh instead of initIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/aarch64: Add md_sync_all() stubIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/aarch64: Add missing machdep headersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18Merge branch 'expt' into aarch64Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel: exec_elf64: Better loggingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/amd64: isa: Improve polling and bufferingIan Moffett
- Remove OBUF_WAIT() and IBUF_WAIT() macros - Buffer to console input Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/amd64: isa: Attempt to wake up PS/2 linesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>