Hi,

thanks for your quickly reply.

after i trying that, it still hangs at
while( !(PSC_EPCPR & 0x2) );         <--- always loop in here

i noticed that "Advisory 1.3.22" is for hanging up in polling PTSTAT.
but in my case, it hangs
up in polling EPCPR.
do you know what may make this happen? or are there any jumper or switch i
should configure before ARM boot DSP?


by the way, what is the first step of DSP domain power on mentioned in
"TMS320DM644x DMSoC ARM Subsystem(sprue14a.pdf)" section13.5.2.1 mean?
step1 :
Apply power to the power pins (VDDDSP) of the DSP power domain. In this
step, the ARM
coordinates with an external device (for example, microcontroller) to supply
power to the power
pins.

thanks for your help


best,
kashin lin


2008/1/23, Arie Muijnck <[EMAIL PROTECTED]>:
>
> We do something BEFORE your code:
>
>
>
> //----- Clear reserved register 0x01C41A20 to prevent hangup on PTSTAT
> testing.
>
> //            (Errata SPRUZ241D Advisory 1.3.22)
>
> PSC->MDCTL[16] = 0;
>
>
>
> //----- Put the C64x+ Core into reset (if it's on)
>
> PSC->MDCTL[39] &= (~0x00000100);           // ask reset
>
> psc_update(DOMAIN_DSP);                    // do transition
>
> while ((PSC->MDSTAT[39]) & (0x00000100))   // wait for reset seen
>
> {
>
> }
>
> Arie de Muijnck
> ------------------------------
>
> *From:* [EMAIL PROTECTED] [mailto:
> [EMAIL PROTECTED] *On Behalf Of *kashin
> Lin
> *Sent:* Wednesday, January 23, 2008 09:24
> *To:* davinci-linux-open-source@linux.davincidsp.com
> *Subject:* Turn on DSP power domain fail
>
>
>
> Hi,
>
> when i try to use "ARM boot DSP" mode to boot my system, i got some
> problem.
>
> the platform i used is Davinci DVM6446
>
> fisrt, i
> check the switch "s3" on board and be sure the s3-4's (COUT3) status is off.
>
>
> then i write some code to turn on the DSP's power domain and setting the
> DSPBOOTADDR
>
> to starting address which sequence are refer to "sprue14a.pdf" section
> 13.5.2.1 .
>
> the power on DSP's codes snip :
>
> int
> power_on_enable_dsp()
> {
>     /* wait for previous initial finish */
>     while( PSC_PTSTAT & GOSTAT_DSP_MASK )
>         ;
>     /* set DSP power domain on */
>     PSC_PDCTL1 |= 0x1;
>     /* set DSP module enable */
>     PSC_MDCTL39 |= 0x3;
>     /* start to transit to next state */
>     PSC_PTCMD |= 0x2;
>
>     /* wait for power applying to DSP */
>     while( !PSC_EPCPR & EPC_DSP_MASK )     <--- always loop in here
>         ;
>
>     /* short the power rails of the AlwaysOn
>        and DSP power domains. */
>     SCM_CHP_SHRTSW |= 0x1;
>     /* indicate power has been applied */
>     PSC_PDCTL1 |= 0x100;
>     /* wait for transition finish */
>     while( PSC_PTSTAT & GOSTAT_DSP_MASK )
>         ;
>     return 1;
> }
>
> it seems the EPC bit in EPCCPR register of PSC doesn't be set to 1 which
> means the power hasn't been applied.
>
> i wonder if the sequence in code is wrong? or are there any thing i should
> take care?
>
> thanks in advance~
>
>
> best,
> kashin lin
>
>
> ------------------------------
>
> *CONFIDENTIALITY NOTICE - This e-mail transmission, and any documents,
> files or previous e-mail messages attached to it may contain information
> that is confidential or legally privileged. If you are not the intended
> recipient, or a person responsible for delivering it to the intended
> recipient, you are hereby notified that you must not read this transmission
> and that any disclosure, copying, printing, distribution or use of any of
> the information contained in or attached to this transmission is STRICTLY
> PROHIBITED. If you have received this transmission in error, please
> immediately notify Arie Muijnck by telephone or [EMAIL PROTECTED] delete the 
> original transmission and its attachments without reading or
> saving in any manner.*
>
_______________________________________________
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to