2-11
Copyright 2009 Cirrus Logic, Inc.
DS734UM7
Softboot
CS485xxr Hardware User’s Manual
3. Read the SOFTBOOT_ACK message. If the message is the SOFTBOOT_ACK message
(0x00000005), then the host should proceed to step 4. If the message is not the SOFTBOOT_ACK
message, the host should return to step 2.
4. Send the SLAVE_BOOT message. The host sends the SLAVE_BOOT message to the
CS485xx
using the format specified (I
2
C or SPI) by the HS[4:0] pins at reset.
5. Wait for IRQ low. The host then waits for SCP_IRQ to go low.
6. Read the BOOT_START message. If the initialization is successful,
CS485xx
will send the
BOOT_START message to the host. If the message is any other value, then the host should abort.
7. Send the ULD File. After receiving the BOOT_START message, the host sends a.uld file to the
CS485xx
x.
8. Wait for IRQ low. The host then waits for SCP_IRQ to go low. This indicates that the DSP has written
a message to the output buffer and the boot process is complete.
9. Read the BOOT_SUCCESS message. The host then reads another message from the appropriate
communications port. Each.ULD file contains a checksum that is compared at the end of the boot
process. The
CS485xx
sends a BOOT_SUCCESS message to the host if the checksum is correct after
the download.
If the checksum was incorrect,
CS485xx
responds with a BOOT_ERROR_CHECKSUM message. This
indicates that the image read by the DSP is corrupted. The communications interface hardware and code
image integrity should be checked if this occurs.
10.Repeat steps 4-8 for all code images/Overlays. The host repeats these steps until all overlays for
the application have been successfully loaded. See the application note for more information on the
overlays necessary at start-up.
11.Send the SOFT_RESET message. After reading the BOOT_SUCCESS message on the last code
image/overlay, the host must send a SOFT_RESET message which will cause the application code to
begin executing.
12.Wait for IRQ low. The host then waits for SCP_IRQ to go low.
13.Read the APP_START message. If code execution is successful, the
CS485xx
sends out an
APP_START message. This indicates that the code has been initialized and can accept further
configuration messages. The host should not attempt further communication with the
CS485xx
until the
APP_START message has been read.
If the
CS485xx
does not send an application start message, the host must return to Step 1. If the message
read is any value other than APP_START, the system controller should abort.
14.Send Hardware Configuration messages. The application code boot procedure is completed. The
operating system on the
CS485xx
is now ready for host configuration of hardware and software.
Hardware configuration messages are used to define the behavior of the
CS485xx
’s audio ports.
15.Send Software Configuration messages.The software configuration messages are specific to each
application. The application code User’s Guide for each application provides a list of all pertinent
configuration messages.
16.Send the KICKSTART message. The
CS485xx
begins processing audio after receiving this
message.