i ported kboot to my board ,but when i use flash tool to connect my board is wrong. the first the flash tool continuous send 0x5a 0xa6, when i bootloader response 0x5a 0xa7 0x00 0x02 0x01 0x50 0x00 0x00 0xaa 0xea.but the flash tool still continuous send 0x5a 0xa6 .i don't know happen this situation .i hope someone can help me to solve the problem.
Hello,
I recommend you to check the Kinetis Bootloader reference manual. Specially chapter 6 section 6.4, chapter 3 and chapter 4, to see if your are missing something.
Since you are using a custom board you should check your schematic also to see that the connections are fine.
Hope it helps!
Victor.
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
thank you ,problem was solved.
but i have a new problem,in the struct bootloaderContext ,it has a member of flash_driver_inetrface_t,but i don't find it's instance.what i should i do?
Hello,
Please refer the section 8.2 of the reference manual attached in my last response.
Regards,
Victor.
sorry ,maybe i said what is not clear, in fact ,i want to know low -level flash driver:
now i'm porting kboot to one it is not from kinetis,so should i creat new low-level flash driver for it .or maybether sre other easy and simply methods. i find flash driver fsl_flash in NXP_Kinetis_Bootloader_2_0_0\src\drivers ,but they can't be used for my mcu .
Hello,
Which MCU are you trying to use? It's not recommended to migrate kboot to other MCU that is not from the Kinetis family. In the application layer maybe everything can remain the same, but at a lower level you need to change everything according to the MCU you want to use.
Regards,
Victor.
hello,
My work is to migrate kboot for many other MCUs not from the kinetis family .so i hope you can give some advice to help me finish this work.
Hello,
Since kboot was made for Kinetis family devices only. If you want to migrate kboot to other MCUs you will need to modify the physical layer depending on the MCU that you want to use. So, you will need to read the reference manual of each MCU to see how you need to modify the physical layer.
Regards,
Victor.
hello Victor
I meet a problem about source code. This code is in line 227 of property.c. I don't understand why the start and end addresses of the reserved area are the start and end addresses of flash. When I want to erase a certain sector of flash, mem_is_block_reserved() is called. , but this function will return true, then mem_erase() returns kstatusMemoryRangeInvalid. I hope you can answer my doubts.
Hello,
Sorry for my late response.
Kboot only reserves the flash memory that is needed to store the bootloader, it doesn't reserve all the Flash. Keep in mind that if you want to erase a sector of flash then you cannot be running that command from the flash memory.
Regards,
Victor.
ok, thank you very much.