remote kernel debugging
Manuel Stühn
freebsdnewbie at freenet.de
Sat Mar 28 18:24:38 UTC 2015
On Sat, 28 Mar 2015 11:11:52 -0600, Warner Losh wrote
>
>> On Mar 28, 2015, at 10:39 AM, Manuel Stühn <freebsdnewbie at freenet.de> wrote:
>>
>> On Sun, 22 Mar 2015 02:10:54 +0100, Bernd Walter wrote
>>> The flags are documented in the uart manpage.
>>> 0x10 flag sets the console uart and 0x80 the gdb uart.
>>> 0x90 sets both.
>>> But it assumes /boot/device.hints to be used, which to my knowledge isn't
>>> true on the BBB.
>>> The console is setup via stdin/stdout in
>>> sys/boot/fdt/dts/arm/beaglebone.dts
>>> No idea how gdb or any of the other flags can be entered in the DTS files.
>>>
>>
>> After further investigation I found this flag for loader(8):
>>
>> set hw.uart.dbgport="mm:0x48022000,br:115200" # uart1 on BBB
>>
>> (more info in sys/dev/uart/uart_subr.c), which seems to be able to inform the debug-system about the desired uart-port. Unfortunately, when I'm setting this variable like shown above the systems stops right here:
>>
>> Hit [Enter] to boot immediately, or any other key for command prompt.
>> Booting [/boot/kernel/kernel]...
>> Using DTB provided by U-Boot at address 0x80000100.
>> Kernel entry at 0x80200100...
>> Kernel args: (null)
>> GDB: debug ports: uart
>>
>> No further output appears, it seems that the whole system stopped at this point.
>>
>> Any hints?
>
> Do you have DDB, KDB and GDB all enabled in the kernel?
>
> Warner
>
Yes, all three options are enabled in the kernel. uart1 is also enabled
in the device-tree, pinmux setting seems to be correct; i was able to
sucessfully connect to another node via uart1 with picocom.
--
Manuel
More information about the freebsd-arm
mailing list