- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I would like to preform the following.
Save by the application some info on the Emulated EEPROM and then access this information while in boot mode.
is this possible?
if yes, how?
Thanks
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
A search of the forum shows this topic has been covered many-many times.
https://community.infineon.com/t5/PSoC-4/PSoC4-Em-EEPROM-2-0-Fixed-Address/m-p/107072
Basically, store the data at a fixed address and both Bootloader and Bootloadable can have access to the data.
An alternate way is to use SFLASH.
Good luck with your project.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Alakananda_BG ,
I have a bootloadable app which uses Emulated EEPROM.
I want to access the parameters saved to the Emulated EEPROM by the bootloadable app from the bootloader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
A search of the forum shows this topic has been covered many-many times.
https://community.infineon.com/t5/PSoC-4/PSoC4-Em-EEPROM-2-0-Fixed-Address/m-p/107072
Basically, store the data at a fixed address and both Bootloader and Bootloadable can have access to the data.
An alternate way is to use SFLASH.
Good luck with your project.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, but i still need assistance with some of the steps:
step 7: "search for the following declaration:
.cy_checksum_exclude : { KEEP(*(.cy_checksum_exclude)) } >rom"
I've found: "
.cy_checksum_exclude ((LENGTH(rom) - CY_FLASH_ROW_SIZE * CY_APPL_MAX) - CY_CHECKSUM_EXCLUDE_SIZE): { KEEP(*(.cy_checksum_exclude)) }
/* Bootloadable applications only: verify that size of the data in the section is within the specified limit. */
cy_checksum_exclude_size = (CY_APPL_LOADABLE == 1) ? SIZEOF(.cy_checksum_exclude) : 0;
ASSERT(cy_checksum_exclude_size <= CY_CHECKSUM_EXCLUDE_SIZE, "CY_BOOT: Section .cy_checksum_exclude size exceedes specified limit.")"
- should the new lines be between "KEEP(*(.cy_checksum_exclude))" and "y_checksum_exclude_size"?
- how can I tell the valid memory addresses space for <EEPROM_Address> to avoid overlapping with the memory space used by the application?
when i compile i see this at the end:
Flash used: 94696 of 131072 bytes (72.2%). Bootloader: 11008 bytes. Application: 83560 bytes. Metadata: 128 bytes.
My Em_EEPROM actual size (bytes) is 16384.
so i wrote in the linker script:
"EM_EEPROM_START_ADDRESS = 0x1BF80;
.my_emulated_eeprom EM_EEPROM_START_ADDRESS :
{
KEEP(*(.my_emulated_eeprom))
} >rom"
(131072 - 128 - 16384) = 0x1BF80
is that correct?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This was recently posted. It may help. Has links to FLASH allocation structure and explanation.
Emulated EEPROM on PSoC4 - Infineon Developer Community
Maybe Alakananda_BG can shed some light on the issue with linker script. I'm not an expert on that topic.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the response.
looking forward for @Alakananda_BG 's assistance.
more info:
Device: CY8C4247AZI-M485
the edited linker script:
(131072 - 128 - 16384 - 1) = 0x1BF7F
Em_EEPROM definitions from bootloadable:
Bootloadable configuration:
Em_EEPROM init at the Bootloadable:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @TamirM ,
Can you let us know from which document you are referring to "step 7: "search for the following declaration"?
The memory space.png image which you have attached in your previous response is not opening at our end can you reattach it?
Regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Alakananda_BG ,
I'm referring to the "Emulated EEPROM" datasheet, step 7 under the title "Placing EEPROM Storage at Fixed Address".
Memory Space: