136 Commits

Author SHA1 Message Date
Chloe M. 6f3d273fe9 stos: hal+amd64: Add helper to unmap single page
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 23:53:12 +00:00
Chloe M. 5e99093e9f stos/amd64: cpu: Ignore non online capable processors
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 19:47:19 +00:00
Chloe M. 54faa60aca stos/amd64: mp: Add multiprocessing groundwork
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 14:25:19 -05:00
Chloe M. ad11d304d1 sdk: units: Add USEC_PER_MSEC macro
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 14:24:22 -05:00
Chloe M. 1020db0f41 stos/amd64: lapic: Add helper to obtain Local APIC ID
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 14:24:05 -05:00
Chloe M. 89e87fc525 stos/amd64: lapic: Clean up LAPIC IPI code
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 14:23:44 -05:00
Chloe M. 798c9c2ee8 stos/amd64: lapic: Fix typo in enumeration
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 14:03:27 -05:00
Chloe M. e966cec4cd stos/amd64: lapic: Calibrate the Local APIC timer
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 17:20:25 +00:00
Chloe M. d7904ea894 sdk: units: Add HZ_PER_MHZ unit
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 17:19:56 +00:00
Chloe M. 354cf87a16 stos/amd64: isa: Add legacy i8254 driver
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 05:18:59 -05:00
Chloe M. ef72c9d6d5 stos/amd64: hpet: Add MdHpetTimeUsec() helper
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 06:47:29 +00:00
Chloe M. 97ea4fad69 sdk: units: Add extra time units
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 06:47:15 +00:00
Chloe M. 096ebd9325 stos/amd64: hpet: Enable the main counter
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 06:43:22 +00:00
Chloe M. 6f09c21c90 stos/amd64: irqchip: Save LAPIC descriptors
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 05:01:29 +00:00
Chloe M. 55e12ce62d stos/amd64: irqchip: Detect and disable i8259s
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 04:45:57 +00:00
Chloe M. 1bebf4d37b stos/amd64: lapic: Add support for IPIs
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-27 02:56:28 +00:00
Chloe M. 9f040b7eed stos/amd64: lapic: Add IPI def groundwork
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 22:03:31 +00:00
Chloe M. 9a85d25f5e docs: readme: Add example images
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 21:30:50 +00:00
Chloe M. a422ba326d project: Add assets for README
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 21:26:24 +00:00
Chloe M. 5f6ec72598 stos: pool: Add pool allocation header + tag usage
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 21:20:57 +00:00
Chloe M. e65af3fce0 stos/amd64: lapic: Fully enable Local APIC
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 20:56:57 +00:00
Chloe M. 74d68ead72 stos/amd64: lapic: Detect if x2APIC mode is present
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 20:46:27 +00:00
Chloe M. fd30fc5e04 stos/amd64: cpu: Save Local APIC base in MCB
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 20:31:09 +00:00
Chloe M. 38310e4f23 stos/amd64: cpu: Hardware enable Local APIC
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 20:22:20 +00:00
Chloe M. 221cfc1893 stos/amd64: cpu: Add Local APIC driver stub
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 19:56:41 +00:00
Chloe M. 0028d63608 stos: knot: Add KNOT_MISSING_HARDWARE reason
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 19:56:19 +00:00
Chloe M. 29de9befc9 stos/amd64: hpet: Implement HPET register checking
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 14:05:27 -05:00
Chloe M. 911e04975c stos: hal: Add MMIO helpers
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 04:28:43 +00:00
Chloe M. 686de4059f stos/amd64+hal: Add hpet init groundwork
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 22:07:14 -05:00
Chloe M. 45dea1edb9 stos/amd64: hpetreg: Add HPET register defs
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 22:06:44 -05:00
Chloe M. 95e2c96126 stos/amd64: Add Local APIC register defs
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-26 00:13:40 +00:00
Chloe M. 99261380ca stos: ob: Add directory object operations
This commit adds operations for appending directories and top-level
lookups.

Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 23:26:54 +00:00
Chloe M. 53d0e27b4f stos: ob: Pull object from cache on creation
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 14:39:47 -05:00
Chloe M. ceddcdba03 stos: ob: Reclaim directory object on failure
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 14:25:31 -05:00
Chloe M. 898990c91a stos: ob: Atomically decrement reference count
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 19:10:27 +00:00
Chloe M. dbdd95d079 sdk: Add atomic operations groundwork
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 19:10:08 +00:00
Chloe M. eb6d85631e sdk: bitops: Fix stale description
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 19:03:50 +00:00
Chloe M. bc11f9b58f stos: ob: Add object cache groundwork
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 17:50:43 +00:00
Chloe M. 70f58b193f stos: ob: Initialize object manager
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 00:51:24 +00:00
Chloe M. 4f399576a0 stos: ob: Add helper to create object directory
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 00:49:13 +00:00
Chloe M. 70c3a30f72 stos: ob: Zero object on init for security
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 00:48:44 +00:00
Chloe M. 283547058e stos: ob: Implement ObCreateObject() helper
The ObCreateObject() is responsible for creating and allocating new
objects, we'll need this to even have directories and such.

Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-25 00:09:54 +00:00
Chloe M. 6b23c1e3d1 stos: ob: Add object directory definition
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 22:06:19 +00:00
Chloe M. ed2d4744d7 stos: pool: Protect pool structures with lock
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 17:43:45 +00:00
Chloe M. 995da1df2d stos: ob: Add object definition
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 17:36:59 +00:00
Chloe M. d3adef547d stos: pool: Use Pool->Id instead of PoolCount
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 17:00:56 +00:00
Chloe M. 05c4c0b059 stos: pool: Handle page chaining while under pressure
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 07:31:39 +00:00
Chloe M. 98bc156e51 sdk: Add bit operations header with PopCnt
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 07:24:37 +00:00
Chloe M. ef8535f089 stos: pool: Add actual allocation groundwork
Still lots to do

Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 05:50:22 +00:00
Chloe M. 9b1f4dde43 stos/amd64: cpu: Save KPCR in IA32_GS_BASE
Signed-off-by: Chloe M. <chloe@mensia.org>
2026-06-24 05:49:59 +00:00