diff --git a/JOURNAL.md b/JOURNAL.md index 25681be..2a8f981 100644 --- a/JOURNAL.md +++ b/JOURNAL.md @@ -3531,3 +3531,59 @@ address: Let's revert the stvec to its original value and try again and see if we can see the delegation properly being handed to the supervisor handler. + +It continues to do the same trap in machine mode, rather than handing the +interrupt over to supervisor. + + Boot HART MIDELEG : 0x0000000000000222 + Boot HART MEDELEG : 0x000000000000b109 + >>Core: 11 devices, 8 uclasses, devicetree: board + Loading Environment from nowhere... OK + In: serial,usbkbd + Out: serial,vidconsole + Err: serial,vidconsole + No working controllers found + Net: No ethernet found. + Working FDT set to c0000000 + Hit any key to stop autoboot: 0 + => exception sregs + stvec : 0x00000000af6f4400 + sie : 0x0000000000000000 + sip : 0x0000000000000000 + sstatus : 0x8000000200006000 + => exception enable + => exception sregs + stvec : 0x00000000af6f4400 <-------- now stvec is left as-is + sie : 0x0000000000000222 + sip : 0x0000000000000000 + sstatus : 0x8000000200006002 + => mw 0x40014000 0xffffffff # Disable clock interrupt + => md 0x40801000 1 # Show pending interrupts (should be 0x10) + 40801000: 00000010 .... + => mw 0x40802000 0x10 # Enable interrupt for source 4 (timer) + => mw 0x40800010 0xff # Make source 4 priority large +