External flash layout programming with MurataType1LD platform

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
GaRa_4773281
Level 1
Level 1

Hi,

I was trying to change flash memory layout for platform MurataType1LD and flash it using sflash_write to external flash.

Earlier, I have done the same for CYW943907AEVAL1F and didn't face any issue. So, following the same approach I did changes for MurataType1LD.

I created normal_image_defines.mk at location "43xxx_Wi-Fi/platform/MurataType1LD/", containing all the addresses for the components

(bootloader, DCT1, DCT2, LUT and APPS) and did changes in wiced_apps.mk in order to get the new SECTOR_ADDRESS, SECTOR_START and SECTOR_COUNT

for writing them using the "sflash_write_file" command.

Also I found that MurataType1LD is using standard_platform_targets.mk for flashing the image to target and it already has some target definitions for

packaging and downloading bootloader, DCT and application to some predefined address (addresses referenced from WICED/platform/MCU/STM32F4xx) and not

using sflash_write. I tried replacing those target definitions with some custom target definitions which I created using sflash_write. But this fails

to download the image.

Can you please suggest some way to make it work? Is there something wrong in the approach?

Few more queries:

1) Is the predefined addresses corresponds to Internal flash?

2) If yes, how can I write bootloader, dct and all other apps it to external flash (using sflash_write?)

0 Likes
1 Solution
Murali_R
Moderator
Moderator
Moderator
250 sign-ins 250 replies posted 100 solutions authored

gara_4773281 if you are trying to meddle with the memory locations of the internal flash then you can change the memory addresses based on your host processor at /43xxx_Wi-Fi/WICED/platform/MCU/STM32F4xx/GCC/

I am not sure how murata's standard_platform_targets.mk is being used and hence i can't comment on it without having a look at it.

1. Yes, the addresses defined at /43xxx_Wi-Fi/WICED/platform/MCU/STM32F4xx/GCC/ are of internal flash.

2. How to get the whole Firmware of BCM94343WWCD1 from external flash on EVB? this thread should answer this question.

Let me know if anything is not clear.

Thanks

View solution in original post

0 Likes
3 Replies
Murali_R
Moderator
Moderator
Moderator
250 sign-ins 250 replies posted 100 solutions authored

gara_4773281 if you are trying to meddle with the memory locations of the internal flash then you can change the memory addresses based on your host processor at /43xxx_Wi-Fi/WICED/platform/MCU/STM32F4xx/GCC/

I am not sure how murata's standard_platform_targets.mk is being used and hence i can't comment on it without having a look at it.

1. Yes, the addresses defined at /43xxx_Wi-Fi/WICED/platform/MCU/STM32F4xx/GCC/ are of internal flash.

2. How to get the whole Firmware of BCM94343WWCD1 from external flash on EVB? this thread should answer this question.

Let me know if anything is not clear.

Thanks

0 Likes

Hi MuraliR_36,

Thanks for the response. The link which you shared in second point was helpful. I got to know this

"According to the STM app notes AN2606, AN4286, the STM32 ROM bootloader does not have the capability to execute code that is not in the internal flash."

Earlier I have worked with BCM4390x and there I guess we had the XIP support. I was wondering, if with STM32 also we can have some XIP mode, as the internal flash is limited to 1 MB here and may cause the application to overshoot the memory.

Thanks,

0 Likes

GaRa_4773281 XIP is supported only on xx907 based platforms by default.

0 Likes