DSPRelated.com
Forums

HPI boot mode

Started by Les Newell July 19, 2002
Hi,
I am having trouble trying to boot a 'C5402 DSK using HPI boot mode.

I am using the following sequence:

Write program and data using evmdsk54x_hpi_write_single() calls. (The memory
is being written correctly because I can verify it using CCS.)
write a goto start instruction at 1000h.
set reset active by writing 0ch to CPLD register 0
wait a few milliseconds
set reset inactive by writing 0 to CPLD register 0

JP2 is set up to connect HINT to INT2

When the DSP comes out of reset I can see HINT/INT2 go low but the code does
not boot. What am I doing wrong?

I cannot use evmdsk54x_coff_load because my DSP code is in SREC format and
is stored within the host code.

Thanks in advance,
Les




Dammit,
Why is it that I can spend ages trying to get something to work then,
shortly after posting a question, find out how to do it.

For future reference www-s.ti.com/sc/psheets/spra382/spra382.pdf explains
exactly what to do.
This is completely different to the information in spru173.pdf, in the HPI
boot load section!

Les

----- Original Message -----
From: "Les Newell" <>
To: <>
Sent: Friday, July 19, 2002 11:04 AM
Subject: HPI boot mode > Hi,
> I am having trouble trying to boot a 'C5402 DSK using HPI boot mode.
>
> I am using the following sequence:
>
> Write program and data using evmdsk54x_hpi_write_single() calls. (The
memory
> is being written correctly because I can verify it using CCS.)
> write a goto start instruction at 1000h.
> set reset active by writing 0ch to CPLD register 0
> wait a few milliseconds
> set reset inactive by writing 0 to CPLD register 0
>
> JP2 is set up to connect HINT to INT2
>
> When the DSP comes out of reset I can see HINT/INT2 go low but the code
does
> not boot. > What am I doing wrong?
>
> I cannot use evmdsk54x_coff_load because my DSP code is in SREC format and
> is stored within the host code.
>
> Thanks in advance,
> Les


Hi Les,

Use the following sequence:

// Reset the DSP will bring the DSP go to BOOT mode
evmdsk54x_reset_dsp
evmdsk54x_unreset_dsp

// Write your Program and data into C5402 onchip
memory
loop
evmdsk54x_hpi_write_single
until done

// Write Program start address into address 0x7F
// This is read by the HPI Boot code in the onchip
// boot loader.
evmdsk54x_hpi_write_single(hm, &prog_entry,
(ULONG)0x7F, DATA_MEMORY, 0) If you need to verify if the DSP is reset and wait for
HPI boot, try the following.

// Write 0xF8AF into address 0x7F. This will make the
// boot loader code jump into a infinite loop
prog_entry = 0xF8AF;
evmdsk54x_hpi_write_single(hm, &prog_entry,
(ULONG)0x7F, DATA_MEMORY, 0)

// Then do a reset to DSP
evmdsk54x_reset_dsp
evmdsk54x_unreset_dsp

Read back the value in 0x7F location, if the DSP reset
and jump into HPI boot mode, the value in 0x7F is
cleared by the onchip Boot loader code.

Of course, you can also use CCS to do the above
manually. Make sure you set PMST register to 0xFF80
before doing the reset. This will bring the DSP to
jump
to the onchip boot loader.

Good luck

------
Ben

--- Les Newell <> wrote:
> Hi,
> I am having trouble trying to boot a 'C5402 DSK
> using HPI boot mode.
>
> I am using the following sequence:
>
> Write program and data using
> evmdsk54x_hpi_write_single() calls. (The memory
> is being written correctly because I can verify it
> using CCS.)
> write a goto start instruction at 1000h.
> set reset active by writing 0ch to CPLD register 0
> wait a few milliseconds
> set reset inactive by writing 0 to CPLD register 0
>
> JP2 is set up to connect HINT to INT2
>
> When the DSP comes out of reset I can see HINT/INT2
> go low but the code does
> not boot. > What am I doing wrong?
>
> I cannot use evmdsk54x_coff_load because my DSP code
> is in SREC format and
> is stored within the host code.
>
> Thanks in advance,
> Les >
>
> _____________________________________
> Note: If you do a simple "reply" with your email
> client, only the author of this message will receive
> your answer. You need to do a "reply all" if you
> want your answer to be distributed to the entire
> group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to > To Post: Send an email to
>
> To Leave: Send an email to > Archives: http://www.yahoogroups.com/group/c54x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/


__________________________________________________