Kinetis K81 startup & VLLSx

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Kinetis K81 startup & VLLSx

ソリューションへジャンプ
1,290件の閲覧回数
valentinmanea
Contributor I

Hello,

  I'm using the K81 SDk for development and I noticed something peculiar in the startup code startup_MK81F25615.S

 Both the SDK 2.1 and SDK 2.3 have code that copies a chunk from the end of text(_etext) with the lenght of (__data_end__ - __data_start__) to __data_start__ From the linker file this seems to be the __DATA_ROM section.

 However there are 2 problems here:

* from the map file there doesn't seem to be anything of note there, so I imagine this is just junk. Which is fine cause I didn't really imagine anything interesting to be there.

* the other problem is when doing a "warm boot", from VLLS3 in my case, all the application data gets overwritten with the junk from __DATA_ROM.

  Can you tell me if this was intentional and if I can run into problems down the line if I remove this code from the startup? I would like to keep my application global state between VLLSx modes.

Thanks

ラベル(1)
タグ(3)
0 件の賞賛
返信
1 解決策
1,105件の閲覧回数
valentinmanea
Contributor I

To answer my own question the copy code is required on "cold boot" or data initialization is lost. I was just confused reading the linker file.

What I ended up doing is to skip the copy of data if RCM_BASE had the wakeup bit set.

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
1,106件の閲覧回数
valentinmanea
Contributor I

To answer my own question the copy code is required on "cold boot" or data initialization is lost. I was just confused reading the linker file.

What I ended up doing is to skip the copy of data if RCM_BASE had the wakeup bit set.

0 件の賞賛
返信