![]() |
Kinetis Bootloader Host
2.0.0
Host Tools for Kinetis devices
|
Program persistent bits bootloader command. More...
#include <EncoreBootImage.h>
Inheritance diagram for elftosb::EncoreBootImage::ProgramCommand:
Collaboration diagram for elftosb::EncoreBootImage::ProgramCommand:Public Member Functions | |
| ProgramCommand () | |
| Default constructor. | |
| virtual void | initFromData (const cipher_block_t *blocks, unsigned count, unsigned *consumed) |
| Read the command contents from raw data. More... | |
| virtual void | debugPrint () const |
| Print out a string representation of the object. | |
Header | |
| virtual uint8_t | getTag () const |
| Returns the tag value for this command. | |
| virtual void | fillCommandHeader (boot_command_t &header) |
| Constructs the header for this boot command. | |
Do 8-byte write. | |
| void | setIsEightByte (bool doIt) |
| bool | isEightByte () const |
Memory space id. | |
| void | setMemSpace (uint32_t id) |
| uint32_t | getMemSpace () const |
Persistent bit index | |
| void | setIndex (uint32_t index) |
| uint32_t | getIndex () const |
Data bytes 0-3 | |
| void | setDataWord1 (uint32_t dataWord) |
| uint32_t | getDataWord1 () const |
Data bytes 4-7 | |
| void | setDataWord2 (uint32_t dataWord) |
| uint32_t | getDataWord2 () const |
Public Member Functions inherited from elftosb::EncoreBootImage::BootCommand | |
| BootCommand () | |
| Default constructor. | |
| virtual | ~BootCommand () |
| Destructor. | |
| virtual uint8_t | calculateChecksum (const boot_command_t &header) |
| Calculates the checksum for the given command header. More... | |
| virtual unsigned | getBlockCount () const |
| Returns the total number of cipher blocks. More... | |
| virtual unsigned | getBlocks (unsigned offset, unsigned maxCount, cipher_block_t *data) |
| Returns the contents of up to maxCount cipher blocks. More... | |
| virtual unsigned | getDataBlockCount () const |
| Returns the number of data cipher blocks that follow this command. More... | |
| virtual unsigned | getDataBlocks (unsigned offset, unsigned maxCount, cipher_block_t *data) |
| Returns the contents of up to maxCount data blocks. More... | |
Cipher blocks | |
Protected Attributes | |
| bool | m_isEightByte |
| True if doing 8-byte write. | |
| uint32_t | m_index |
| Index to write to. | |
| uint32_t | m_dataWord1 |
| First 4 bytes to write. | |
| uint32_t | m_dataWord2 |
| Second 4 bytes to write, valid if m_doEightByte is true. | |
| uint32_t | m_memSpace |
| ID of memory space, e.g. 1=IFR0. | |
Additional Inherited Members | |
Static Public Member Functions inherited from elftosb::EncoreBootImage::BootCommand | |
| static BootCommand * | createFromData (const cipher_block_t *blocks, unsigned count, unsigned *consumed) |
| Creates the correct subclass of BootCommand for the given raw data. More... | |
Protected Types inherited from elftosb::EncoreBootImage::BootCommand | |
| enum | { CMD_TAG_FIELD = 1, CMD_FLAGS_FIELD = 2, CMD_ADDRESS_FIELD = 4, CMD_COUNT_FIELD = 8, CMD_DATA_FIELD = 16 } |
| The flag bit values for the whichFields parameter of validateHeader(). | |
Protected Member Functions inherited from elftosb::EncoreBootImage::BootCommand | |
| void | validateHeader (const boot_command_t *modelHeader, const boot_command_t *testHeader, unsigned whichFields) |
Program persistent bits bootloader command.
|
virtual |
Read the command contents from raw data.
| blocks | Pointer to the raw data blocks. | |
| count | Number of blocks pointed to by blocks. | |
| [out] | consumed | On exit, this points to the number of cipher blocks that were occupied by the command. Should be at least 1 for every command. This must not be NULL on entry! |
| std::runtime_error | Thrown if header fields are invalid. |
Implements elftosb::EncoreBootImage::BootCommand.