Commit graph

  • d560330a9d thermosphere: make the pending virq list ordering stable TuxSH 2020-01-05 21:54:02 +00:00
  • 3424e0bf71 thermosphere: fix wrong icfgr shift; fix list handling bug TuxSH 2020-01-05 16:04:53 +00:00
  • 7d30fce54c thermosphere: vgic: fix OOB accesses, fix icfgr and itargetsr handling TuxSH 2020-01-05 00:33:35 +00:00
  • 81a3b4fff5 thermosphere: fix is/ic registers usage; fix offset calculation TuxSH 2020-01-04 20:18:43 +00:00
  • d43d1af62a thermosphere: fix truncation in vgicCleanupPendingList TuxSH 2020-01-03 02:53:16 +00:00
  • 7573d1ad3e thermosphere: honor irq config for ppis TuxSH 2020-01-03 01:57:57 +00:00
  • 5f83df2599 thermosphere: yikes TuxSH 2020-01-02 23:29:37 +00:00
  • aeca48503b thermosphere: use strict volatile bitfields just in case TuxSH 2020-01-02 21:21:09 +00:00
  • 0fb5f81e8a thermosphere: vgic: fix critical bug in vgicUpdateState, add more checks TuxSH 2020-01-02 18:45:30 +00:00
  • b0d258209c thermosphere: add CFI where needed, add PANIC macro, etc. TuxSH 2020-01-02 18:41:52 +00:00
  • c365fff119 thermosphere: vgic: mostly fix vSGI handling, remove unimplementable/unused stuff + bugfixes TuxSH 2020-01-02 01:40:30 +00:00
  • 0b532a0dfb thermosphere: fix guest access to irq 25, etc; we don't need to raise VI manually TuxSH 2019-12-26 00:05:36 +00:00
  • 1345aef693 thermosphere: add PPI definitions TuxSH 2019-12-25 20:46:38 +00:00
  • eda6a8d8d6 vgic: fix multiple bugs TuxSH 2019-12-26 00:33:38 +00:00
  • f75f584f2f thermosphere: fix various vgic bugs; fix register access OOB bug (xzr) TuxSH 2019-12-24 17:35:47 +00:00
  • 62fe082cd4 thermosphere: vgic: fix enabled state of virqs TuxSH 2019-12-26 00:33:21 +00:00
  • 6cef320bc1 thermosphere: fix multiple bugs TuxSH 2019-12-23 20:12:02 +00:00
  • e7b351ddb8 thermosphere: vgic code draft TuxSH 2019-08-18 00:40:47 +02:00
  • 9787bca325 thermosphere: also trap GICH (to deny access) TuxSH 2019-08-14 15:48:07 +02:00
  • bb1ba5308d thermosphere: handle stage2 data aborts, trap gicd accesses TuxSH 2019-08-14 00:33:19 +02:00
  • 442f4ef9ef thermosphere: implement stop point broadcast TuxSH 2019-08-13 00:14:56 +02:00
  • 3af20ff7a2 thermopshere: add "execute function" sgi TuxSH 2019-08-12 23:47:14 +02:00
  • 322d796004 thermosphere: barrier & active core mask TuxSH 2019-08-12 23:24:30 +02:00
  • c34df08ed9 thermosphere: handle physical IRQs TuxSH 2019-08-11 00:56:49 +02:00
  • 62fd2cd94d thermosphere: add gicv2 register definitions TuxSH 2019-08-09 22:20:05 +02:00
  • e71974085e thermosphere: sw breakpoint code, etc. TuxSH 2019-08-08 21:38:13 +02:00
  • 577daaebf0 thermosphere: remove breakpoint/watchpoint reg dump functions TuxSH 2019-08-07 23:51:25 +02:00
  • aad18182f4 thermosphere: add watchpoint + watchpoint merging code TuxSH 2019-08-07 21:38:40 +02:00
  • 0435b73f63 thermosphere: refactor crt0 + watchpoint init TuxSH 2019-08-06 22:26:28 +02:00
  • bd93b01e57 thermosphere: add actual breakpoint code TuxSH 2019-08-06 06:09:51 +02:00
  • 88218f606c thermosphere: add breakpoint/watchpoint enable/reset code TuxSH 2019-08-05 23:49:25 +02:00
  • 5081174d27 thermopshere: refactor & fix single-stepping code TuxSH 2019-08-05 04:46:11 +02:00
  • 731d50a3a3 thermopshere: refactor jump-to-kernel ,add single-step code TuxSH 2019-08-05 02:21:18 +02:00
  • 9c9f6c04cc thermosphere: add spinlock code TuxSH 2019-08-04 18:38:32 +02:00
  • 0c0d9f5335 thermometer: yeet most a32 support code 👌 TuxSH 2019-08-02 22:22:39 +02:00
  • 7f9c80abec thermosphere: impl stage2 translation TuxSH 2019-08-02 05:12:24 +02:00
  • c33d2ee369 thermosphere: rework linkscrips, use discardable sections, better sp pivot on crash TuxSH 2019-08-02 00:47:48 +02:00
  • 0b1ab362c6 thermosphere: add shadow page table hooks TuxSH 2019-08-01 02:58:16 +02:00
  • 823b2c8a6d thermosphere: enable EL2 stage1 translation (doesn't take much space) TuxSH 2019-08-01 02:58:16 +02:00
  • a35b3ff982 thermosphere: fix x18 init, etc. TuxSH 2019-08-01 00:46:16 +02:00
  • 7f094044b2 thermosphere: add semihosting support & load a kernel using it when needed TuxSH 2019-07-31 02:30:17 +02:00
  • 6cbf5628d4 thermosphere: seriaLog => debugLog, add DEBUG macro TuxSH 2019-07-31 02:30:17 +02:00
  • abe524fd79 thermosphere: cpu_on hook & skeleton for other PSCI functions TuxSH 2019-07-31 01:23:53 +02:00
  • 2bc1dc5ac2 thermosphere: add smc trap handler TuxSH 2019-07-31 00:08:09 +02:00
  • a47ad0b155 thermosphere: use adrp TuxSH 2019-07-30 21:13:38 +02:00
  • e6db007a22 thermosphere: enable traps, works around qemu brk bug TuxSH 2019-07-30 02:16:25 +02:00
  • ebef9b92e4 thermosphere: Fix wrong register allocation TuxSH 2019-07-30 02:16:25 +02:00
  • af80d5816b thermosphere: unfuck qemu JIT, fix exc. handling bug, add cache funcs TuxSH 2019-07-29 22:38:44 +02:00
  • 1f767fcce9 thermosphere: use x18 but qemu shits the bed TuxSH 2019-07-29 01:25:50 +02:00
  • 3769493300 thermosphere: add core_ctx.c/h TuxSH 2019-07-28 19:57:00 +02:00
  • eeee49404d fml coke spilled all over this laptop's keyboard TuxSH 2019-07-28 18:50:16 +02:00
  • df38a00b86 thermosphere: sysreg stuff, continued TuxSH 2019-07-26 23:06:34 +02:00
  • 53785b2281 thermosphere: add remaining sysreg passthrough stuff TuxSH 2019-07-26 01:22:23 +02:00
  • 07039902f7 thermosphere: more sysreg code TuxSH 2019-07-25 17:50:15 +02:00
  • e06131c114 thermosphere: add some basic sysreg trapping code TuxSH 2019-07-25 01:29:17 +02:00
  • 001cd7a7b0 thermosphere: proper uart_reset impl for uart-b TuxSH 2019-07-24 01:08:18 +02:00
  • 24f0af9e02 thermosphere: fix uart fifo init/flushing TuxSH 2019-07-24 00:03:02 +02:00
  • 36911b1365 thermosphere: rebase, fix some bugs TuxSH 2019-07-23 21:46:35 +02:00
  • 532907c9e7 thermosphere: add more sysreg stuff & start writing trap stuff TuxSH 2019-07-23 04:47:57 +02:00
  • fe0c3835b6 thermosphere: add sysreg list TuxSH 2019-07-23 04:47:57 +02:00
  • 11c1d926e2 thermosphere: add hypercall support... even if unused TuxSH 2019-07-23 00:54:35 +02:00
  • f2d22ccdef thermosphere: add ExceptionSyndromeRegister definition TuxSH 2019-07-22 22:01:21 +02:00
  • 114cd464e8 thermosphere: start exception handling TuxSH 2019-07-22 01:04:53 +02:00
  • 8e73bdef4c thermosphere: add qemu support TuxSH 2019-07-22 01:04:53 +02:00
  • 02c27a482a thermosphere: uart fixes/ still not working TuxSH 2019-07-21 22:27:12 +02:00
  • 3c2ff2933a thermosphere: rebase, doesn't work TuxSH 2019-07-21 21:35:52 +02:00
  • c326492464 thermosphere: uart refactor, now it doesn't work at all TuxSH 2019-07-20 23:24:16 +02:00
  • 20e5689f04 thermosphere: set correct gpio config for uart (thanks @hexkyz) TuxSH 2019-07-20 01:48:55 +02:00
  • 1d225ed5f8 thermosphere: attempt to output to uart-c TuxSH 2019-07-19 01:45:56 +02:00
  • acae18365b thermosphere: fix bugs: TuxSH 2019-07-18 23:43:49 +02:00
  • b124c4383e thermosphere: attempt to run TuxSH 2019-07-17 23:54:31 +02:00
  • 5bc923ea00 thermosphere: "write" placeholder code TuxSH 2019-07-17 01:49:47 +02:00
  • 2e2976efba thermosphere: remove legacy code TuxSH 2019-07-16 23:28:32 +02:00
  • 1309e93e26 libvapours: reorganize includes.hpp TuxSH 2020-02-04 19:02:17 +00:00
  • c6a736a6f6 libvapours: constexpr ALWAYS_INLINE T CombineBits TuxSH 2020-02-04 02:09:46 +00:00
  • 30e39e60f7 libvapour: forgot to add util_bitutil.hpp to util.hpp TuxSH 2020-02-04 02:04:59 +00:00
  • 108b997ef2 libvapours: introduce BitsOf, Bits TuxSH 2020-02-04 01:24:16 +00:00
  • 877b2cf790 libvapours: introduce BITL, MASK, MASKL, MASK2, MASK2L which were already present in other ams components TuxSH 2020-02-03 23:01:00 +00:00
  • 5e4307046a style cleanup Michael Scire 2020-01-31 16:38:33 -08:00
  • 2355047715 kern: add abstract scoped lock template Michael Scire 2020-01-31 16:37:58 -08:00
  • 57222e8301 kern: implement KSchedulerLock Michael Scire 2020-01-31 16:25:17 -08:00
  • 797c04d19f kern .fini array: one weird trick Michael Scire 2020-01-31 04:57:28 -08:00
  • 9accbcf8e1 meso: use -fno-non-call-exceptions, -fno-use-cxa-atexit Michael Scire 2020-01-31 04:47:08 -08:00
  • 86eea62cd8 kernel: use .rel.ro Michael Scire 2020-01-31 03:37:49 -08:00
  • 00b093ec62 util: remove spurious error in parent offset calc Michael Scire 2020-01-31 02:03:34 -08:00
  • b2b1129cc0 kern: mostly implement KThread::Initialize Michael Scire 2020-01-31 01:53:30 -08:00
  • d9db723bc8 kern: add all kthread members Michael Scire 2020-01-31 00:07:06 -08:00
  • 08cb370a45 kern: implement KThreadContext Michael Scire 2020-01-30 22:46:18 -08:00
  • d262ff92cc kern: implement KPriorityQueue Michael Scire 2020-01-30 20:56:24 -08:00
  • e1adbb6dba util: add BitSet Michael Scire 2020-01-30 17:45:54 -08:00
  • e25a4ca8d7 kern: implement KAffinityMask Michael Scire 2020-01-30 17:07:08 -08:00
  • 059c706f19 kern: implement KThreadLocalPage Michael Scire 2020-01-30 16:51:35 -08:00
  • 484f132651 kern: implement KHandleTable, other cleanup Michael Scire 2020-01-30 15:29:51 -08:00
  • d5a4c17ee7 kern: fully implement slabheap init Michael Scire 2020-01-30 01:41:59 -08:00
  • 7d6b16d7fb kern: Skeleton KSynchronizationObject Michael Scire 2020-01-29 23:46:55 -08:00
  • 2faf3d33b5 kern: Implement KAutoObject, KSlabHeap, KLightLock Michael Scire 2020-01-29 22:06:25 -08:00
  • bb4ade30e4 kern: optimize memory block tree lookups Michael Scire 2020-01-29 14:55:26 -08:00
  • 981bb1f15d kern: skeleton enough types to init KCoreLocalRegion in main() Michael Scire 2020-01-29 14:26:24 -08:00
  • ad0d2faa6c meso: makefile improvements, sysreg accessors Michael Scire 2020-01-29 05:37:14 -08:00
  • 507ab46709 cpu: optimize core barrier Michael Scire 2020-01-29 04:36:18 -08:00