[ECOS] Changing PLL register was: Configuration for at91sam7se-ek

Davies, Greg Greg.Davies@Ultra-UEMS.com
Tue Jun 17 13:20:00 GMT 2008

I've found the cause of all the strange problems I've had 
that I asked you guys for help with, and I want to share, 
mostly for newbies (like myself) to find in the archives. 
This includes all my issues in the "Changing flash wait state 
on SAM7" thread. 

The cause of all of it was that there was no PLL filter. They 
tell me that the code shouldn't have been able to run at all 
without it, but it did, and caused exactly the kinds of 
problems an erratic clock might cause. Thanks again to 
everyone who tried to help. 

Below is what I accepted as a solution at the time (it was working).

> -----Original Message-----
> From: ecos-discuss-owner@ecos.sourceware.org
> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf 
Of Davies, 
> Greg
> Sent: Thursday, February 07, 2008 3:52 PM
> To: ecos-discuss@sources.redhat.com
> Subject: [ECOS] Changing PLL register was: Configuration for 
> at91sam7se-ek
> So my problem was only partly to do with ecos, and had little to 
> nothing to do with the configuration. The problem was that the PLL 
> settings in the init section of my BDI2000 were different than the 
> ones I had set in eCos. That's where I got
> 72 and 14 in the first place, from the default BDI 
configuration file. 
> I have everything (BDI init section and
> ecos) set to the default ecos template values of 24 for the divider 
> and 125 for the multiplier.
> Something odd is happening in the Clock generator PLL 
register though. 
> I do a "reset halt" on the BDI, then check the membory af the PLL 
> register (0xFFFFFC2C). It shows the values that were set by the BDI 
> from the init section when I did the "reset halt" (divider:24, 
> multiplier:125). When I give it a "go" (like continue in 
gdb) and the 
> a subsequent "halt" (like a break in gdb) and check the register 
> again, it's changed to values similar to what I used to have there 
> (divider:14, multiplier:71). I'm not sure where it's getting these 
> numbers, since I've reconfigured, recompiled and reprogrammed the 
> board with the new values for the pll register in ecos.
> If no one has an answer for this, I don't mind, everything 
is working 
> fine (better than before). It just seems odd.
> -----Original Message-----
> From: ecos-discuss-owner@ecos.sourceware.org
> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf 
Of Davies, 
> Greg
> Sent: Wednesday, February 06, 2008 5:03 PM
> To: ecos-discuss@sources.redhat.com
> Subject: [ECOS] Configuration for at91sam7se-ek
> Hi,
>     I've been using ecos on an at91sam7se-ek board, using 
the drivers 
> and template for the at91sam7s-ek board. It's been working 
okay until 
> today when it stopped working altogether.
> It's a problem I got around once before, but my old configurations 
> don't work anymore, and I don't remember how I got it to 
work in the 
> first place.
> When I force a break with the debugger the program is invariably on 
> one of the first three lines of wait_pmc_sr_2 in 
> cyg/hal/hal_platform_setup.h. I thought what got it working 
before was 
> setting the pll multiplier to 72 and the divider to 14, 
values that I 
> got from a sample project that comes with the eval kit, but these 
> values don't seem to work anymore.
> Does this problem sound familiar to anyone? If it doesn't 
does anyone 
> have a configuration file that works for the at91sam7se-ek 
board and 
> the at91sam7s-ek hal code that's currently in the repository?

Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

More information about the Ecos-discuss mailing list