00:00.46 | johnrw | rje`cf: This will show what I mean... http://wiki.openwrt.org/OpenWrtDocs/Hardware/USRobotics/USR8200#head-70d1e40ffa2af6ad9a8e332b6302470ae433bc84 |
00:03.40 | johnrw | flash initialization starts in begin xscale-olimex-ipx42x.actions but remember that is for OpenOCD rev 728. That will not work on trunk. |
00:05.56 | johnrw | Hmmm, actually the flash init is quite small... |
00:06.03 | johnrw | #setup expansion bus CS#0, write enable, @0x50000000 |
00:06.03 | johnrw | #mww 0xc4000000 0xbcd23c42 |
00:06.03 | johnrw | mww 0xc4000000 0xbd113c42 |
00:19.29 | rje`cf | johnrw: that is for external flash though, i'm looking for writing to the internal flash on the at91sam9xe. i don't think openocd has any drivers for that |
00:26.47 | johnrw | http://www.atmel.com/dyn/products/app_notes.asp?family_id=605 only mentions openocd once... Using Open Source Tools for AT91SAM7 so maybe you're right. |
00:28.14 | *** join/#openjtag ChanServ (ChanServ@services.) |
00:28.14 | *** mode/#openjtag [+o ChanServ] by irc.freenode.net |
00:29.46 | rje`cf | wishes he was wrong |
00:29.52 | johnrw | http://www.freertos.org/ARM9-AT91SAM9-RTOS-Demo.html might interest you... (ie... it comes up 1st on a google) |
02:53.52 | *** join/#openjtag rje`mac (n=rje`mac@75.150.1.254) |
03:52.58 | *** join/#openjtag rje`mac (n=rje`mac@75.150.1.254) |
03:57.48 | johnrw | rje`cf: I am looking in the at91rm9200-dk.cfg in the trunk version of openocd... |
03:58.00 | johnrw | # This is for the "at91rm9200-DK" (not the EK) eval board. |
03:58.00 | johnrw | # |
03:58.00 | johnrw | # The two are probably very simular.... I have DK... |
03:58.00 | johnrw | # |
03:59.42 | johnrw | 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... |
04:55.00 | johnrw | Hmmm... it seems drath doesn't show in here for some time? Anyone know what's up? |
04:55.33 | johnrw | Has he washed his hands of it? :) |
05:09.27 | *** join/#openjtag sesters (n=sesters@76-191-131-184.dsl.static.sonic.net) |
05:33.33 | *** part/#openjtag sesters (n=sesters@76-191-131-184.dsl.static.sonic.net) |
06:29.19 | *** join/#openjtag rje`mac (n=rje`mac@c-67-185-128-239.hsd1.wa.comcast.net) |
07:38.35 | *** join/#openjtag roxfan2 (n=dunno@69.56-244-81.adsl-dyn.isp.belgacom.be) |
08:54.53 | *** join/#openjtag frix (n=frix@dsl-240-189-101.telkomadsl.co.za) |
08:55.46 | frix_ | good day, people |
09:00.04 | frix_ | 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... |
09:12.36 | *** join/#openjtag pleemans (n=toi@d54C2AAB7.access.telenet.be) |
10:54.29 | *** join/#openjtag ChanServ (ChanServ@services.) |
10:54.30 | *** mode/#openjtag [+o ChanServ] by irc.freenode.net |
11:05.28 | *** join/#openjtag ChanServ (ChanServ@services.) |
11:05.28 | *** mode/#openjtag [+o ChanServ] by irc.freenode.net |
12:10.13 | *** join/#openjtag pirho (i=pirho@gateway/gpg-tor/key-0x2CEEC9CB) |
13:03.51 | *** join/#openjtag sesters (n=sesters@76-191-131-184.dsl.static.sonic.net) |
15:43.13 | *** join/#openjtag prpplague (n=dave@mail.americanmicrosystems.com) |
16:23.37 | *** join/#openjtag pirho (i=pirho@gateway/gpg-tor/key-0x2CEEC9CB) |
17:03.32 | *** join/#openjtag dirk2 (n=dirk@p5B040C6F.dip0.t-ipconnect.de) |
17:09.59 | *** join/#openjtag ChanServ (ChanServ@services.) |
17:09.59 | *** mode/#openjtag [+o ChanServ] by irc.freenode.net |
18:48.58 | *** join/#openjtag L_Deluxe (n=lou@c-68-53-134-58.hsd1.tn.comcast.net) |
18:49.02 | keesj | dirk2: hi |
18:49.58 | keesj | can you post your findings on the beagle mailing list? |
18:54.37 | keesj | also I am not sure tje openocd people are aware of the current status |
19:02.17 | dirk2 | keesj: Hi! I think openocd list was on CC at my weekend mails. Let me check ... |
19:03.35 | dirk2 | keesj: Yes, OpenOCD people got it: https://lists.berlios.de/pipermail/openocd-development/2009-February/004745.html |
19:04.11 | keesj | the easy thing now would be to start removing code untill it doesn't work |
19:04.35 | keesj | so try without the ir-pause and dr-pause end states for example |
19:04.48 | dirk2 | keesj: Ah, I just was about to ask if you have any ideas regarding the topics 1-3 |
19:04.59 | dirk2 | keesj: Seems you already have an idea :) |
19:05.24 | keesj | and the reset bit is also very easy to test |
19:06.36 | dirk2 | I looked at https://lists.berlios.de/pipermail/openocd-development/2009-February/004625.html you mentioned in the mail |
19:06.53 | dirk2 | how is this table to be read? |
19:09.58 | dirk2 | and do we have already the patch (docu?) mentioned in that linked mail somewhere? |
19:26.52 | prpplague | dirk2: greetings, nice work on the urjtag stuff |
19:28.22 | dirk2 | prpplague: hi! now it's time to have a look to OpenOCD :) |
19:29.18 | dirk2 | prpplague: unfortunately, it is less hackable as urjtag. Seems I have to learn a little ;) |
19:29.23 | prpplague | dirk2: i'd like to give it a try with davinci as well |
19:29.36 | dirk2 | prpplague: OpenOCD or urjtag? |
19:29.47 | prpplague | the urjtag stuff you did |
19:29.58 | prpplague | the davinci has the icepick as well |
19:30.01 | prpplague | but it is arm9 |
19:31.17 | dirk2 | 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 |
19:31.39 | prpplague | dirk2: yea i figured as much |
19:32.04 | prpplague | dirk2: the main item i suspect people want is an easy to program flash/bootloader stuff , and then debugging |
19:33.08 | dirk2 | prpplague: hmm, can urjtag be used for debugging? For instance with gdb? |
19:33.29 | prpplague | dirk2: don't know, i've not used urjtag before |
19:33.51 | dirk2 | prpplague: ;) Same to me. Now I focus on OpenOCD |
19:35.17 | dirk2 | reads OpenOCD's jtag.c at the moment |
19:38.27 | dirk2 | prpplague: Do you have any experience with e.g. debugging via Eclipse using gdb? Flyswatter -> OpenOCD -> gdb -> Eclipse? Or any other GUI for gdb? |
19:38.43 | prpplague | sorry no, i tend to use command line |
19:40.27 | dirk2 | 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. |
19:41.23 | dirk2 | Would be nice to have Beagle -> Flyswatter -> OpenOCD -> gdb -> Eclipse for these people |
19:41.42 | dirk2 | Not sure if this is possible, though |
19:44.08 | prpplague | dirk2: yea from what i understand, Ecplipse is suppose to have support for openocd/gdb in the roadmap |
19:45.18 | dirk2 | prpplague: If you have any link I can read more, let me know. |
19:45.41 | prpplague | dirk2: sorry, just rumor/gossip i've heard in the last 6 months |
19:47.09 | dirk2 | prpplague: Quick look in Google gives: http://www.makingthings.com/documentation/tutorial/debug-with-openocd/tutorial-all-pages |
19:49.08 | keesj | gdb+ eclipse does work alright. so does ddd of course |
19:49.37 | keesj | I try to use cgdb for the moment but still learing it |
19:52.04 | dirk2 | hmm, anyway, let's get OpenOCD to work in the next step |
20:00.56 | dirk2 | keesj: just for my information (to know if I can bother you ;) ): Do you have some time to help with OpenOCD? |
20:07.05 | keesj | dirk2: sure |
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 |
20:07.20 | dirk2 | keesj: great! |
20:10.40 | keesj | it's to perform moved from state A to start B |
20:10.46 | keesj | just noticed register_command(cmd_ctx, NULL, "runtest", handle_runtest_command, COMMAND_EXEC, "move to Run-Test/Idle, and execute <num_cycles>"); |
20:10.56 | keesj | (in jtag.c) |
20:12.28 | keesj | dirk2: but the tap_move code has gone |
20:13.02 | dirk2 | keesj: the array is now called tms_seqs (at the bottom of jtag.c) |
20:13.28 | dirk2 | line ~3000 |
20:13.38 | keesj | the basic idea was to perform a set of clock pulses with tms following the given pattern |
20:14.31 | keesj | 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 |
20:16.57 | keesj | 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 |
20:17.01 | keesj | see http://www.inaccessnetworks.com/projects/ianjtag/jtag-intro/jtag-state-machine-large.png |
20:17.26 | dirk2 | keesj: yes, I know the state machine. |
20:17.30 | dirk2 | keesj: one moment, phone |
20:18.13 | keesj | what would be enough but from reading that code what will happen is that it would run 7 times 0 instead |
20:18.30 | keesj | If we take the first line |
20:18.32 | keesj | <PROTECTED> |
20:20.26 | keesj | so from dr-shift to IDLE it would to 0x31 and this is 110001 |
20:21.56 | keesj | hmm that doesn't make sense either |
20:22.47 | keesj | when I look at that sequence it would end in select DR |
20:23.19 | keesj | but this state transition doesn't make sense at all. this becasue of the way the data is shifted out |
20:23.56 | prpplague | dirk2 / keesj sorry i'm not much help right now, still trying to finalize a bunch of work for the M8050 |
20:24.28 | dirk2 | aahh, you have to read the 0xZZ values as binary TMS values! That is the trick I missed! |
20:24.29 | keesj | 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 |
20:26.04 | keesj | prpplague: NO |
20:26.07 | keesj | NP |
20:26.22 | dirk2 | mmh, the urjtag interface was easier to understand |
20:26.42 | keesj | indeed |
20:26.53 | prpplague | imho openocd has become seriously bloated |
20:27.03 | prpplague | with all these hooks and scripts and configs |
20:28.55 | dirk2 | for the 0xZZ values in tms_seqs, who specifies how many clocks have to be done? always 7 or 8 for every transition? |
20:31.44 | keesj | always 7 |
20:31.55 | keesj | well let me check again |
20:39.19 | keesj | that's it for today ... |
20:40.50 | dirk2 | 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? |
20:43.32 | keesj | this is that cscope has to say about this http://www.paste-it.net/raw/public/w3de701/ |
20:46.20 | dirk2 | mmh, they do |
20:46.29 | dirk2 | BUFFER_ADD = 0x4b; |
20:46.39 | dirk2 | BUFFER_ADD = 0x6; /* scan 7 bits */ |
20:46.49 | dirk2 | BUFFER_ADD = tap_get_tms_path(tap_get_state(), TAP_IRSHIFT); |
20:47.28 | dirk2 | This looks similar to what you had in your recent mail: |
20:47.30 | dirk2 | ft2232_buffer.append(0x4b); |
20:47.39 | dirk2 | t2232_buffer.append(bits-1); |
20:47.49 | dirk2 | ft2232_buffer.append(tms); |
20:48.15 | dirk2 | so it seems this are "direct commands" for ft2232 |
20:48.42 | dirk2 | seems I got now a basic idea how it works :) Thanks! |
20:49.20 | dirk2 | Will have a look if commands like "0x4b" are documented somewhere in ft2232 manual |
20:50.10 | dirk2 | keesj: Yes, Holger's function can be really useful! |
20:56.54 | dirk2 | bbl |
21:18.58 | *** join/#openjtag L_Deluxe (n=lou@c-68-53-134-58.hsd1.tn.comcast.net) |
23:02.08 | *** join/#openjtag pirho (i=pirho@gateway/gpg-tor/key-0x2CEEC9CB) |
23:09.31 | *** join/#openjtag koobe (n=koobe@83.150.95.26) |