Module kernel::debug
[−]
[src]
Support for in-kernel debugging.
For printing, this module uses an internal buffer to write the strings into.
If you are writing and the buffer fills up, you can make the size of
output_buffer
larger.
Before debug interfaces can be used, the board file must assign them hardware:
kernel::debug::assign_gpios( Some(&sam4l::gpio::PA[13]), Some(&sam4l::gpio::PA[15]), None, ); let kc = static_init!( capsules::console::App, capsules::console::App::default()); kernel::debug::assign_console_driver(Some(hail.console), kc);
Example
debug!("Yes the code gets here with value {}", i); debug_verbose!("got here"); // includes message count, file, and line debug_gpio!(0, toggle); // Toggles the first debug GPIO
Yes the code gets here with value 42 TOCK_DEBUG(0): /tock/capsules/src/sensys.rs:24: got here
Reexports
use callback::AppId; |
use callback::Callback; |
use core::slice; |
use core::str; |
use core::cmp::min; |
use core::fmt::write; |
use core::fmt::Arguments; |
use core::fmt::Result; |
use core::fmt::Write; |
use core::ptr::read_volatile; |
use core::ptr::write_volatile; |
use driver::Driver; |
use hil; |
use mem::AppSlice; |
use process; |
use returncode::ReturnCode; |
Structs
DebugWriter |
Constants
APPID_IDX | |
BUF_SIZE |
Statics
DEBUG_GPIOS | |
DEBUG_WRITER | |
KERNEL_CONSOLE_CALLBACK |
Traits
Debug |
Functions
assign_console_driver⚠ | |
assign_gpios⚠ | |
begin_debug_fmt | |
begin_debug_verbose_fmt | |
flush⚠ | |
get_grant⚠ | |
panic⚠ |
Tock default panic routine. |
panic_banner⚠ |
Lightweight prints about the current panic and kernel version. |
panic_begin⚠ |
Generic panic entry. |
panic_blink_forever |
Blinks a recognizable pattern forever. |
panic_process_info⚠ |
More detailed prints about all processes. |