Hi Thomas,
On 08/10/13 18:53, Thomas Petazzoni wrote:
> On Tue, 27 Aug 2013 14:11:40 +1000, Greg Ungerer wrote:
>
>> The most immediate reason for this comes back to code in src/target/armv7a.c,
>> function armv7a_read_ttbcr(), which does this:
>>
>> if (armv7a->armv7a_mmu.ttbr1_used == 1) {
>> LOG_INFO("SVC access above %x",
>> (0xffffffff & armv7a->armv7a_mmu.ttbr0_mask));
>> armv7a->armv7a_mmu.os_border = 0xffffffff &
>> armv7a->armv7a_mmu.ttbr0_mask;
>> } else {
>> /* fix me , default is hard coded LINUX border */
>> armv7a->armv7a_mmu.os_border = 0xc0000000;
>> }
>>
>> That hard coded 0xc0000000 is causing the eventual address check in
>> cortex_a8_check_address(), src/target/cortex_a.c to fail.
>>
>> Off hand I am not sure how best to change that, but in it currents form
>> it won't work for all cases.
>
> In the end, have you been able to get a working setup for OpenOCD on
> the Armada 370 Mirabox?
Working yes, but not perfectly.
I had to "disable" the address checking of that os_border from above
for one thing.
It has been good enough to bring up a new board based on the Armada 370.
But I see occasional odd behavior and annoying warnings. At worst a
restart of openocd seems to bring everything back to a workable state
while debugging.
The script is the following. It is pretty simple.
#
# armada370 -- support for the Marvell Armada/370 CPU family
#
jtag newtap armada370 dap -irlen 4 -ircapture 0x1 -irmask 0xf
-expected-id 0x4ba00477
target create armada370.cpu cortex_a8 -chain-position armada370.dap
proc armada370_dbginit {target} {
cortex_a dbginit
}
armada370.cpu configure -event reset-assert-post "armada370_dbginit
armada370.cpu"
# We need to init now, so we can run the dap apsel.
init
dap apsel 1
I have a few other local macros on top of this to help we out while
working on it. It has been good enough to work from a board with an
empty flash. From here I could run DRAM initializer code, and then
load u-boot directly and run it. I could even load linux and filesytem
directly and run them through it too.
Regards
Greg
------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel