Firmware User Manual (AE-step)
22
Revision 1.02
2019-04-24
TLE984x Firmware User Manual
Boot Strap Loader (BSL)
Figure 4-3 BSL Command Message State Machine
The state machine starts to wait for the header block. This could be either a command which consists of a
single header block (the message type MSB bit is set) or a command that consists of multiple messages (the
message type MSB bit is zero).
For multimessage commands, all message data is collected by receiving data block messages. The last
message data is always received by an EOT block message.
The EOT block message reception initiates command parsing and execution.
The command processing includes message validation, where the message parameters are checked for
boundaries, any hardware applied protection and if this message is supported for this boot mode.
The state machine aborts the multimessage collection if the overall data bytes of all collected messages have
exceeded the maximum message data buffer length of 137 bytes (7 bytes in the header block m
130 EOT data bytes).
For single message commands, all command-related information is already available in the header block
message. The command parsing and execution start right after receiving the message.
After command execution and after a response has been sent, the state machine returns to the header block
polling state in order to wait for the next command.
Any received message which does not fit the current state or state transmission leads to an exit from the
current state and restarting of the whole state machine.
Response Message State Machine
The command response is specific to the used serial interface. For instance, LIN slave devices only send out
response frames if a slave response header was received from the LIN bus master. Further details are
described in the interface specific protocol layer part.
gives an overview of the LIN response message state machine.
BSL_MSG_PARSE _STATES
.
Polling New Messages
(Non Data or EOT Block) ||
(length > message length)
Data Block
EOT Block
Command
processed
Multi
Message
Command
Single
Message
Command
Multi Message Collect
Command Process
Non Header
Block