What is blhost property 0x18 Target Version?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

What is blhost property 0x18 Target Version?

Jump to solution
929 Views
lucasrangit
Contributor III

I am reading the Kinetis blhost User's Guide, Rev. 3, 04/2016 from http://www.nxp.com/docs/en/user-guide/KBLHOSTUG.pdf and came across the property 0x18 that is not documented anywhere.

Section: 4.2.2 get-property

Example: -- get-property 10

This command is used to query the bootloader about various properties and settings. Each supported property has a unique integer tag value.

tag:

• 0x01 The Current Version of the Kinetis bootloader.

• 0x02 A mask of the Available Peripherals.

• 0x03 The starting address of the on-chip flash.

• 0x04 The size of the on-chip flash.

• 0x05 The size in bytes of one sector of program flash. This is the minimum erase size.

• 0x06 The number of blocks in the on-chip flash.

• 0x07 A mask of the Available Commands.

• 0x08 Status code from the last CRC check operation. Available only if the CRC check feature is supported.

• 0x09 Reserved for future use.

• 0x0a Verify Writes Flag - Boolean controlling whether the bootloader verifies writes to flash. A value of 0 means no verification is done, a value of 1 enables verification. This feature is enabled by default.

• 0x0b The maximum supported packet size for the currently active peripheral interface.

• 0x0c Reserved Regions - List of memory regions reserved by the bootloader. Returned as value pairs (,). If HasDataPhase flag is not set, response packet parameter count indicates number of pairs. If HasDataPhase flag is set, second parameter is the number of bytes in the data phase.

• 0x0e The starting address of the on-chip RAM.

• 0x0f The size in bytes of the on-chip RAM.

• 0x10 The value of the Kinetis System Device Identification register.

• 0x11 Flash Security Enabled Flag - Boolean indicating whether flash security is enabled. 0 means disabled, 1 means enabled.

• 0x12 The values of the Device Unique ID. The number of ID words is indicated by the parameter count in the response packet.

• 0x13 FAC Supported Flag - Boolean indicating whether Flash Access Control (FAC) module is supported. 0 means not supported, 1 means supported.

• 0x14 The number of bytes per FAC segment.

• 0x15 The number of segments available in the FAC.

• 0x16 The flash read margin setting. A value of 0 indicates Normal read margin, a value of 1 indicates User read margin, and a value of 2 indicates Factory read margin. The default is User.

• 0x17 Reserved for future use.

• 0x18 Target Version - the target build version number.

• 0x19 External Memory Attributes - memoryId is required.

On my K26 is returns:

$ sudo ./blhost -u -- get-property 0x18
Creating peripheral of type '5'
Inject command 'get-property'
Response status = 0 (0x0) Success.
Response word 1 = 1409351680 (0x54010000)
Target Version = T1.0.0

And 0x01 returns:

$ sudo ./blhost -u -- get-property 1
Creating peripheral of type '5'
Inject command 'get-property'
Response status = 0 (0x0) Success.
Response word 1 = 1258422272 (0x4b020000)
Current Version = K2.0.0

What is it? Is it something we can use to report the application version from the bootloader (e.g. from a known offset in flash)?

Labels (1)
Tags (2)
1 Solution
747 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hello Lucas Magasweran,

    The target version is used for internal test, customer don't need to care about it, just ignore it.

    Customer just need to know the bootloader version is OK, target version is useless to customer.

Wish it helps you!

   


Have a great day,
Kerry

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

3 Replies
748 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hello Lucas Magasweran,

    The target version is used for internal test, customer don't need to care about it, just ignore it.

    Customer just need to know the bootloader version is OK, target version is useless to customer.

Wish it helps you!

   


Have a great day,
Kerry

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

747 Views
lucasrangit
Contributor III

Thanks for the clarification kerryzhou‌.

I'm looking for a way to check the application version (if present) from the bootloader. Is there a recommended way to do this? Otherwise, I'm thinking of storing the version at a particular offset and using the read-memory command.

0 Kudos
747 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi Lucas Magasweran,

     If you want to check the application version, I suggest you add it in your application area directly, then read the according flash address.

    I didn't find the KBOOT leave the application version byte for the user.


Have a great day,
Kerry

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------