gdb - loading linux kernel on the target through jtag -
i trying load , boot linux kernel through jtag on am3517 evaluation board. debugger bdi3000. not using openocd, since according documentation of debugger not required. far think able load vmlinux image onto memory, 1 time done "cont" gdb command not boot linux. not messages on serial console.
i next instructions given in link http://elinux.org/debugging_the_linux_kernel_using_gdb
trying address of log_buffer mentioned in link gives me next output
(gdb) p (char*) &__log_buf[log_start] $1 = 0xc04cd460 <address 0xc04cd460 out of bounds>
i have searched lot on net not find proper answer. not sure doing wrong.
the linux kernel cannot loaded , executed. before linux kernel can executed, arm architecture requires bootloader:
configure memory system. load kernel image @ right memory address. optionally load initial ram disk @ right memory address. initialize boot parameters pass kernel (aka kernel command line). obtain arm linux machine type (and other info atags) enter kernel appropriate register values.most of these steps mutual architectures, atags list of scheme info unique arm. of these booting requirements mentioned in "booting arm linux". typically bootloader (e.g. u-boot) performs these tasks. , tutorial mentioned tells utilize bootloader initialize board:
the practical way of doing set hardware breakpoint @ start of kernel , reset board using jtag reset signal. boot loader initialize board , execution stop @ start of kernel. after can load kernel memory , run it.
linux-kernel gdb boot jtag
No comments:
Post a Comment