Hi,
i want to use the virtual eeprom on a RA2E1. In principal this mechanism is working and i can write and read the record IDs. During production of the board i want to be able to program the initial content of this rec id. Is there any documentation or example how to build the binary file of the memory address starting from 0x40100000.
Thanks Michael
Hi Michael,
Thanks for reaching out to Renesas Engineering Community.
If I understand correctly you want to program the data flash of the device only, right ?
The data flash can be written in both ways, by Renesas Flash Programmer, or by self programming (by the software running on the device).
To program only the data flash with Renesas Flash Programmer, the file used to program the device would need to contain only data for the data flash address range. A .srec, .hex or .bin file can be used with RFP to provide the data to be programmed into the flash.
Regards
AZ
how to write into to data flash is clear. I am using the JLINK this works very well.
This was not really the question i have. The implementation of the renesas virtual eeprom needs a correct structure. https://renesas.github.io/fsp/group___r_m___v_e_e___f_l_a_s_h.html
I want to flash a initial value of a virtual eeprom content into device.
After the production and flashing of the bin files there should be a default value in, which must be unique for ever device. In operation the values must be update in virtual eeprom
Then the .bin file should program the data flash with data that can be used from VEEPROM drivers (segment header, initial record, reference data).
The way of programming the data flash would be the same but with different data.
If you decide to use the reference data to keep that unique value, you just need to program the reference data. It should go into the last bytes of your data flash. For reference, see code from RM_VEE_FLASH_Format
#if RM_VEE_FLASH_CFG_REF_DATA_SUPPORT if ((0 != p_ctrl->p_cfg->ref_data_size) && (NULL != p_ref_data) && (FSP_SUCCESS == err)) { err = rm_vee_blocking_write(p_ctrl, (uint32_t) p_ref_data, (RM_VEE_FLASH_LOGICAL_END_ADDRESS - p_ctrl->p_cfg->ref_data_size), p_ctrl->p_cfg->ref_data_size); } #else FSP_PARAMETER_NOT_USED(p_ref_data); #endif
is clear.
I try to flash the bin file for the data flash 0x40100000 with the jlink. This is not working. I think it is because some register has to be written before. Do you have already jlink script which is working?
Have you tried to program the file with Renesas Flash Programmer ? It worked with SWD and J-Link for me
no but i have found a solution with JLINK
This i the contend of the JLINK File which works.
srWrite1 0x407EC180 0xA5Write1 0x407EC100 0x10Write1 0x407EC100 0xEFWrite1 0x407EC100 0x10loadfile mac.bin 0x40100000exit
I have only found a cli tool
Renesas Flash Programmer CLI V1.05 Module Version: V3.11.01.000
Where can i download the GUI Version?
You can download it from the Downloads tab on https://www.renesas.com/us/en/software-tool/renesas-flash-programmer-programming-gui?downloads-title-filter=wind#download
is there also a gui version for linux?
Yes, there is.
ok when i download, this one https://www.renesas.com/us/en/document/swe/renesas-flash-programmer-v31101-linuxx64?r=488871it is only a cli version.
I am sorry, you are correct. The GUI version is not supported in Linux.
www.renesas.com/.../renesas-flash-programmer-v311-flash-memory-programming-software-users-manual