arceos-org / arceos

An experimental modular OS written in Rust.
https://arceos.org/arceos/
Apache License 2.0
503 stars 254 forks source link

Fix jtag debug load failure bug #145

Closed jackyliu16 closed 5 months ago

jackyliu16 commented 7 months ago

Cause of failure: the image file transmitted to the raspi4 board via jtagboot wasn't the image we expected, but the one which rust-raspberrypi-OS-tutorials provide and using for halt core.

Solution: Copy the original image file from the tutorial, and modify it to enable dead loop when powered up for openocd and gdb to halt the core.

Future: Maybe we could try to use some ways to skip the process of modifying the boot image in the sd card. For example provide some kind of method in ruby minipush, using some kind of signal to identify if should run the code after the image has been loaded in the memory.

It should be noted that this PR was also submitted to arceos_experiment, but the commit over there hasn't been sorted.