- 03 Feb, 2016 1 commit
-
-
Paul Fertser authored
Commit fd43be07 introduced a regression: since the register names were changed from those traditional for MIPS to common GDB scheme the code that makes use of them needs to be changed accordingly. This commit restores pic32mx flash driver functionality. Change-Id: Id18c739390fae36737a02dc30c363d0444f53b96 Reported-by:
Louis Rannou <louson@users.sf.net> Signed-off-by:
Paul Fertser <fercerpav@gmail.com> Reviewed-on: http://openocd.zylin.com/3206 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
- 29 Jan, 2016 1 commit
-
-
Bogdan Kolbov authored
niietcm4_write() buffer padding: add correct buffer padding for 16 bytes. Args check in FLASH_BANK_COMMAND_HANDLER(): first version of the driver had 7 args, current - 6. This patch will fix error when flash is rejected (current k1921vk01t.cfg has flash bank init with 6 args). Timeouts in flash flag checking procedure: increase timeouts in niietcm4_opstatus_check() and niietcm4_uopstatus_check() cause there were problems in some hardware configurations. JTAG ID: wrong id in k1921vk01t.cfg replaced with right one. Signed-off-by:
Bogdan Kolbov <kolbov@niiet.ru> Change-Id: I84296ba3eb4eeda4d4a68b18c94666f1269a500f Reviewed-on: http://openocd.zylin.com/3171 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
- 22 Jan, 2016 5 commits
-
-
Andreas Fritiofson authored
Use it to print the manufacturer of detected TAPs Change-Id: Ic4384c61c7f6f7ae2a9b860a805a5997542f72cc Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3177 Tested-by: jenkins Reviewed-by:
Jiri Kastner <cz172638@gmail.com> Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Matthias Welwarsky authored
With DAP WAIT support, it's no longer necessary to start with slow JTAG clock. Change-Id: I2cb62c44752b27e6854637e8073e9f9501f5a660 Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3190 Tested-by: jenkins Reviewed-by:
Felipe Balbi <balbi@ti.com> Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Jiri Kastner authored
according to... ARM DDI 0433B is: 0x9a5 Cortex-A5 PMU ARM DDI 0435C is: 0x955 Cortex-A5 ETM ARM DDI 0401C is: 0x950 Cortex-A9 PTM ARM DDI 0469B is: 0x931 Cortex-R5 ETM ARM DDI 0460D is: 0xc15 Cortex-R5 Debug ARM DDI 0458C is: 0x9b7 Cortex-R7 PMU 0xc17 Cortex-R7 Debug ARM DDI 0535C is: 0x95b Cortex-A17 PTM 0x9ae Cortex-A17 PMU 0xc0e Cortex-A17 Debug ARM DDI 0500F is: 0x9a8 Cortex-A53 CTI 0x95d Cortex-A53 ETM 0x9d3 Cortex-A53 PMU 0xd03 Cortex-A53 Debug ARM DDI 0488G is: 0x906 Cortex-A57/A72 CTI 0x95e Cortex-A57 ETM 0x9d7 Cortex-A57 PMU 0xd07 Cortex-A57 Debug ARM 100095_0002_03_en is: 0x95a Cortex-A72 ETM 0x9d8 Cortex-A72 PMU 0xd08 Cortex-A72 Debug Change-Id: Ieffefb30f2e75c45fe1a2f9c8204e3a9b1af3d7a Signed-off-by:
Jiri Kastner <cz172638@gmail.com> Reviewed-on: http://openocd.zylin.com/3198 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Matthias Welwarsky authored
dap_sync() executes all commands in the JTAG queue and then checks if a WAIT condition happened inside the last batch. If yes, a recovery is invoked. If not, processing continues without checking for errors. This function should be called in long AP read or writes, e.g. while uploading a new application binary, at intermediate points within the transfer where the cost of flushing the JTAG queue and checking the journal doesn't affect performance too much. Change-Id: I99eeaf47cdf951e15e589a04e74b90b5ce911386 Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3181 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Matthias Welwarsky authored
ADIv5 specifies that DP and AP accesses may generate a WAIT response when the hardware is not able to complete a request for various reasons in time before the next request is sent. Currently, the software treats a WAIT response as a fatal error and aborts operation on the DAP. This patch implements WAIT handling by keeping a journal of all outstanding and completed accesses, including their response status. At certain times (when dap_run() is called), the journal is inspected for WAIT responses and all discarded accesses are replayed to complete them. Special care is taken to not re-execute already successfully completed operations. Change-Id: I2790070388cf1ab2e8c9a042d74eb3ef776aa583 Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3166 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
- 15 Jan, 2016 1 commit
-
-
Paul Fertser authored
Make the J-Link driver handle everything needed for FPGA programming, this includes arbitrary long scans and STABLECLOCKS command. Also, bump to the latest upstream libjaylink to properly support this. This code is heavily inspired by Andreas Fritiofson's ftdi.c. Change-Id: Ic5fd87aa88b58ff1138dc2e0a197bb52321b1541 Signed-off-by:
Paul Fertser <fercerpav@gmail.com> Reviewed-on: http://openocd.zylin.com/2946 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
- 12 Jan, 2016 1 commit
-
-
Evan Hunter authored
Change-Id: I4747c113ab6c02199f078d9b4a4ec372d011fb2d Signed-off-by:
Evan Hunter <ehunter@broadcom.com> Reviewed-on: http://openocd.zylin.com/3200 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
- 06 Jan, 2016 1 commit
-
-
Peter A. Bigot authored
BeagleBone debian 7 builds produce: jlink.c: In function 'jlink_speed': jlink.c:218:11: error: declaration of 'div' shadows a global declaration [-Werror=shadow] jlink.c: In function 'check_trace_freq': jlink.c:1065:54: error: declaration of 'div' shadows a global declaration [-Werror=shadow] jlink.c: In function 'config_trace': jlink.c:1101:11: error: declaration of 'div' shadows a global declaration [-Werror=shadow] Fix this by changing the local variable to 'divider'. Change-Id: I96a0cc0f7d4d4af5a56aa1e918e5416d3c61cbfe Signed-off-by:
Peter A. Bigot <pab@pabigot.com> Reviewed-on: http://openocd.zylin.com/3185 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
- 03 Jan, 2016 2 commits
-
-
Peter A. Bigot authored
BeagleBone debian 7 builds produce: adi_v5_jtag.c: In function 'jtag_ap_q_bankselect': adi_v5_jtag.c:336:11: error: declaration of 'select' shadows a global declaration [-Werror=shadow] Fix this by changing the local variable to 'sel'. Change-Id: I8e29662ac12bc77d38d5064046d59b7364853cd9 Signed-off-by:
Peter A. Bigot <pab@pabigot.com> Reviewed-on: http://openocd.zylin.com/3184 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
Peter Lawrence authored
The existing arm_adi_v5.c code decodes CoreSight peripherals based on the part number field. However, these are specific to a particular manufacturer (often ARM). The same part number from two different manufacturers (distinct designer ids) should not decode as the same CoreSight peripheral. The Analog Devices ADSP-SC58x and ADSP-BF70x have peripherals that overlap with existing OpenOCD decoding. The part number is the same as existing OpenOCD decoding, but have a different JEP106 code. Most, if not all, of the existing part number entries in arm_adi_v5.c are probably specific to ARM. Change all entries suspected to be designed by ARM to match only ARM's designer ID. However, to preserve legacy behavior, existing non-ARM entries are encoded with a wildcard so that they will behave in the same way as the existing legacy code. It is desirable, however, to start encoding the data with designer codes to avoid such ambiguity. Revising the code to check both the part number and designer id seemed to a warrant a const array lookup table instead of a multi-tiered switch statement. Also try to sync part identification IDs with relevant ARM docs. Change-Id: Iac1374e4cfc6f04cebb479c0e3fa9bde527cc4a3 Signed-off-by:
Peter Lawrence <majbthrd@gmail.com> [andreas.fritiofson@gmail.com: change JEP106 to designer ID, cleanup] Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3128 Tested-by: jenkins
-
- 01 Jan, 2016 1 commit
-
-
Spencer Oliver authored
The other submodules default to http for users behind firewalls. Change-Id: I58fce00478ec6c94f75992f4e8f0c24f556abe61 Signed-off-by:
Spencer Oliver <spen@spen-soft.co.uk> Reviewed-on: http://openocd.zylin.com/3172 Tested-by: jenkins
-
- 30 Dec, 2015 1 commit
-
-
Paul Fertser authored
The HLA target shares an examine handler with cortex_m but since it lacks direct access to DAP, some operations need to be omitted. Change-Id: Ifdd9d3da4a3a3c2e1c9721284b21d041b3ccaa7a Signed-off-by:
Paul Fertser <fercerpav@gmail.com> Reviewed-on: http://openocd.zylin.com/3183 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
- 29 Dec, 2015 26 commits
-
-
Matthias Welwarsky authored
work around issues with software breakpoints when the text segment is mapped read-only by the OS. Set DACR to "all-manager" to bypass TLB permission checks on memory access. Change-Id: I79fd9b32b04a4d538d489896470ee30b26b72b30 Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3107 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Antony Pavlov authored
Change-Id: I4de5156b3c43f548305f8b9a3943a727fa6f0dbe Signed-off-by:
Antony Pavlov <antonynpavlov@gmail.com> Reviewed-on: http://openocd.zylin.com/2889 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
Matthias Welwarsky authored
This patch fixes the tap order so that it matches the actual jtag chain when all taps are enabled. It also introduces a variable DEFAULT_TAPS that can be set outside of this script, e.g. on the command line, to specify which taps are to be enabled on init. Lastly, a new debug target "am335x.m3" is added so that the Wakeup-M3 can be selected for debugging. Change-Id: Iccf177fda8d5e3737b1b2bb8fd1eaa7d3262ed9f Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3013 Tested-by: jenkins Reviewed-by:
Paul Fertser <fercerpav@gmail.com>
-
Evan Hunter authored
Change-Id: Idb72750d0aa893119fb405eb27215cba455428a0 Signed-off-by:
Evan Hunter <ehunter@broadcom.com> Reviewed-on: http://openocd.zylin.com/2891 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-by:
Jiri Kastner <cz172638@gmail.com> Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
Andreas Färber authored
Tested with "J-Link OB RX621-ARM-SWD V1 compiled Nov 4 2014 10:47:22". Change-Id: Ib64c0be407f99df57f058a4498556fd5ab7e9112 Signed-off-by:
Andreas Färber <afaerber@suse.de> Reviewed-on: http://openocd.zylin.com/3170 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
Andreas Färber authored
Tested with Renesas DK-S7G2M v3.0 board. Change-Id: Ia6acaf70271ed4eb7bc4e921552cbd2ff83f6acb Signed-off-by:
Andreas Färber <afaerber@suse.de> Reviewed-on: http://openocd.zylin.com/3169 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
Andreas Färber authored
Tested with Relax Kit for 5V Shields: J-Link Lite-XMC4200 Rev.1 compiled Oct 14 2015 10:14:50 and with Relax Lite Kit: J-Link Lite-XMC4200 Rev.1 compiled Oct 14 2015 10:14:50 Derived from xmc4800-relax.cfg. Change-Id: I4e10fb6ed1f85168634d3b5259d3041ffc6b74d8 Signed-off-by:
Andreas Färber <afaerber@suse.de> Reviewed-on: http://openocd.zylin.com/3130 Tested-by: jenkins Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
Matthew Campbell authored
Change tests when reading from 'value' in sysfs from =='0' to !='1'. This guards against broken sysfs GPIO implementations that return non-zero for high rather than just '1' while still being clean and correct code. Note that sysfs will never output a leading zero even in a very broken implementation as that is covered in gpiolib.c, not the offending driver. Tested against broken Freescale kernel 3.14.38 on i.MX6SL. Change-Id: Id05567bb8504b1babef33d6ee5172bceefeca8b8 Signed-off-by:
Matthew Campbell <mcampbell@izotope.com> Reviewed-on: http://openocd.zylin.com/3121 Tested-by: jenkins Reviewed-by:
Antonio Borneo <borneo.antonio@gmail.com> Reviewed-by:
Spencer Oliver <spen@spen-soft.co.uk>
-
Matthias Welwarsky authored
On JTAG, all reads are pipelined. If you read a register, the result is not delivered inside the request that issued the read, it is delivered in the following request. The current code therefore issues a scan of the RDBUFF register after each read. This adds a superfluous transaction after each read. This patch follows a strategy similar to what SWD already implements. It also leverages that all JTAG reads are pipelined, i.e. the result will be clocked out in the next JTAG data phase, no matter if it's READ or WRITE. Therefore it's never necessary to explicitly read RDBUFF other than for the very last READ before a dap_run(). Change-Id: Ie40b1fef3203f0cdcb503f40dcbd2a68b0f9776c Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3167 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
Matthias Welwarsky authored
Debug initialization blindly selects AP#0 as default, which is the AHB-AP in many cases. This sets the default for target_read/write functions. However, AHB-AP is the wrong choice, because it bypasses caches on read and write and also makes some peripherals inaccessible (e.g. l2 outer caches). This patch explicitely selects the APB-AP (debug_ap) as the default. Change-Id: I13f9e0750186d35dcfc135c8d67d437c5884d9c4 Signed-off-by:
Matthias Welwarsky <matthias@welwarsky.de> Reviewed-on: http://openocd.zylin.com/3113 Tested-by: jenkins Reviewed-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com>
-
Andreas Fritiofson authored
Remove entirely the concept of a "selected" AP that has to be maintained between calls. All the information the DAP ops need are now provided to each call through the AP/DAP pointer. Consolidate the cache of the SELECT fields into one single field caching the entire register. Change-Id: I2e1c93ac5ee8ac38a7d680ca2c660c30093a6b87 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3165 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Move the mandatory dap_ap_select() call into the dap_queue_ap_read/write wrapper. This avoids the need for dap_ap_select() and the notion of a "current" AP within target code. Change-Id: I5cde8f3eef2c662f7458be6f3b3dd44ea693bd74 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3164 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Make dap apsel without arguments show current state instead of changing to AP 0. Change-Id: I75ea10e3e1b8a067f2dc417ec6691dc7ceec1af6 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3163 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
All AP operations should select the AP to use before calling it so there's no point in restoring the previous value afterwards. The explicit call to dap_ap_select() before all AP operations should be moved into dap_queue_ap_read/write() which then would have to take the AP as an argument instead of the DAP. Change-Id: Icacb0c76ef2a5ac36b4d2f26b52ec01a8850286e Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3156 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
It's currently set during target creation but the AP that will be used for the target is not even known. Change-Id: I4502e7eb1fa8d90f746445b8cf8a4c21cb7d519e Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3155 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
The AP for which the TAR/CSW is printed may not be the one that caused the failure. Remove the flawed output entirely. The correct info is printed in mem_ap_read/write anyway. Change-Id: I97580a0662dcf02e80646e45445cdbfc251122d8 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3154 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
All mem_ap_* functions now make sure the SELECT register is updated with the AP number that it's operating on. This shouldn't have to be handled explicitly. Change-Id: Ib193d8930fabb6a25715064355f98258c9580b5d Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3153 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Change-Id: I0ab66b259e929e6ba826ada9cf8e35614df46410 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3152 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
This function does two separate things, powering up the DP and setting up a MEM-AP. But the DP needs to be powered before even searching for a MEM-AP to initialize and targets may have multiple MEM-APs that need initializing. Split the function into dap_dp_init() and mem_ap_init() and change all call sites to use the appropriate one. Change-Id: I92f55e09754a93f3f01dd8e5aa1ffdf60c856126 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3151 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Reduce use of magic numbers and add AXI type MEM-AP detection. Don't try to call dap_rom_display on a non-existent AP. AP identification is unique per designer, so make sure the JEDEC code matches ARM when interpreting the AP type. Change-Id: I8e86b7de61811382afe99bf15094ab71b43f5fdf Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3150 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Change-Id: I8d3e42056aa5828cb917ca578a54b7d53846a150 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3149 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Change-Id: I6b98c3b4486903029e5a0d6d964bd5c48ff55926 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3148 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Change the debug_ap and memory_ap fields of the cortex_a target and the debug_ap field of the cortex_m target to be pointers to the struct adiv5_ap instead of AP numbers in some known DAP. This reduces the dependency on the DAP struct in the targets and enables MEM-AP accesses to take the relevant AP as parameter. Change-Id: I39d7b134d78000564b7eec5bff464adf0ef89147 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3147 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
This required fixing the AP ID parsing in dap_find_ap() to match IHI0031C. The AXI type was added too. Change-Id: I44577a7848df37586e650dce0fb57ac26f5f858c Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3146 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
Change-Id: I76bb9bd800697776a375ab803402780c3c7bea35 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3145 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-
Andreas Fritiofson authored
This will make it possible to reference directly the AP used for debug in the target instance and remove the DAP reference. This will in turn enable getting rid of the need to select an "active" AP in the DAP (using dap apsel). Change-Id: I265846a427c714204f4fd3df3cdb75843686c2d0 Signed-off-by:
Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/3144 Tested-by: jenkins Reviewed-by:
Matthias Welwarsky <matthias@welwarsky.de>
-