aboutsummaryrefslogtreecommitdiff
path: root/HISTORY.md
diff options
context:
space:
mode:
authorvetch <vetch97@gmail.com>2020-01-04 20:13:06 +0100
committervetch <vetch97@gmail.com>2020-01-04 20:13:06 +0100
commitac380738c682aab754c520fd3cf65113f320f49e (patch)
treea1cebaa5d135bf4f3da803a211a39872919c30a5 /HISTORY.md
parent5d5ba341d770017eeb392e186e21fbf887a97d2e (diff)
downloadrpi-MMU-example-ac380738c682aab754c520fd3cf65113f320f49e.tar.gz
rpi-MMU-example-ac380738c682aab754c520fd3cf65113f320f49e.zip
move interrupts things to interrupts.h
Diffstat (limited to 'HISTORY.md')
-rw-r--r--HISTORY.md4
1 files changed, 3 insertions, 1 deletions
diff --git a/HISTORY.md b/HISTORY.md
index e63397d..21dee9f 100644
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -51,4 +51,6 @@ used to do - echoing everything on uart. The privileged code would mark a memory
This was also an opportunity for us to check that the memory mapping truly works. We mapped virtual addresses 0xAAA00000 - 0xAAAFFFFF to physical addresses just after our kernel image and translation table (probably 0x00100000 - 0x001FFFFF given the small size of our kernel). The virtual address range 0xAAA00000 - 0xAAAFFFFF was also marked available for use by PL0 code. We then made kernel write the blob at 0x00100000 knowing it will also appear at virtual 0xAAA00000. Then, successfully running the unprivileged code from that address confirmed, that the mapping really works.
-There were 2 important things forgetting about which would stop us from succeeding in this step. The first one was the stack. Kernel used to use the memory just below itself (physical 0x8000) as the stack and since these addresses would not be available for PL0 code, a new stack had to be chosen - we set it somewhere on the high part of our unprivileged memory. The second important thing was marking the section in which the memory-mapped uart registers reside as accessible form PL0. This is because we were going to have unprivileged code write to uart by itself (and use the same uart code kernel uses...). Once we had interrupts programmed, this demo was to be improved to actually call the privileged code for writing and reading. \ No newline at end of file
+There were 2 important things forgetting about which would stop us from succeeding in this step. The first one was the stack. Kernel used to use the memory just below itself (physical 0x8000) as the stack and since these addresses would not be available for PL0 code, a new stack had to be chosen - we set it somewhere on the high part of our unprivileged memory. The second important thing was marking the section in which the memory-mapped uart registers reside as accessible form PL0. This is because we were going to have unprivileged code write to uart by itself (and use the same uart code kernel uses...). Once we had interrupts programmed, this demo was to be improved to actually call the privileged code for writing and reading.
+
+At that point we rearranged files, as it was becoming pretty unreadable having over 50 files cluttered in one directory so now we could start writing proper docs and modularize project. \ No newline at end of file