blob: bdfe90795d68891aec7c023e1716780d55171a73 [file] [log] [blame] [edit]
{
"folders": [
{ "path": ".."}
],
"settings": {
"files.associations": {
".*/BUILD": "starlark",
".*/METADATA": "starlark",
".*/WORKSPACE": "starlark",
"*.gss": "css",
"*.inc": "c"
},
"files.exclude": {
".repo": true,
"autom4te.cache": true,
"cache": true,
"cicd": true,
"manifest": true,
"out": true,
"toolchain": true,
"**/Cargo.lock": true,
"**/target": true,
"**/arch-arm": true,
"**/arch/arm": true,
"**/arch/x86": true,
"**/x86_64": true,
"**/aarch64": true,
"**/arch/64": true,
"**/plat/64": true,
"**/plat/pc99": true,
}
},
"launch": {
"version": "0.2.0",
"configurations": [
{
"name": "ShodanDebugger",
"type": "cppdbg",
"request": "launch",
// This has to be set.
"cwd": "${workspaceFolder}",
// This has to be set, but it is unused because of our custom launch script.
"program": "out/shodan_boot_rom/build-out/multihart_boot_rom/multihart_boot_rom_sim_verilator.elf",
"MIMode": "gdb",
"miDebuggerPath": "${workspaceFolder}/cache/toolchain/bin/riscv32-unknown-elf-gdb",
"miDebuggerServerAddress": "localhost:3333", // If this isn't set, vscode will open another terminal on launch
"logging": { "engineLogging": true }, // optional, enable if you want to see the gdb commands that were sent
// VSCode claims this is deprecated, but if you use "customLaunchSetupCommands" it won't start the debugging session if this isn't here
// and valid. It does _not_ appear to matter what it's set to.
"targetArchitecture": "x64", // riscv:rv32?
"customLaunchSetupCommands":[
// Set gdb current directory.
{"text": "cd ${workspaceFolder}"},
// Set app current directory.
{"text": "set cwd ${workspaceFolder}"},
// Set source file search path.
{"text": "directory sw/tock"},
// Load the bootrom executable.
{"text": "file out/shodan_boot_rom/build-out/multihart_boot_rom/multihart_boot_rom_sim_verilator.elf"},
// Load additional symbol files. "-file-symbol-file" seems to unload previously loaded symbols, but add-symbol-file works.
{"text": "set confirm off"},
// Matcha+TockOS symbols
{"text": "add-symbol-file out/matcha/riscv32imc-unknown-none-elf/debug/matcha_platform"},
{"text": "add-symbol-file out/matcha/riscv32imc-unknown-none-elf/debug/matcha_app"},
// seL4 symbols
{"text": "add-symbol-file out/cantrip/kernel/kernel.elf"},
{"text": "add-symbol-file out/cantrip/capdl-loader"},
{"text": "add-symbol-file out/cantrip/debug_console.instance.bin"},
{"text": "add-symbol-file out/cantrip/process_manager.instance.bin"},
// Connect to the Renode gdb server.
{"text": "target remote localhost:3333"},
],
// This is supposed to stop vscode from issuing an "-exec-continue", but it doesn't seem to work.
"launchCompleteCommand": "None"
}
],
},
"extensions": {
},
"tasks": {
"version": "2.0.0",
"tasks": []
}
}