Zach,

> CC: Openocd-Dev
> Onderwerp: Re: [Openocd-development] my tech proposal
> 
> On Wed, 2009-04-22 at 10:35 +0200, Nico Coesel wrote:
> > Zach,
> > There are a few things missing on your list which I think 
> are important:
> > 
> > - Coldfire support (which is basically an enhanced 68000 
> core) would 
> > be nice. There is no open source solution out there to program 
> > Coldfire controllers which is a shame because the Coldfire 
> controllers 
> > are actually quite nice and reasonably priced. Freescale 
> thinks their 
> > customers should use Codewarrior or take their business 
> somewhere else.
> > - Completing ARM Cortex A8 support.
> 
> How much of the Coldfire support would need to be reverse-engineered?
> With specifications and hardware, half of the battle will 
> have already been won, but the lack of an open source 
> solution makes me guess unencumbered references are 
> unavailable.  Posting links to references would help plant 
> seed for others to pick this up and run with it.

I looked at the BDM project Xiaofan posted. It seems like a good
starting point. It also has routines for external flash. Maybe its worth
to look into it to get some fresh ideas on the cfi implementation as
well. I used to have a Coldfire board but we returned it because of the
lack of proper hardware programming tools (Codesourcery has a complete
GCC kit for Coldfire).

> > I see CFI is on your list as well. I have a slightly 
> improved version 
> > of cfi.c which some speed enhancements. Shall I mail it to 
> you to have 
> > a look at it? I agree the cfi code is not very clean; a lot of code 
> > which basically does the same is duplicated.  Also the bus width / 
> > chip width handling is not fully implemented yet. IMHO 
> vendor specific 
> > code could be just a bunch of functions called through function 
> > pointers from cfi.c.
> 
> Post code to the list, but we are on the same wavelength.  Completely.

Okay, I've attached a patch to cfi.c to this e-mail. Note this is a work
in progress. It works for my situation though (Spansion flash). The
major change I made is adding cfi_spansion_wait_write and calling
keep_alive to avoid the usleep when calling alive_sleep(1). Sleeping the
CPU during erase is fine, but not during programming. This still needs
masking (bus width) and perhaps checking endianess.

Nico Coesel

Attachment: cfi.c.speedup.patch
Description: cfi.c.speedup.patch

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

Reply via email to