aboutsummaryrefslogtreecommitdiff
path: root/src/target
AgeCommit message (Collapse)Author
2011-08-09dps5680xx fix warningsRodrigo L. Rosa
reorganized code to get rid of compiler warnings the warning were related to allignment, i do not get these warning on my build system (i've tried setting the compiler flag but it doesn't work, still working on why) so i cannot detect them (yet.)
2011-08-08arm11: disable broken optimization for setting current scan chainØyvind Harboe
2011-08-01etb: fix incorrect previous patchsetJie Zhang
This corrects two issues found with openocd. d7f71e7fe9645fa8c3f88cf6fc9ad438aa6708f3 removed some code that was being used. The above then caused even more code to get removed by commit 1cfb2287a67c1f78b76583b2e5ed83ca3560b0d5. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-07-04mips_m4k and arm7_9 : Fix soft bkpt endianess for 16-bit instructionsDrasko DRASKOVIC
The patch fix comparison of target data on the host by using target_buffer_get_u16() to transform current_instr to _host_ endianess before comparison.
2011-07-04cortex_m3: add auto maskisrv0.5.0-rc2Peter Horn
This patch extends the cortex_m3 maskisr command by a new option 'auto'. The 'auto' option handles interrupts during stepping in a way they are processed but don't disturb the program flow during debugging. Before one had to choose to either enable or disable interrupts. The former steps into interrupt handlers when they trigger. This disturbs the flow during debugging, making it hard to follow some piece of code when interrupts occur often. When interrupts are disabled, the flow isn't disturbed but code relying on interrupt handlers to be processed will stop working. For example a delay function counting the number of timer interrupts will never complete, RTOS task switching will not occur and output I/O queues of interrupt driven I/O will stall or overflow. Using the 'maskisr' command also typically requires gdb hooks to be supplied by the user to switch interrupts off during the step and to enable them again afterward. The new 'auto' option of the 'maskisr' command solves the above problems. When set, the step command allows pending interrupt handlers to be executed before the step, then the step is taken with interrupts disabled and finally interrupts are enabled again. This way interrupt processing stays in the background without disturbing the flow of debugging. No gdb hooks are required. The 'auto' option is the default, since it's believed that handling interrupts in this way is suitable for most users. The principle used for interrupt handling could probably be used for other targets too. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-07-04Revert "cortex_m3: add auto maskisr"Spencer Oliver
This reverts commit ff640f197a9a343b2f3ed10e9174e35282334e8c. Original patch reverted as Author's name was incorrectly set.
2011-07-01mips_m4k : Fix soft breakpoint endianess handlingDrasko DRASKOVIC
In order to compare data read from the target with some marcros or data defined on the host, we must transform this read data from target endianess to host endianess. target_read_memory() gets bytes from target to the host, but keeps them in _target_ endianess. This is OK if we just want to temporary keep this data on the host, like keeping breakpoint->orig_instr. But if we want to use this data for any ispections and comparisons on the host side, we must transform it to _host_ endianess, by using target_buffer_get_u32() function. Currently this transformation is missing, and check current_instr == MIPS32_SDBBP will never pass if target and host endianess differ, because current_instr will be kept in _target_ endianess and MIPS32_SDBBP will be kept in _host_ endianess, The patch fix this issue by using target_buffer_get_u32() to transform current_instr to _host_ endianess before comparison.
2011-06-28dsp5680xx: disable for now, it generates warningsØyvind Harboe
Use "git revert <commit>" to revert this commit, then build and repair and post patch to the mailing list. Warnings generated with: nios2-elf-gcc (GCC) 3.4.6 (Altera Nios II 9.1 b222) openocd/src/target/dsp5680xx.c: In function 'eonce_rx_upper_data': openocd/src/target/dsp5680xx.c:252: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c: In function 'eonce_rx_lower_data': openocd/src/target/dsp5680xx.c:268: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c: In function 'eonce_pc_store': openocd/src/target/dsp5680xx.c:508: warning: dereferencing type-punned pointer will break strict-aliasing rules openocd/src/target/dsp5680xx.c: In function 'dsp5680xx_read': openocd/src/target/dsp5680xx.c:736: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c:737: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c: In function 'dsp5680xx_write_8': openocd/src/target/dsp5680xx.c:823: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c: In function 'dsp5680xx_write': openocd/src/target/dsp5680xx.c:938: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c:941: warning: cast increases required alignment of target type openocd/src/target/dsp5680xx.c: In function 'dsp5680xx_f_wr': openocd/src/target/dsp5680xx.c:1355: warning: cast increases required alignment of target type
2011-06-28mips4k: fix big-endian hosts and host alignment problemsØyvind Harboe
the code was making assumptions about the endianness of the host.
2011-06-28dsp5680xx: fix compilation problemsØyvind Harboe
use a more specific global variable name than "context", which can easily conflict with other things.
2011-06-28cortex_m3: add auto maskisrv0.5.0-rc1Spencer Oliver
This patch extends the cortex_m3 maskisr command by a new option 'auto'. The 'auto' option handles interrupts during stepping in a way they are processed but don't disturb the program flow during debugging. Before one had to choose to either enable or disable interrupts. The former steps into interrupt handlers when they trigger. This disturbs the flow during debugging, making it hard to follow some piece of code when interrupts occur often. When interrupts are disabled, the flow isn't disturbed but code relying on interrupt handlers to be processed will stop working. For example a delay function counting the number of timer interrupts will never complete, RTOS task switching will not occur and output I/O queues of interrupt driven I/O will stall or overflow. Using the 'maskisr' command also typically requires gdb hooks to be supplied by the user to switch interrupts off during the step and to enable them again afterward. The new 'auto' option of the 'maskisr' command solves the above problems. When set, the step command allows pending interrupt handlers to be executed before the step, then the step is taken with interrupts disabled and finally interrupts are enabled again. This way interrupt processing stays in the background without disturbing the flow of debugging. No gdb hooks are required. The 'auto' option is the default, since it's believed that handling interrupts in this way is suitable for most users. The principle used for interrupt handling could probably be used for other targets too. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-06-28cortex_m3: add BKPT_TYPE_BY_ADDR definePeter Horn
Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-06-24Fix load_image for ELF with all p_paddr set to zeroDrasko DRASKOVIC
So far image_load command tries to load ELF binaries to address discovered by reading p_paddr member of a Program header of an ELF segment. However, ELF specifications says for p_paddr : ...Because System V ignores physical addressing for application programs, this member has unspecified contents for executable files and shared objects. ARM ELF specifiaction goes even further, demanding that this member be set to zero, using the p_vaddr as a segment load address. To avoid the cases to wrong addr where p_paddr is zero, we are now using p_vaddr to as a load destination in case that *all* p_paddr == 0. Basically, this patch re-implements the approach present in BDF's elf.c, which is used by GDB also (so that we can be consistent).
2011-06-17build: add missing files to make distSpencer Oliver
Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-06-17build: add missing files from dist releaseSpencer Oliver
Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-06-13transport: move files over to transport folderØyvind Harboe
as we introduce swd and jtag as two transports, we want to start up with a new transport folder to organize the code a bit.
2011-06-12doxy moreRodrigo L. Rosa
2011-06-12doxy & cleanupRodrigo L. Rosa
2011-06-12cleanup trailing whitespacesRodrigo L. Rosa
2011-06-12flash speed improvedRodrigo L. Rosa
2011-06-12removed unnecessary actions/controlsRodrigo L. Rosa
2011-06-12cleanup flash module commandRodrigo L. Rosa
2011-06-12fix read for verify_imageRodrigo L. Rosa
2011-06-12fix read speed improved by queueing commandsRodrigo L. Rosa
2011-06-12fix flash driver size, sector eraseRodrigo L. Rosa
2011-06-07Fix "unused variable" warnings (errors) detected with GCC 4.7.0 - leftover ↵Freddie Chopin
changes
2011-06-05mips: add nor flash write from memory blockStefan Mahr
2011-06-04crc check on flashed dataRodrigo L. Rosa
2011-06-04code cleanupRodrigo L. Rosa
2011-06-04Fix "unused variable" warnings (errors) detected with GCC 4.7.0 - dubious fixesFreddie Chopin
2011-06-04Fix "unused variable" warnings (errors) detected with GCC 4.7.0 - trivial fixesFreddie Chopin
2011-06-01mips: fixup fastdataStefan Mahr
fixup fastdata
2011-06-01mips: fix some more endian madnessStefan Mahr
2011-05-29mips: fix swapping if running on big endian hostStefan Mahr
2011-05-28mips: fix swapping if openocd is running on big endian hostStefan Mahr
2011-05-23dsp5680xx: whitespace cleanupSpencer Oliver
Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-05-23Fix build issue under cygwinSpencer Oliver
cygwin does not define sleep, so use our internal win32 version. caused by commit 9d4aec6bda90ad39a140747ea270c6a09dd26440 Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
2011-05-19flashing speed improved using queued jtag. error propagation improved.Rodrigo L. Rosa
2011-05-18partial support for 568013 and 568037, target integration.Rodrigo L. Rosa
2011-05-03Remove useless MIPS code in avr32_ap7k.c.Jie Zhang
2011-04-28cortex_a : smp supportMichel Jaouen
Conflicts: src/target/cortex_a.c
2011-04-28smp : infra for smp minimum supportMichel Jaouen
2011-04-15RTOS Thread awareness support wipBroadcom Corporation (Evan Hunter)
- works on Cortex-M3 with ThreadX and FreeRTOS Compared to original patch a few nits were fixed: - remove stricmp usage - unsigned compare fix - printf formatting fixes - fixed a bug with overrunning a memory buffer allocated with malloc.
2011-04-13Replace byte-access to memory with faster word-accessLuca Ellero
Freescale iMX53 doesn't seem to like unaligned accesses to his memory mapped registers. Anyway this patch makes dump_image/load_image 4X faster for every access through APB. Signed-off-by: Luca Ellero <lroluk@gmail.com>
2011-04-13Add opcodes for load/store registers words immediate post-indexedLuca Ellero
Signed-off-by: Luca Ellero <lroluk@gmail.com>
2011-04-13cortex_a :apb mem read/write working with mmu_onMichel JAOUEN
Conflicts: src/target/cortex_a.c
2011-04-13cortex_a : multiple target on the same dapMichel JAOUEN
2011-04-13cortex_a : use dap ref from armv4_5commonMichel JAOUEN
2011-04-06cortex_a : implement jtag console for cortex_aMichel JAOUEN
2011-04-05Added mips_ejtag_drscan_32_out() for optimization.Drasko DRASKOVIC