Boot Assist Module (BAM)
9-12
Freescale Semiconductor
PXR40 Microcontroller Reference Manual, Rev. 1
•
Messages with 0x13 ID are used to send the downloaded data. The MCU transmits back the same
data with ID of 0x3.
When the SCI is used for serial download, the data must be sent on a byte-by-byte basis. The MCU
transmits back the received bytes.
Since the MCU has to initialize itself to execute the serial boot there is a dead time from MCU RSTOUT
negation when the host should wait before sending first data frame. This time should be more than 5000
system clock periods.
9.5.5.4
Download Protocol Execution
The BAM program executes the serial boot as following:
1. Download 64-bit password.
a) The received 8-byte password is checked for validity. For a password to be valid, none of its
four 16-bit half words must equal 0x0000 or 0xFFFF.
b) The BAM program then checks the censorship status of the MCU. If SIU_CCR[DISNEX] is
set, the MCU is considered to be censored and the password is compared with a password
stored in the shadow row in internal flash memory.
c) If SIU_CCR[DISNEX] is cleared, the MCU is not considered to be censored and the password
is compared to the fixed value of 0xFEED_FACE_CAFE_BEEF.
d) If the password check fails, the MCU stops responding. Assert RESET to force the MCU out
of this state.
e) If the password check passes, the BAM transitions to the next step in the protocol.
2. Download start address, size of download, and VLE bit.
The BAM considers the next 8 bytes to contain a 32-bit start address, the VLE mode bit, and a
31-bit code length (see
).
Figure 9-7. Start Address, VLE Bit and Download Size in Bytes
– START_ADDRESS defines where the received data is stored and where the MCU branches
after the download is finished. The two least significant bits of the start address are ignored
by the BAM program, thus the loaded code should be 32-bit word aligned.
– CODE_LENGTH defines how many data bytes to be loaded.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
START_ADDRESS[0:15]
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
START_ADDRESS[16:31]
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
VLE
CODE_LENGTH[0:14]
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
CODE_LENGTH[15:30]
Summary of Contents for PXR4030
Page 1: ...PXR40 Microcontroller Reference Manual Devices Supported PXR4030 PXR4040 PXR40RM Rev 1 06 2011...
Page 30: ...PXR40 Microcontroller Reference Manual Rev 1 Freescale Semiconductor xxx...
Page 40: ...PXR40 Microcontroller Reference Manual Rev 1 xl Freescale Semiconductor...
Page 66: ...Memory Map PXR40 Microcontroller Reference Manual Rev 1 2 4 Freescale Semiconductor...
Page 120: ...Signal Descriptions 3 54 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...
Page 860: ...FlexCAN Module 24 50 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...
Page 1167: ...Decimation Filter Freescale Semiconductor 28 53 PXR40 Microcontroller Reference Manual Rev 1...
Page 1168: ...Decimation Filter 28 54 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...