cli_monitor: Add foc-specific kdebug command

This commit is contained in:
Norman Feske
2013-03-21 15:50:32 +01:00
parent 022e762a40
commit dfe4fd177d
8 changed files with 141 additions and 8 deletions

View File

@ -22,7 +22,7 @@ exec tar cfv bin/vim.tar -h -C bin/vim .
create_boot_directory
append config {
<config verbose="yes">
<config>
<parent-provides>
<service name="ROM"/>
<service name="LOG"/>
@ -44,15 +44,29 @@ append config {
<provides><service name="Timer"/></provides>
<route> <any-service> <parent/> </any-service> </route>
</start>
<start name="uart_drv">
<start name="uart_drv">}
# use kernel debugger as UART on Fiasco.OC
append_if [have_spec foc] config {
<binary name="kdb_uart_drv"/>}
append config {
<resource name="RAM" quantum="1M"/>
<provides>
<service name="Uart"/>
<service name="Terminal"/>
</provides>
<config>
<policy label="terminal_mux" uart="1" detect_size="yes"/>
<policy label="noux" uart="1" detect_size="yes"/>
<config> }
# on Fiasco.OC the kdb_uart_drv is always UART 0
append_if [have_spec foc] config {
<policy label="terminal_mux" uart="0" detect_size="yes"/> }
# on all other kernels, direct terminal_mux to UART 1 (Qemu stdio, see below)
append_if [expr ![have_spec foc]] config {
<policy label="terminal_mux" uart="1" detect_size="yes"/> }
append config {
</config>
<route> <any-service> <parent/> </any-service> </route>
</start>
@ -134,11 +148,22 @@ set boot_modules {
vim.tar
}
lappend_if [have_spec foc] boot_modules kdb_uart_drv
set fiasco_serial_esc_arg ""
build_boot_image $boot_modules
append qemu_args " -m 256 "
#append qemu_args " -nographic -serial mon:stdio -serial file:/tmp/foo"
append qemu_args " -nographic -serial file:kdb.log -serial mon:stdio"
append qemu_args " -nographic "
#
# On Fiasco.OC, we use only one UART via the kernel debugger.
# On all other kernels, we write the core debug output to the kdb.log file,
# and use qemu's stdio as the UART used by terminal_mux.
#
append_if [expr ![have_spec foc]] qemu_args " -serial file:kdb.log "
append qemu_args " -serial mon:stdio"
run_genode_until forever