TuxSH
217c1ad054
thermosphere: implement reading and writing guest memory
2021-02-19 21:51:50 +00:00
TuxSH
626f0ecb98
thermosphere: major refactor of memory map
...
- use recursive stage 1 page table (thanks @fincs for this idea)
- NULL now unmapped
- no identity mapping
- image + GICv2 now mapped at the same address for every platform
- tempbss mapped just after "real" bss, can now steal unused mem from
the latter
- no hardcoded VAs for other MMIO devices
- tegra: remove timers, use the generic timer instead
2021-02-19 21:51:48 +00:00
TuxSH
388c245ce4
thermosphere: add TransportInterface abstraction layer
2021-02-19 21:51:45 +00:00
TuxSH
1086c0612c
thermosphere: refactor tegra uart code, etc.
2021-02-19 21:51:44 +00:00
TuxSH
8dc9be9f8e
thermosphere: pl011 uart refactor
2021-02-19 21:51:44 +00:00
TuxSH
018260645a
thermosphere: fix pl101 uart reg definitions
2021-02-19 21:51:44 +00:00
TuxSH
1eb60a2a52
thermosphere: add hypervisor timer code
2021-02-19 21:51:43 +00:00
TuxSH
cdf3bc6942
thermosphere: add PPI definitions
2021-02-19 21:51:37 +00:00
TuxSH
176be2386d
thermosphere: also trap GICH (to deny access)
2021-02-19 21:51:35 +00:00
TuxSH
f9ec21e99e
thermosphere: handle stage2 data aborts, trap gicd accesses
2021-02-19 21:51:34 +00:00
TuxSH
0a9a8c2f15
thermosphere: handle physical IRQs
2021-02-19 21:51:33 +00:00
TuxSH
271d2a0ddb
thermosphere: add gicv2 register definitions
2021-02-19 21:51:33 +00:00
TuxSH
9bc0ed2f70
thermosphere: refactor crt0 + watchpoint init
2021-02-19 21:51:31 +00:00
TuxSH
eb27c36709
thermosphere: impl stage2 translation
2021-02-19 21:51:29 +00:00
TuxSH
e6c5eb3928
thermosphere: add shadow page table hooks
...
note: HCR.TVM not supported by qemu yet
2021-02-19 21:51:28 +00:00
TuxSH
045f556f80
thermosphere: enable EL2 stage1 translation (doesn't take much space)
...
Identity map using 1GB L1 blocks
2021-02-19 21:51:27 +00:00
TuxSH
ada6b180cc
thermosphere: add qemu support
2021-02-19 21:51:19 +00:00