public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] Frequency scaling on iPaq
@ 2001-06-04 16:22 Cristiano Ligieri Pereira
  2001-06-05  9:40 ` Nicolas Pitre
  0 siblings, 1 reply; 9+ messages in thread
From: Cristiano Ligieri Pereira @ 2001-06-04 16:22 UTC (permalink / raw)
  To: ecos-discuss

Hi everybody,

I'm a little bit confused regarding how to scale the frequency on the
StrongARM SA1110 compaq ipaq platform. I'm trying to scale processor
frequency simply writting into the appropriate memory mapped register
(PPCR - Power Manager PLL Configuration Register). The values to be
written and the address of the register are described in the file
cyg/hal/hal_sa11x0.h (SA11X0_PWR_MGR_PLL_CONFIG is the register and the
values are SA11X0_CLOCK_SPEED_59_0_MHz, SA11X0_CLOCK_SPEED_73_7_MHz,
etc...).

The default processor operation seems to be at 206.4Mhz. If I try to scale
it down to 162.2 it seems to work fine but if I go down one more
level, which is 147.5, the system crashes. Looking at the file cpu-scale.c
of ipaqlinux source code I noticed that DRAM timing is related to the core
clock frequency and then DRAM timing properties have to be adjusted along
with the processor core frequency, otherwise DRAM becomes unusable and the
kernel crashes (that's is what is described in the source code). Or
alternatively the code responsible to scale the frequency has to be
executed at the ROM (Flash) memory.

Looking at the Intel StrongARM SA-1110 Microprocessor Developer's Manual
it is also described that the DRAM timing depends on the processor core
frequency.

I believe the same thing is happening with eCos/ipaq package since I'm
executing the code from the DRAM memory and I'm not adjusting any DRAM
timing parameter. Have anyone tried the same thing? Am I saying something
wrong? Did anyone have the same problem?

Thanks,
Cristiano.

------------------------------------------------------------ 
Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-04 16:22 [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
@ 2001-06-05  9:40 ` Nicolas Pitre
  2001-06-05 10:10   ` [ECOS] Config Tool Under Linux Carlos Camargo
  2001-06-05 10:20   ` [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
  0 siblings, 2 replies; 9+ messages in thread
From: Nicolas Pitre @ 2001-06-05  9:40 UTC (permalink / raw)
  To: Cristiano Ligieri Pereira; +Cc: ecos-discuss

You are asking questions for which you already found all the answers
yourself.  What do you want exactly?


On Mon, 4 Jun 2001, Cristiano Ligieri Pereira wrote:

>
> Hi everybody,
>
> I'm a little bit confused regarding how to scale the frequency on the
> StrongARM SA1110 compaq ipaq platform. I'm trying to scale processor
> frequency simply writting into the appropriate memory mapped register
> (PPCR - Power Manager PLL Configuration Register). The values to be
> written and the address of the register are described in the file
> cyg/hal/hal_sa11x0.h (SA11X0_PWR_MGR_PLL_CONFIG is the register and the
> values are SA11X0_CLOCK_SPEED_59_0_MHz, SA11X0_CLOCK_SPEED_73_7_MHz,
> etc...).
>
> The default processor operation seems to be at 206.4Mhz. If I try to scale
> it down to 162.2 it seems to work fine but if I go down one more
> level, which is 147.5, the system crashes. Looking at the file cpu-scale.c
> of ipaqlinux source code I noticed that DRAM timing is related to the core
> clock frequency and then DRAM timing properties have to be adjusted along
> with the processor core frequency, otherwise DRAM becomes unusable and the
> kernel crashes (that's is what is described in the source code). Or
> alternatively the code responsible to scale the frequency has to be
> executed at the ROM (Flash) memory.
>
> Looking at the Intel StrongARM SA-1110 Microprocessor Developer's Manual
> it is also described that the DRAM timing depends on the processor core
> frequency.
>
> I believe the same thing is happening with eCos/ipaq package since I'm
> executing the code from the DRAM memory and I'm not adjusting any DRAM
> timing parameter. Have anyone tried the same thing? Am I saying something
> wrong? Did anyone have the same problem?
>
> Thanks,
> Cristiano.
>
> ------------------------------------------------------------
> Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira
>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ECOS] Config Tool Under Linux
  2001-06-05  9:40 ` Nicolas Pitre
@ 2001-06-05 10:10   ` Carlos Camargo
  2001-06-07  3:35     ` Julian Smart
  2001-06-05 10:20   ` [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
  1 sibling, 1 reply; 9+ messages in thread
From: Carlos Camargo @ 2001-06-05 10:10 UTC (permalink / raw)
  To: Nicolas Pitre, Cristiano Ligieri Pereira; +Cc: ecos-discuss

Hi, i try to install configtool under linux, but i
don`t understand the diference betwen release and
debug option.

When i execute:

make -f $CONFIGTOOLDIR/Makefile WXDIR=$WXDIR
ECOSDIR=$ECOSDIR LEVEL=debug full

previously i define WXDIR ECOSDIR and CONFIGTOOLDIR


The following mesages appears:

checking for Tcl installation... configure: error:
unabe to locate Tcl config file tclConfig.sh

but, tclConfig.sh exist in my computer in /usr/lib, i
can fix a enviroment variable to fix it???


Can help me..

Thanks

Carlos Camargo


__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-05  9:40 ` Nicolas Pitre
  2001-06-05 10:10   ` [ECOS] Config Tool Under Linux Carlos Camargo
@ 2001-06-05 10:20   ` Cristiano Ligieri Pereira
  2001-06-05 10:53     ` Nicolas Pitre
  1 sibling, 1 reply; 9+ messages in thread
From: Cristiano Ligieri Pereira @ 2001-06-05 10:20 UTC (permalink / raw)
  To: Nicolas Pitre; +Cc: ecos-discuss

I want to know if anyone else had the same problem and whether the
solution was as I have just described.

Cristiano.

------------------------------------------------------------
Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira

On Tue, 5 Jun 2001, Nicolas Pitre wrote:

> 
> You are asking questions for which you already found all the answers
> yourself.  What do you want exactly?
> 
> 
> On Mon, 4 Jun 2001, Cristiano Ligieri Pereira wrote:
> 
> >
> > Hi everybody,
> >
> > I'm a little bit confused regarding how to scale the frequency on the
> > StrongARM SA1110 compaq ipaq platform. I'm trying to scale processor
> > frequency simply writting into the appropriate memory mapped register
> > (PPCR - Power Manager PLL Configuration Register). The values to be
> > written and the address of the register are described in the file
> > cyg/hal/hal_sa11x0.h (SA11X0_PWR_MGR_PLL_CONFIG is the register and the
> > values are SA11X0_CLOCK_SPEED_59_0_MHz, SA11X0_CLOCK_SPEED_73_7_MHz,
> > etc...).
> >
> > The default processor operation seems to be at 206.4Mhz. If I try to scale
> > it down to 162.2 it seems to work fine but if I go down one more
> > level, which is 147.5, the system crashes. Looking at the file cpu-scale.c
> > of ipaqlinux source code I noticed that DRAM timing is related to the core
> > clock frequency and then DRAM timing properties have to be adjusted along
> > with the processor core frequency, otherwise DRAM becomes unusable and the
> > kernel crashes (that's is what is described in the source code). Or
> > alternatively the code responsible to scale the frequency has to be
> > executed at the ROM (Flash) memory.
> >
> > Looking at the Intel StrongARM SA-1110 Microprocessor Developer's Manual
> > it is also described that the DRAM timing depends on the processor core
> > frequency.
> >
> > I believe the same thing is happening with eCos/ipaq package since I'm
> > executing the code from the DRAM memory and I'm not adjusting any DRAM
> > timing parameter. Have anyone tried the same thing? Am I saying something
> > wrong? Did anyone have the same problem?
> >
> > Thanks,
> > Cristiano.
> >
> > ------------------------------------------------------------
> > Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira
> >
> >
> 
> 

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-05 10:20   ` [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
@ 2001-06-05 10:53     ` Nicolas Pitre
  2001-06-06 14:57       ` Cristiano Ligieri Pereira
  0 siblings, 1 reply; 9+ messages in thread
From: Nicolas Pitre @ 2001-06-05 10:53 UTC (permalink / raw)
  To: Cristiano Ligieri Pereira; +Cc: ecos-discuss

On Tue, 5 Jun 2001, Cristiano Ligieri Pereira wrote:

>
> I want to know if anyone else had the same problem and whether the
> solution was as I have just described.

We had that problem under Linux and the solution you described is correct.
Look at the Linux code for reference.  It works fine on iPAQ.

Note that changing the PLL must be done  for long term power saving.  Since
the PLL requires quite a delay to stabilize when it is changed you can't use
CPU speed reduction for things like the idle loop.


Nicolas

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-05 10:53     ` Nicolas Pitre
@ 2001-06-06 14:57       ` Cristiano Ligieri Pereira
  2001-06-06 15:16         ` Cristiano Ligieri Pereira
  2001-06-06 16:27         ` Nicolas Pitre
  0 siblings, 2 replies; 9+ messages in thread
From: Cristiano Ligieri Pereira @ 2001-06-06 14:57 UTC (permalink / raw)
  To: Nicolas Pitre; +Cc: ecos-discuss

have you tried it on eCos? I'm doing exacly the same things that are done
in the change_clock_speed() function execpt the function call to
recalibrate_delay(void) since it deals with linux global variables.

Now the system frezzes and the LCD display shows nothing when I try to    
scale lower than 162Mhz. Should I calibrate the FLASH timings as 
well? Although it's not done in the linux source code.

Thanks,
Cristiano.


------------------------------------------------------------
Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira

On Tue, 5 Jun 2001, Nicolas Pitre wrote:
> 
> We had that problem under Linux and the solution you described is correct.
> Look at the Linux code for reference.  It works fine on iPAQ.
> 
> Note that changing the PLL must be done  for long term power saving.  Since
> the PLL requires quite a delay to stabilize when it is changed you can't use
> CPU speed reduction for things like the idle loop.
> 
> 
> Nicolas
> 
> 

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-06 14:57       ` Cristiano Ligieri Pereira
@ 2001-06-06 15:16         ` Cristiano Ligieri Pereira
  2001-06-06 16:27         ` Nicolas Pitre
  1 sibling, 0 replies; 9+ messages in thread
From: Cristiano Ligieri Pereira @ 2001-06-06 15:16 UTC (permalink / raw)
  To: Nicolas Pitre; +Cc: ecos-discuss

I'm talking about the cpu-scale.c linux file, which is the one responsible
to scale the frequency.

------------------------------------------------------------
Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira

On Wed, 6 Jun 2001, Cristiano Ligieri Pereira wrote:

> 
> have you tried it on eCos? I'm doing exacly the same things that are done
> in the change_clock_speed() function execpt the function call to
> recalibrate_delay(void) since it deals with linux global variables.
> 
> Now the system frezzes and the LCD display shows nothing when I try to    
> scale lower than 162Mhz. Should I calibrate the FLASH timings as 
> well? Although it's not done in the linux source code.
> 
> Thanks,
> Cristiano.
> 
> 
> ------------------------------------------------------------
> Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira
> 
> On Tue, 5 Jun 2001, Nicolas Pitre wrote:
> > 
> > We had that problem under Linux and the solution you described is correct.
> > Look at the Linux code for reference.  It works fine on iPAQ.
> > 
> > Note that changing the PLL must be done  for long term power saving.  Since
> > the PLL requires quite a delay to stabilize when it is changed you can't use
> > CPU speed reduction for things like the idle loop.
> > 
> > 
> > Nicolas
> > 
> > 
> 
> 

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Frequency scaling on iPaq
  2001-06-06 14:57       ` Cristiano Ligieri Pereira
  2001-06-06 15:16         ` Cristiano Ligieri Pereira
@ 2001-06-06 16:27         ` Nicolas Pitre
  1 sibling, 0 replies; 9+ messages in thread
From: Nicolas Pitre @ 2001-06-06 16:27 UTC (permalink / raw)
  To: Cristiano Ligieri Pereira; +Cc: ecos-discuss

On Wed, 6 Jun 2001, Cristiano Ligieri Pereira wrote:

>
> have you tried it on eCos?

No.

> I'm doing exacly the same things that are done
> in the change_clock_speed() function execpt the function call to
> recalibrate_delay(void) since it deals with linux global variables.

Then it should work.  Be sure you adjust the ram timingsin the same order
i.e. whether you actually increase or decrease the clock frequency.
Double-checking the SDRAM parameters for each frequencies might be worth it
too.

> Now the system frezzes and the LCD display shows nothing when I try to
> scale lower than 162Mhz. Should I calibrate the FLASH timings as
> well? Although it's not done in the linux source code.

Normally it shouldn't matter if you slow down the flash access.  The LCD and
PCMCIA timings might have to be recalibrated as well.


Nicolas

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [ECOS] Config Tool Under Linux
  2001-06-05 10:10   ` [ECOS] Config Tool Under Linux Carlos Camargo
@ 2001-06-07  3:35     ` Julian Smart
  0 siblings, 0 replies; 9+ messages in thread
From: Julian Smart @ 2001-06-07  3:35 UTC (permalink / raw)
  To: Carlos Camargo, Nicolas Pitre, Cristiano Ligieri Pereira; +Cc: ecos-discuss

Hm, strange. Maybe try setting TCLHOME? OTOH I have tclConfig.sh in 
/usr/lib but don't need this variable to be set.

Sorry, I'm mystified...

Julian

At 10:09 AM 6/5/01 -0700, Carlos Camargo wrote:
>Hi, i try to install configtool under linux, but i
>don`t understand the diference betwen release and
>debug option.
>
>When i execute:
>
>make -f $CONFIGTOOLDIR/Makefile WXDIR=$WXDIR
>ECOSDIR=$ECOSDIR LEVEL=debug full
>
>previously i define WXDIR ECOSDIR and CONFIGTOOLDIR
>
>
>The following mesages appears:
>
>checking for Tcl installation... configure: error:
>unabe to locate Tcl config file tclConfig.sh
>
>but, tclConfig.sh exist in my computer in /usr/lib, i
>can fix a enviroment variable to fix it???
>
>
>Can help me..
>
>Thanks
>
>Carlos Camargo
>
>
>__________________________________________________
>Do You Yahoo!?
>Get personalized email addresses from Yahoo! Mail - only $35
>a year!  http://personal.mail.yahoo.com/

--
Red Hat UK Ltd, Unit 200 Rustat House, 62 Clifton Road, Cambridge, UK. CB1 
7EG Tel: +44 (1223) 271063

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2001-06-07  3:35 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-04 16:22 [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
2001-06-05  9:40 ` Nicolas Pitre
2001-06-05 10:10   ` [ECOS] Config Tool Under Linux Carlos Camargo
2001-06-07  3:35     ` Julian Smart
2001-06-05 10:20   ` [ECOS] Frequency scaling on iPaq Cristiano Ligieri Pereira
2001-06-05 10:53     ` Nicolas Pitre
2001-06-06 14:57       ` Cristiano Ligieri Pereira
2001-06-06 15:16         ` Cristiano Ligieri Pereira
2001-06-06 16:27         ` Nicolas Pitre

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).