**** BEGIN LOGGING AT Tue Feb 24 02:59:57 2009 Feb 24 03:57:48 rje`cf: I am looking in the at91rm9200-dk.cfg in the trunk version of openocd... Feb 24 03:58:00 # This is for the "at91rm9200-DK" (not the EK) eval board. Feb 24 03:58:00 # Feb 24 03:58:00 # The two are probably very simular.... I have DK... Feb 24 03:58:00 # Feb 24 03:59:42 If you aren't very familiar with trunk openocd... there is one gotcha... it's a moving target. Ie, the howto's out on the net describe how to get the old openocd to work. Doesn't apply with trunk... Feb 24 04:55:01 Hmmm... it seems drath doesn't show in here for some time? Anyone know what's up? Feb 24 04:55:34 Has he washed his hands of it? :) Feb 24 08:55:46 good day, people Feb 24 09:00:04 does anybody know how to get around the "Warn : BUG: keep_alive() was not invoked in the 1000ms timelimit. GDB alive packet not sent!" messages? My GDB connection gets dropped when I download large files over a pp wiggler... Feb 24 18:49:02 dirk2: hi Feb 24 18:49:58 can you post your findings on the beagle mailing list? Feb 24 18:54:36 also I am not sure tje openocd people are aware of the current status Feb 24 19:02:17 keesj: Hi! I think openocd list was on CC at my weekend mails. Let me check ... Feb 24 19:03:35 keesj: Yes, OpenOCD people got it: https://lists.berlios.de/pipermail/openocd-development/2009-February/004745.html Feb 24 19:04:11 the easy thing now would be to start removing code untill it doesn't work Feb 24 19:04:35 so try without the ir-pause and dr-pause end states for example Feb 24 19:04:48 keesj: Ah, I just was about to ask if you have any ideas regarding the topics 1-3 Feb 24 19:04:59 keesj: Seems you already have an idea :) Feb 24 19:05:24 and the reset bit is also very easy to test Feb 24 19:06:36 I looked at https://lists.berlios.de/pipermail/openocd-development/2009-February/004625.html you mentioned in the mail Feb 24 19:06:53 how is this table to be read? Feb 24 19:09:58 and do we have already the patch (docu?) mentioned in that linked mail somewhere? Feb 24 19:26:52 dirk2: greetings, nice work on the urjtag stuff Feb 24 19:28:22 prpplague: hi! now it's time to have a look to OpenOCD :) Feb 24 19:29:18 prpplague: unfortunately, it is less hackable as urjtag. Seems I have to learn a little ;) Feb 24 19:29:23 dirk2: i'd like to give it a try with davinci as well Feb 24 19:29:36 prpplague: OpenOCD or urjtag? Feb 24 19:29:48 the urjtag stuff you did Feb 24 19:29:58 the davinci has the icepick as well Feb 24 19:30:01 but it is arm9 Feb 24 19:31:17 prpplague: the main thing with urjtag I still missed is what it might be good for if it is working. I just used it as easy test environment Feb 24 19:31:39 dirk2: yea i figured as much Feb 24 19:32:04 dirk2: the main item i suspect people want is an easy to program flash/bootloader stuff , and then debugging Feb 24 19:33:08 prpplague: hmm, can urjtag be used for debugging? For instance with gdb? Feb 24 19:33:29 dirk2: don't know, i've not used urjtag before Feb 24 19:33:51 prpplague: ;) Same to me. Now I focus on OpenOCD Feb 24 19:35:17 * dirk2 reads OpenOCD's jtag.c at the moment Feb 24 19:38:27 prpplague: Do you have any experience with e.g. debugging via Eclipse using gdb? Flyswatter -> OpenOCD -> gdb -> Eclipse? Or any other GUI for gdb? Feb 24 19:38:43 sorry no, i tend to use command line Feb 24 19:40:27 me too, but there are some more people who like to have GUI for debugging, e.g. setting breakpoints by double click on a line. Even if they use command line for other stuff, GUI for debugging is more comfortable than gdb command line. Feb 24 19:41:23 Would be nice to have Beagle -> Flyswatter -> OpenOCD -> gdb -> Eclipse for these people Feb 24 19:41:42 Not sure if this is possible, though Feb 24 19:44:09 dirk2: yea from what i understand, Ecplipse is suppose to have support for openocd/gdb in the roadmap Feb 24 19:45:19 prpplague: If you have any link I can read more, let me know. Feb 24 19:45:41 dirk2: sorry, just rumor/gossip i've heard in the last 6 months Feb 24 19:47:09 prpplague: Quick look in Google gives: http://www.makingthings.com/documentation/tutorial/debug-with-openocd/tutorial-all-pages Feb 24 19:49:08 gdb+ eclipse does work alright. so does ddd of course Feb 24 19:49:37 I try to use cgdb for the moment but still learing it Feb 24 19:52:04 hmm, anyway, let's get OpenOCD to work in the next step Feb 24 20:00:56 keesj: just for my information (to know if I can bother you ;) ): Do you have some time to help with OpenOCD? Feb 24 20:07:05 dirk2: sure Feb 24 20:07:14 * dirk2 has still no idea what these hard coded hex values in tap_move[][] are good for :( https://lists.berlios.de/pipermail/openocd-development/2009-February/004625.html Feb 24 20:07:20 keesj: great! Feb 24 20:10:40 it's to perform moved from state A to start B Feb 24 20:10:46 just noticed register_command(cmd_ctx, NULL, "runtest", handle_runtest_command, COMMAND_EXEC, "move to Run-Test/Idle, and execute "); Feb 24 20:10:56 (in jtag.c) Feb 24 20:12:28 dirk2: but the tap_move code has gone Feb 24 20:13:02 keesj: the array is now called tms_seqs (at the bottom of jtag.c) Feb 24 20:13:28 line ~3000 Feb 24 20:13:38 the basic idea was to perform a set of clock pulses with tms following the given pattern Feb 24 20:14:31 so the array is saying if you are in runtest idle and want to go to shift ir you need to follow the next 6 steps Feb 24 20:16:57 so for example if you want to move from reset to idle what you need to do is to perform on clock pulse with tms being low Feb 24 20:17:01 see http://www.inaccessnetworks.com/projects/ianjtag/jtag-intro/jtag-state-machine-large.png Feb 24 20:17:26 keesj: yes, I know the state machine. Feb 24 20:17:30 keesj: one moment, phone Feb 24 20:18:13 what would be enough but from reading that code what will happen is that it would run 7 times 0 instead Feb 24 20:18:30 If we take the first line Feb 24 20:18:32 /* RESET IDLE DRSHIFT DRPAUSE IRSHIFT IRPAUSE */ { 0x7f, 0x00, 0x17, 0x0a, 0x1b, 0x16 }, /* RESET */ Feb 24 20:20:26 so from dr-shift to IDLE it would to 0x31 and this is 110001 Feb 24 20:21:56 hmm that doesn't make sense either Feb 24 20:22:47 when I look at that sequence it would end in select DR Feb 24 20:23:19 but this state transition doesn't make sense at all. this becasue of the way the data is shifted out Feb 24 20:23:56 dirk2 / keesj sorry i'm not much help right now, still trying to finalize a bunch of work for the M8050 Feb 24 20:24:28 aahh, you have to read the 0xZZ values as binary TMS values! That is the trick I missed! Feb 24 20:24:29 if you need to shit 8 bits you should shift 7 bits during the "shift-dr" state and the last bit is sent while the TMS is high and you edit the shift state to for example exit DR Feb 24 20:26:04 prpplague: NO Feb 24 20:26:07 NP Feb 24 20:26:22 mmh, the urjtag interface was easier to understand Feb 24 20:26:43 indeed Feb 24 20:26:53 imho openocd has become seriously bloated Feb 24 20:27:04 with all these hooks and scripts and configs Feb 24 20:28:55 for the 0xZZ values in tms_seqs, who specifies how many clocks have to be done? always 7 or 8 for every transition? Feb 24 20:31:44 always 7 Feb 24 20:31:56 well let me check again Feb 24 20:39:19 that's it for today ... Feb 24 20:40:50 hmm, yes, the comment says "support other than 7 clocks", so it should be 7 clocks. But where is this configured? Or: What would I have to change to make only e.g. 5 clocks? Feb 24 20:43:33 this is that cscope has to say about this http://www.paste-it.net/raw/public/w3de701/ Feb 24 20:46:20 mmh, they do Feb 24 20:46:29 BUFFER_ADD = 0x4b; Feb 24 20:46:39 BUFFER_ADD = 0x6; /* scan 7 bits */ Feb 24 20:46:49 BUFFER_ADD = tap_get_tms_path(tap_get_state(), TAP_IRSHIFT); Feb 24 20:47:28 This looks similar to what you had in your recent mail: Feb 24 20:47:30 ft2232_buffer.append(0x4b); Feb 24 20:47:39 t2232_buffer.append(bits-1); Feb 24 20:47:49 ft2232_buffer.append(tms); Feb 24 20:48:15 so it seems this are "direct commands" for ft2232 Feb 24 20:48:42 seems I got now a basic idea how it works :) Thanks! Feb 24 20:49:20 Will have a look if commands like "0x4b" are documented somewhere in ft2232 manual Feb 24 20:50:10 keesj: Yes, Holger's function can be really useful! Feb 24 20:56:54 bbl **** ENDING LOGGING AT Wed Feb 25 02:59:57 2009