Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-04 Thread Øyvind Harboe
On Mon, May 4, 2009 at 3:03 PM, Alan Carvalho de Assis
acas...@gmail.com wrote:
 Hi Zach,

 On 5/1/09, Zach Welch z...@superlucidity.net wrote:
   - Coldfire (suggested by NC)
     - can we draw from the BDM project?  http://bdm.sourceforge.net/


 I think BDM support will be great!

 There is two types of BDM interfaces. The old interface is used on
 some microcontrollers like Coldfire V2 (MCF5272, MCF5282, etc) and
 other (with less wires) used on Coldfire V1 (MCF51JM, etc) and HC(S)
 uC.

How old are these CPUs?

What was the last release date of a CPU with a BDM protocol?

If these are CPUs firmly in the past, perhaps we should ignore them

Do modern Coldfire/PowerPC CPUs use JTAG or BDM?


   - other targets?  (suggestions always welcome)


 Hmm, Blackfin support will be nice as well.

 Regards,

 Alan
 ___
 Openocd-development mailing list
 Openocd-development@lists.berlios.de
 https://lists.berlios.de/mailman/listinfo/openocd-development




-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-04 Thread Alan Carvalho de Assis
Hi Zach,

On 5/1/09, Zach Welch z...@superlucidity.net wrote:
   - Coldfire (suggested by NC)
 - can we draw from the BDM project?  http://bdm.sourceforge.net/


I think BDM support will be great!

There is two types of BDM interfaces. The old interface is used on
some microcontrollers like Coldfire V2 (MCF5272, MCF5282, etc) and
other (with less wires) used on Coldfire V1 (MCF51JM, etc) and HC(S)
uC.

   - other targets?  (suggestions always welcome)


Hmm, Blackfin support will be nice as well.

Regards,

Alan
___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-04 Thread Anders Montonen

On Mon, 4 May 2009, Øyvind Harboe wrote:


On Mon, May 4, 2009 at 3:03 PM, Alan Carvalho de Assis
acas...@gmail.com wrote:

There is two types of BDM interfaces. The old interface is used on
some microcontrollers like Coldfire V2 (MCF5272, MCF5282, etc) and
other (with less wires) used on Coldfire V1 (MCF51JM, etc) and HC(S)
uC.

How old are these CPUs?
What was the last release date of a CPU with a BDM protocol?
If these are CPUs firmly in the past, perhaps we should ignore them


I think the newest ColdFire parts are from last year, I don't 
know about the 8/16-bit MCU lines. They are by no means dead.




Do modern Coldfire/PowerPC CPUs use JTAG or BDM?


The big ColdFire parts use JTAG for boundary scan and BDM for debugging. 
The new small, low-power parts seem to have only the new reduced-pin BDM 
interface.


Regards,
Anders Montonen___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-04 Thread Øyvind Harboe
On Mon, May 4, 2009 at 8:43 PM, Michael Schwingen
rincew...@discworld.dascon.de wrote:
 Øyvind Harboe wrote:
 How old are these CPUs?

 What was the last release date of a CPU with a BDM protocol?

 We used BDM on the MPC85x/MPC86x series, probably about 8-9 years ago now.

 I think the current Freescale PowerPC series use JTAG/COP instead of
 BDM. Support for MPX82xx/MPC83xx would be very interesting for me.
 If these are CPUs firmly in the past, perhaps we should ignore them

 If BDM is MPC8xx only, I agree.
 However, if the current Coldfire CPUs still use BDM (and if it is the
 same BDM variant - I remember two versions: CPU32 and MPC8xx), then
 there might still be merit in supporting this.

 *If* someone really wants to go in that direction, I can donate some
 MPC8xx-based boards.

Are there newer Coldfire CPUs w/JTAG interface?

Perhaps we can ignore the other ones?


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-01 Thread Øyvind Harboe
Single stepping is broken in ARM11 w/parport interface(and
others). I'm working on adding a jtag_add_statemove() fn
that will sit on top of jtag_add_pathmove() that is probably
necessary to implement more robust ARM11 support.


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] The List (of OpenOCD Tasks) for r1587

2009-05-01 Thread Dick Hollenbeck

That function basically exists in the xsvf.c file, so some factoring may 
be possible.

Here is a copy of my current work:


 Single stepping is broken in ARM11 w/parport interface(and
 others). I'm working on adding a jtag_add_statemove() fn
 that will sit on top of jtag_add_pathmove() that is probably
 necessary to implement more robust ARM11 support.


   


/**
 * Function xsvf_add_statemove
 * moves from the current state to the goal \a state. This needs
 * to be handled according to the xsvf spec, which has nothing
 * to do with the JTAG spec or OpenOCD as such.
 *
 * Implemented via jtag_add_pathmove().
 */
static void xsvf_add_statemove(tap_state_t goal_state)
{
tap_state_t moves[8];
tap_state_t cur_state = cmd_queue_cur_state;
int i;

int tms_bits  = tap_get_tms_path(cur_state, goal_state);
inttms_count = tap_get_tms_path_len(cur_state, goal_state);

LOG_DEBUG( cur_state=%s goal_state=%s tms_bits=%02x tms_count=%d,
tap_state_name(cur_state), tap_state_name(goal_state),
tms_bits, tms_count );

assert( (unsigned) tms_count  DIM(moves) );

if (goal_state != TAP_RESETgoal_state==cur_state)
return;

if( cur_state==TAP_RESET )
{
jtag_add_tlr();
return;
}


for (i=0;   itms_count;   i++, tms_bits=1)
{
bool bit = tms_bits  1;

cur_state = tap_state_transition(cur_state, bit);
moves[i] = cur_state;
}

jtag_add_pathmove(tms_count, moves);
}


___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development