fsp.ld 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098
  1. /*
  2. Linker File for Renesas FSP
  3. */
  4. /* generated memory regions file - do not edit */
  5. RAM_START = 0x22000000;
  6. RAM_LENGTH = 0x174000;
  7. FLASH_START = 0x02000000;
  8. FLASH_LENGTH = 0x00100000;
  9. DATA_FLASH_START = 0x27000000;
  10. DATA_FLASH_LENGTH = 0x00000000;
  11. SDRAM_START = 0x68000000;
  12. SDRAM_LENGTH = 0x08000000;
  13. OSPI0_CS0_START = 0x80000000;
  14. OSPI0_CS0_LENGTH = 0x10000000;
  15. OSPI0_CS1_START = 0x90000000;
  16. OSPI0_CS1_LENGTH = 0x10000000;
  17. OSPI1_CS0_START = 0x70000000;
  18. OSPI1_CS0_LENGTH = 0x08000000;
  19. OSPI1_CS1_START = 0x78000000;
  20. OSPI1_CS1_LENGTH = 0x08000000;
  21. OPTION_SETTING_OFS0_START = 0x02c9f040;
  22. OPTION_SETTING_OFS0_LENGTH = 0x00000004;
  23. OPTION_SETTING_OFS2_START = 0x02c9f044;
  24. OPTION_SETTING_OFS2_LENGTH = 0x00000004;
  25. OPTION_SETTING_SAS_START = 0x02c9f074;
  26. OPTION_SETTING_SAS_LENGTH = 0x00000004;
  27. OPTION_SETTING_OFS1_START = 0x12c9f4c0;
  28. OPTION_SETTING_OFS1_LENGTH = 0x00000004;
  29. OPTION_SETTING_OFS1_SEC_START = 0x02c9f0c0;
  30. OPTION_SETTING_OFS1_SEC_LENGTH = 0x00000004;
  31. OPTION_SETTING_OFS1_SEL_START = 0x02c9f120;
  32. OPTION_SETTING_OFS1_SEL_LENGTH = 0x00000004;
  33. OPTION_SETTING_OFS3_START = 0x12c9f4c4;
  34. OPTION_SETTING_OFS3_LENGTH = 0x00000004;
  35. OPTION_SETTING_OFS3_SEC_START = 0x02c9f0c4;
  36. OPTION_SETTING_OFS3_SEC_LENGTH = 0x00000004;
  37. OPTION_SETTING_OFS3_SEL_START = 0x02c9f124;
  38. OPTION_SETTING_OFS3_SEL_LENGTH = 0x00000004;
  39. OPTION_SETTING_BPS_START = 0x12c9f600;
  40. OPTION_SETTING_BPS_LENGTH = 0x00000080;
  41. OPTION_SETTING_BPS_SEC_START = 0x02c9f200;
  42. OPTION_SETTING_BPS_SEC_LENGTH = 0x00000080;
  43. OPTION_SETTING_OTP_PBPS_SEC_START = 0x02e07700;
  44. OPTION_SETTING_OTP_PBPS_SEC_LENGTH = 0x00000080;
  45. OPTION_SETTING_OTP_PBPS_START = 0x12e07780;
  46. OPTION_SETTING_OTP_PBPS_LENGTH = 0x00000080;
  47. ITCM_START = 0x00000000;
  48. ITCM_LENGTH = 0x00020000;
  49. DTCM_START = 0x20000000;
  50. DTCM_LENGTH = 0x00020000;
  51. MEMORY
  52. {
  53. RAM (rwx) : ORIGIN = RAM_START, LENGTH = RAM_LENGTH
  54. FLASH (rx) : ORIGIN = FLASH_START, LENGTH = FLASH_LENGTH
  55. DATA_FLASH (rx) : ORIGIN = DATA_FLASH_START, LENGTH = DATA_FLASH_LENGTH
  56. SDRAM (rwx) : ORIGIN = SDRAM_START, LENGTH = SDRAM_LENGTH
  57. OSPI0_CS0 (rwx) : ORIGIN = OSPI0_CS0_START, LENGTH = OSPI0_CS0_LENGTH
  58. OSPI0_CS1 (rx) : ORIGIN = OSPI0_CS1_START, LENGTH = OSPI0_CS1_LENGTH
  59. OSPI1_CS0 (rwx) : ORIGIN = OSPI1_CS0_START, LENGTH = OSPI1_CS0_LENGTH
  60. OSPI1_CS1 (rx) : ORIGIN = OSPI1_CS1_START, LENGTH = OSPI1_CS1_LENGTH
  61. OPTION_SETTING_OFS0 (r) : ORIGIN = OPTION_SETTING_OFS0_START, LENGTH = OPTION_SETTING_OFS0_LENGTH
  62. OPTION_SETTING_OFS2 (r) : ORIGIN = OPTION_SETTING_OFS2_START, LENGTH = OPTION_SETTING_OFS2_LENGTH
  63. OPTION_SETTING_SAS (r) : ORIGIN = OPTION_SETTING_SAS_START, LENGTH = OPTION_SETTING_SAS_LENGTH
  64. OPTION_SETTING_OFS1 (r) : ORIGIN = OPTION_SETTING_OFS1_START, LENGTH = OPTION_SETTING_OFS1_LENGTH
  65. OPTION_SETTING_OFS1_SEC (r) : ORIGIN = OPTION_SETTING_OFS1_SEC_START, LENGTH = OPTION_SETTING_OFS1_SEC_LENGTH
  66. OPTION_SETTING_OFS1_SEL (r) : ORIGIN = OPTION_SETTING_OFS1_SEL_START, LENGTH = OPTION_SETTING_OFS1_SEL_LENGTH
  67. OPTION_SETTING_OFS3 (r) : ORIGIN = OPTION_SETTING_OFS3_START, LENGTH = OPTION_SETTING_OFS3_LENGTH
  68. OPTION_SETTING_OFS3_SEC (r) : ORIGIN = OPTION_SETTING_OFS3_SEC_START, LENGTH = OPTION_SETTING_OFS3_SEC_LENGTH
  69. OPTION_SETTING_OFS3_SEL (r) : ORIGIN = OPTION_SETTING_OFS3_SEL_START, LENGTH = OPTION_SETTING_OFS3_SEL_LENGTH
  70. OPTION_SETTING_BPS (r) : ORIGIN = OPTION_SETTING_BPS_START, LENGTH = OPTION_SETTING_BPS_LENGTH
  71. OPTION_SETTING_BPS_SEC (r) : ORIGIN = OPTION_SETTING_BPS_SEC_START, LENGTH = OPTION_SETTING_BPS_SEC_LENGTH
  72. OPTION_SETTING_OTP_PBPS_SEC (r) : ORIGIN = OPTION_SETTING_OTP_PBPS_SEC_START, LENGTH = OPTION_SETTING_OTP_PBPS_SEC_LENGTH
  73. OPTION_SETTING_OTP_PBPS (r) : ORIGIN = OPTION_SETTING_OTP_PBPS_START, LENGTH = OPTION_SETTING_OTP_PBPS_LENGTH
  74. ITCM (rwx) : ORIGIN = ITCM_START, LENGTH = ITCM_LENGTH
  75. DTCM (rwx) : ORIGIN = DTCM_START, LENGTH = DTCM_LENGTH
  76. }
  77. /* code entry point...need to define to keep crt0 _start out */
  78. ENTRY( Reset_Handler)
  79. /* Library configurations */
  80. GROUP(libgcc.a libc.a libm.a)
  81. SECTIONS
  82. {
  83. /***** OSPI0_CS1 memory section allocations ******/
  84. .ospi0_cs1.startof (READONLY) :
  85. {
  86. __ddsc_OSPI0_CS1_START = .;
  87. }> OSPI0_CS1
  88. /***** SDRAM memory section allocations ******/
  89. .sdram.startof :
  90. {
  91. __ddsc_SDRAM_START = .;
  92. }> SDRAM
  93. /* sdram initialized from ospi0_cs1 */
  94. __sdram_from_ospi0_cs1$$ : ALIGN(4)
  95. {
  96. __sdram_from_ospi0_cs1$$Base = .;__sdram_from_ospi0_cs1$$Load = LOADADDR(__sdram_from_ospi0_cs1$$);
  97. /* section.sdram.from_ospi0_cs1 */
  98. *(.sdram_from_ospi0_cs1)
  99. /* section.sdram.code_from_ospi0_cs1 */
  100. *(.sdram_code_from_ospi0_cs1)
  101. __sdram_from_ospi0_cs1$$Limit = .;
  102. }> SDRAM AT > OSPI0_CS1
  103. /***** OSPI0_CS0 memory section allocations ******/
  104. .ospi0_cs0.startof :
  105. {
  106. __ddsc_OSPI0_CS0_START = .;
  107. }> OSPI0_CS0
  108. /* ospi0_cs0 initialized from ospi0_cs1 */
  109. __ospi0_cs0_from_ospi0_cs1$$ : ALIGN(4)
  110. {
  111. __ospi0_cs0_from_ospi0_cs1$$Base = .;__ospi0_cs0_from_ospi0_cs1$$Load = LOADADDR(__ospi0_cs0_from_ospi0_cs1$$);
  112. /* section.ospi0_cs0.from_ospi0_cs1 */
  113. *(.ospi0_cs0_from_ospi0_cs1)
  114. /* section.ospi0_cs0.code_from_ospi0_cs1 */
  115. *(.ospi0_cs0_code_from_ospi0_cs1)
  116. __ospi0_cs0_from_ospi0_cs1$$Limit = .;
  117. }> OSPI0_CS0 AT > OSPI0_CS1
  118. /***** OSPI1_CS0 memory section allocations ******/
  119. .ospi1_cs0.startof :
  120. {
  121. __ddsc_OSPI1_CS0_START = .;
  122. }> OSPI1_CS0
  123. /* ospi1_cs0 initialized from ospi0_cs1 */
  124. __ospi1_cs0_from_ospi0_cs1$$ : ALIGN(4)
  125. {
  126. __ospi1_cs0_from_ospi0_cs1$$Base = .;__ospi1_cs0_from_ospi0_cs1$$Load = LOADADDR(__ospi1_cs0_from_ospi0_cs1$$);
  127. /* section.ospi1_cs0.from_ospi0_cs1 */
  128. *(.ospi1_cs0_from_ospi0_cs1)
  129. /* section.ospi1_cs0.code_from_ospi0_cs1 */
  130. *(.ospi1_cs0_code_from_ospi0_cs1)
  131. __ospi1_cs0_from_ospi0_cs1$$Limit = .;
  132. }> OSPI1_CS0 AT > OSPI0_CS1
  133. /***** ITCM memory section allocations ******/
  134. .itcm.startof :
  135. {
  136. __ddsc_ITCM_START = .;
  137. }> ITCM
  138. /* itcm initialized from ospi0_cs1 */
  139. __itcm_from_ospi0_cs1$$ : ALIGN(8)
  140. {
  141. __itcm_from_ospi0_cs1$$Base = .;__itcm_from_ospi0_cs1$$Load = LOADADDR(__itcm_from_ospi0_cs1$$);
  142. /* section.itcm.from_ospi0_cs1 */
  143. *(.itcm_from_ospi0_cs1)
  144. /* section.itcm.code_from_ospi0_cs1 */
  145. *(.itcm_code_from_ospi0_cs1)
  146. . = ALIGN(8);
  147. __itcm_from_ospi0_cs1$$Limit = .;
  148. }> ITCM AT > OSPI0_CS1
  149. /***** DTCM memory section allocations ******/
  150. .dtcm.startof :
  151. {
  152. __ddsc_DTCM_START = .;
  153. }> DTCM
  154. /* dtcm initialized from ospi0_cs1 */
  155. __dtcm_from_ospi0_cs1$$ : ALIGN(8)
  156. {
  157. __dtcm_from_ospi0_cs1$$Base = .;__dtcm_from_ospi0_cs1$$Load = LOADADDR(__dtcm_from_ospi0_cs1$$);
  158. /* section.dtcm.from_ospi0_cs1 */
  159. *(.dtcm_from_ospi0_cs1)
  160. /* section.dtcm.code_from_ospi0_cs1 */
  161. *(.dtcm_code_from_ospi0_cs1)
  162. . = ALIGN(8);
  163. __dtcm_from_ospi0_cs1$$Limit = .;
  164. }> DTCM AT > OSPI0_CS1
  165. /***** RAM memory section allocations ******/
  166. .ram.startof :
  167. {
  168. __ddsc_RAM_START = .;
  169. }> RAM
  170. __ram_dtc_vector$$ (NOLOAD) :
  171. {
  172. __ram_dtc_vector$$Base = .;
  173. *(.fsp_dtc_vector_table)
  174. __ram_dtc_vector$$Limit = .;
  175. }> RAM
  176. /* ram initialized from ospi0_cs1 */
  177. __ram_from_ospi0_cs1$$ : ALIGN(4)
  178. {
  179. __ram_from_ospi0_cs1$$Base = .;__ram_from_ospi0_cs1$$Load = LOADADDR(__ram_from_ospi0_cs1$$);
  180. /* section.ram.from_ospi0_cs1 */
  181. *(.ram_from_ospi0_cs1)
  182. /* section.ram.code_from_ospi0_cs1 */
  183. *(.ram_code_from_ospi0_cs1)
  184. __ram_from_ospi0_cs1$$Limit = .;
  185. }> RAM AT > OSPI0_CS1
  186. __ospi0_cs1_readonly$$ (READONLY) :
  187. {
  188. __ospi0_cs1_readonly$$Base = .;
  189. /* section.ospi0_cs1.readonly */
  190. *(.ospi0_cs1)
  191. /* section.ospi0_cs1.code */
  192. *(.ospi0_cs1_code)
  193. __ospi0_cs1_readonly$$Limit = .;
  194. }> OSPI0_CS1
  195. __ospi0_cs1_noinit$$ (NOLOAD) :
  196. {
  197. __ospi0_cs1_noinit$$Base = .;
  198. /* section.ospi0_cs1.noinit */
  199. *(.ospi0_cs1_noinit)
  200. __ospi0_cs1_noinit$$Limit = .;
  201. }> OSPI0_CS1
  202. .ospi0_cs1.endof ALIGN(.,512) (READONLY) :
  203. {
  204. __ddsc_OSPI0_CS1_END = .;
  205. }> OSPI0_CS1
  206. /***** OSPI1_CS1 memory section allocations ******/
  207. .ospi1_cs1.startof (READONLY) :
  208. {
  209. __ddsc_OSPI1_CS1_START = .;
  210. }> OSPI1_CS1
  211. /***** SDRAM memory section allocations ******/
  212. /* sdram initialized from ospi1_cs1 */
  213. __sdram_from_ospi1_cs1$$ : ALIGN(4)
  214. {
  215. __sdram_from_ospi1_cs1$$Base = .;__sdram_from_ospi1_cs1$$Load = LOADADDR(__sdram_from_ospi1_cs1$$);
  216. /* section.sdram.from_ospi1_cs1 */
  217. *(.sdram_from_ospi1_cs1)
  218. /* section.sdram.code_from_ospi1_cs1 */
  219. *(.sdram_code_from_ospi1_cs1)
  220. __sdram_from_ospi1_cs1$$Limit = .;
  221. }> SDRAM AT > OSPI1_CS1
  222. /***** OSPI0_CS0 memory section allocations ******/
  223. /* ospi0_cs0 initialized from ospi1_cs1 */
  224. __ospi0_cs0_from_ospi1_cs1$$ : ALIGN(4)
  225. {
  226. __ospi0_cs0_from_ospi1_cs1$$Base = .;__ospi0_cs0_from_ospi1_cs1$$Load = LOADADDR(__ospi0_cs0_from_ospi1_cs1$$);
  227. /* section.ospi0_cs0.from_ospi1_cs1 */
  228. *(.ospi0_cs0_from_ospi1_cs1)
  229. /* section.ospi0_cs0.code_from_ospi1_cs1 */
  230. *(.ospi0_cs0_code_from_ospi1_cs1)
  231. __ospi0_cs0_from_ospi1_cs1$$Limit = .;
  232. }> OSPI0_CS0 AT > OSPI1_CS1
  233. /***** OSPI1_CS0 memory section allocations ******/
  234. /* ospi1_cs0 initialized from ospi1_cs1 */
  235. __ospi1_cs0_from_ospi1_cs1$$ : ALIGN(4)
  236. {
  237. __ospi1_cs0_from_ospi1_cs1$$Base = .;__ospi1_cs0_from_ospi1_cs1$$Load = LOADADDR(__ospi1_cs0_from_ospi1_cs1$$);
  238. /* section.ospi1_cs0.from_ospi1_cs1 */
  239. *(.ospi1_cs0_from_ospi1_cs1)
  240. /* section.ospi1_cs0.code_from_ospi1_cs1 */
  241. *(.ospi1_cs0_code_from_ospi1_cs1)
  242. __ospi1_cs0_from_ospi1_cs1$$Limit = .;
  243. }> OSPI1_CS0 AT > OSPI1_CS1
  244. /***** ITCM memory section allocations ******/
  245. /* itcm initialized from ospi1_cs1 */
  246. __itcm_from_ospi1_cs1$$ : ALIGN(8)
  247. {
  248. __itcm_from_ospi1_cs1$$Base = .;__itcm_from_ospi1_cs1$$Load = LOADADDR(__itcm_from_ospi1_cs1$$);
  249. /* section.itcm.from_ospi1_cs1 */
  250. *(.itcm_from_ospi1_cs1)
  251. /* section.itcm.code_from_ospi1_cs1 */
  252. *(.itcm_code_from_ospi1_cs1)
  253. . = ALIGN(8);
  254. __itcm_from_ospi1_cs1$$Limit = .;
  255. }> ITCM AT > OSPI1_CS1
  256. /***** DTCM memory section allocations ******/
  257. /* dtcm initialized from ospi1_cs1 */
  258. __dtcm_from_ospi1_cs1$$ : ALIGN(8)
  259. {
  260. __dtcm_from_ospi1_cs1$$Base = .;__dtcm_from_ospi1_cs1$$Load = LOADADDR(__dtcm_from_ospi1_cs1$$);
  261. /* section.dtcm.from_ospi1_cs1 */
  262. *(.dtcm_from_ospi1_cs1)
  263. /* section.dtcm.code_from_ospi1_cs1 */
  264. *(.dtcm_code_from_ospi1_cs1)
  265. . = ALIGN(8);
  266. __dtcm_from_ospi1_cs1$$Limit = .;
  267. }> DTCM AT > OSPI1_CS1
  268. /***** RAM memory section allocations ******/
  269. /* ram initialized from ospi1_cs1 */
  270. __ram_from_ospi1_cs1$$ : ALIGN(4)
  271. {
  272. __ram_from_ospi1_cs1$$Base = .;__ram_from_ospi1_cs1$$Load = LOADADDR(__ram_from_ospi1_cs1$$);
  273. /* section.ram.from_ospi1_cs1 */
  274. *(.ram_from_ospi1_cs1)
  275. /* section.ram.code_from_ospi1_cs1 */
  276. *(.ram_code_from_ospi1_cs1)
  277. __ram_from_ospi1_cs1$$Limit = .;
  278. }> RAM AT > OSPI1_CS1
  279. __ospi1_cs1_readonly$$ (READONLY) :
  280. {
  281. __ospi1_cs1_readonly$$Base = .;
  282. /* section.ospi1_cs1.readonly */
  283. *(.ospi1_cs1)
  284. /* section.ospi1_cs1.code */
  285. *(.ospi1_cs1_code)
  286. __ospi1_cs1_readonly$$Limit = .;
  287. }> OSPI1_CS1
  288. __ospi1_cs1_noinit$$ (NOLOAD) :
  289. {
  290. __ospi1_cs1_noinit$$Base = .;
  291. /* section.ospi1_cs1.noinit */
  292. *(.ospi1_cs1_noinit)
  293. __ospi1_cs1_noinit$$Limit = .;
  294. }> OSPI1_CS1
  295. .ospi1_cs1.endof ALIGN(.,512) (READONLY) :
  296. {
  297. __ddsc_OSPI1_CS1_END = .;
  298. }> OSPI1_CS1
  299. /***** DATA_FLASH memory section allocations ******/
  300. .data_flash.startof (READONLY) :
  301. {
  302. __ddsc_DATA_FLASH_START = .;
  303. }> DATA_FLASH
  304. /***** SDRAM memory section allocations ******/
  305. /* sdram initialized from data_flash */
  306. __sdram_from_data_flash$$ : ALIGN(4)
  307. {
  308. __sdram_from_data_flash$$Base = .;__sdram_from_data_flash$$Load = LOADADDR(__sdram_from_data_flash$$);
  309. /* section.sdram.from_data_flash */
  310. *(.sdram_from_data_flash)
  311. /* section.sdram.code_from_data_flash */
  312. *(.sdram_code_from_data_flash)
  313. __sdram_from_data_flash$$Limit = .;
  314. }> SDRAM AT > DATA_FLASH
  315. /***** OSPI0_CS0 memory section allocations ******/
  316. /* ospi0_cs0 initialized from data_flash */
  317. __ospi0_cs0_from_data_flash$$ : ALIGN(4)
  318. {
  319. __ospi0_cs0_from_data_flash$$Base = .;__ospi0_cs0_from_data_flash$$Load = LOADADDR(__ospi0_cs0_from_data_flash$$);
  320. /* section.ospi0_cs0.from_data_flash */
  321. *(.ospi0_cs0_from_data_flash)
  322. /* section.ospi0_cs0.code_from_data_flash */
  323. *(.ospi0_cs0_code_from_data_flash)
  324. __ospi0_cs0_from_data_flash$$Limit = .;
  325. }> OSPI0_CS0 AT > DATA_FLASH
  326. /***** OSPI1_CS0 memory section allocations ******/
  327. /* ospi1_cs0 initialized from data_flash */
  328. __ospi1_cs0_from_data_flash$$ : ALIGN(4)
  329. {
  330. __ospi1_cs0_from_data_flash$$Base = .;__ospi1_cs0_from_data_flash$$Load = LOADADDR(__ospi1_cs0_from_data_flash$$);
  331. /* section.ospi1_cs0.from_data_flash */
  332. *(.ospi1_cs0_from_data_flash)
  333. /* section.ospi1_cs0.code_from_data_flash */
  334. *(.ospi1_cs0_code_from_data_flash)
  335. __ospi1_cs0_from_data_flash$$Limit = .;
  336. }> OSPI1_CS0 AT > DATA_FLASH
  337. /***** ITCM memory section allocations ******/
  338. /* itcm initialized from data_flash */
  339. __itcm_from_data_flash$$ : ALIGN(8)
  340. {
  341. __itcm_from_data_flash$$Base = .;__itcm_from_data_flash$$Load = LOADADDR(__itcm_from_data_flash$$);
  342. /* section.itcm.from_data_flash */
  343. *(.itcm_from_data_flash)
  344. /* section.itcm.code_from_data_flash */
  345. *(.itcm_code_from_data_flash)
  346. . = ALIGN(8);
  347. __itcm_from_data_flash$$Limit = .;
  348. }> ITCM AT > DATA_FLASH
  349. /***** DTCM memory section allocations ******/
  350. /* dtcm initialized from data_flash */
  351. __dtcm_from_data_flash$$ : ALIGN(8)
  352. {
  353. __dtcm_from_data_flash$$Base = .;__dtcm_from_data_flash$$Load = LOADADDR(__dtcm_from_data_flash$$);
  354. /* section.dtcm.from_data_flash */
  355. *(.dtcm_from_data_flash)
  356. /* section.dtcm.code_from_data_flash */
  357. *(.dtcm_code_from_data_flash)
  358. . = ALIGN(8);
  359. __dtcm_from_data_flash$$Limit = .;
  360. }> DTCM AT > DATA_FLASH
  361. /***** RAM memory section allocations ******/
  362. /* ram initialized from data_flash */
  363. __ram_from_data_flash$$ : ALIGN(4)
  364. {
  365. __ram_from_data_flash$$Base = .;__ram_from_data_flash$$Load = LOADADDR(__ram_from_data_flash$$);
  366. /* section.ram.from_data_flash */
  367. *(.ram_from_data_flash)
  368. /* section.ram.code_from_data_flash */
  369. *(.ram_code_from_data_flash)
  370. __ram_from_data_flash$$Limit = .;
  371. }> RAM AT > DATA_FLASH
  372. __data_flash_readonly$$ (READONLY) :
  373. {
  374. __data_flash_readonly$$Base = .;
  375. /* section.data_flash.readonly */
  376. *(.data_flash)
  377. /* section.data_flash.code */
  378. *(.data_flash_code)
  379. __data_flash_readonly$$Limit = .;
  380. }> DATA_FLASH
  381. __data_flash_noinit$$ (NOLOAD) :
  382. {
  383. __data_flash_noinit$$Base = .;
  384. /* section.data_flash.noinit */
  385. *(.data_flash_noinit)
  386. __data_flash_noinit$$Limit = .;
  387. }> DATA_FLASH
  388. .data_flash.endof ALIGN(.,1024) (READONLY) :
  389. {
  390. __ddsc_DATA_FLASH_END = .;
  391. }> DATA_FLASH
  392. /***** FLASH memory section allocations ******/
  393. .flash.startof (READONLY) :
  394. {
  395. __ddsc_FLASH_START = .;
  396. }> FLASH
  397. /* MCU vector table */
  398. __flash_vectors$$ (READONLY) :
  399. {
  400. __flash_vectors$$Base = .; _VECTORS = .;
  401. KEEP(*(.fixed_vectors))
  402. KEEP(*(.application_vectors))
  403. __flash_vectors$$Limit = .;
  404. /* section information for finsh shell */
  405. . = ALIGN(4);
  406. __fsymtab_start = .;
  407. KEEP(*(FSymTab))
  408. __fsymtab_end = .;
  409. . = ALIGN(4);
  410. __vsymtab_start = .;
  411. KEEP(*(VSymTab))
  412. __vsymtab_end = .;
  413. /* section information for initial. */
  414. . = ALIGN(4);
  415. __rt_init_start = .;
  416. KEEP(*(SORT(.rti_fn*)))
  417. __rt_init_end = .;
  418. . = ALIGN(4);
  419. KEEP(*(FalPartTable))
  420. }> FLASH
  421. __flash_noinit$$ (NOLOAD) :
  422. {
  423. __flash_noinit$$Base = .;
  424. /* section.flash.noinit */
  425. *(.flash_noinit)
  426. __flash_noinit$$Limit = .;
  427. }> FLASH
  428. /***** SDRAM memory section allocations ******/
  429. /* sdram initialized from flash */
  430. __sdram_from_flash$$ : ALIGN(4)
  431. {
  432. __sdram_from_flash$$Base = .;__sdram_from_flash$$Load = LOADADDR(__sdram_from_flash$$);
  433. /* section.sdram.from_flash */
  434. *(.sdram_from_flash)
  435. /* section.sdram.code_from_flash */
  436. *(.sdram_code_from_flash)
  437. __sdram_from_flash$$Limit = .;
  438. }> SDRAM AT > FLASH
  439. /* Non-initialized, non-cached sdram */
  440. __sdram_noinit_nocache$$ (NOLOAD) : ALIGN(32)
  441. {
  442. __sdram_noinit_nocache$$Base = .;
  443. /* section.sdram.noinit_nocache */
  444. *(.sdram_noinit_nocache)
  445. __sdram_noinit_nocache$$Limit = .;
  446. }> SDRAM
  447. /* Zeroed, non-cached sdram */
  448. __sdram_zero_nocache$$ (NOLOAD) :
  449. {
  450. __sdram_zero_nocache$$Base = .;
  451. /* section.sdram.zero_nocache */
  452. *(.sdram_nocache)
  453. . = ALIGN(32);
  454. __sdram_zero_nocache$$Limit = .;
  455. }> SDRAM
  456. /* Non-initialized sdram */
  457. __sdram_noinit$$ (NOLOAD) : ALIGN(4)
  458. {
  459. __sdram_noinit$$Base = .;
  460. /* section.sdram.noinit */
  461. *(.sdram_noinit)
  462. __sdram_noinit$$Limit = .;
  463. }> SDRAM
  464. /* Zeroed sdram */
  465. __sdram_zero$$ (NOLOAD) : ALIGN(4)
  466. {
  467. __sdram_zero$$Base = .;
  468. /* section.sdram.zero */
  469. *(.sdram)
  470. __sdram_zero$$Limit = .;
  471. }> SDRAM
  472. .sdram.endof ALIGN(.,512) :
  473. {
  474. __ddsc_SDRAM_END = .;
  475. }> SDRAM
  476. /***** OSPI0_CS0 memory section allocations ******/
  477. /* ospi0_cs0 initialized from flash */
  478. __ospi0_cs0_from_flash$$ : ALIGN(4)
  479. {
  480. __ospi0_cs0_from_flash$$Base = .;__ospi0_cs0_from_flash$$Load = LOADADDR(__ospi0_cs0_from_flash$$);
  481. /* section.ospi0_cs0.from_flash */
  482. *(.ospi0_cs0_from_flash)
  483. /* section.ospi0_cs0.code_from_flash */
  484. *(.ospi0_cs0_code_from_flash)
  485. __ospi0_cs0_from_flash$$Limit = .;
  486. }> OSPI0_CS0 AT > FLASH
  487. /* Non-initialized, non-cached ospi0_cs0 */
  488. __ospi0_cs0_noinit_nocache$$ (NOLOAD) : ALIGN(32)
  489. {
  490. __ospi0_cs0_noinit_nocache$$Base = .;
  491. /* section.ospi0_cs0.noinit_nocache */
  492. *(.ospi0_cs0_noinit_nocache)
  493. __ospi0_cs0_noinit_nocache$$Limit = .;
  494. }> OSPI0_CS0
  495. /* Zeroed, non-cached ospi0_cs0 */
  496. __ospi0_cs0_zero_nocache$$ (NOLOAD) :
  497. {
  498. __ospi0_cs0_zero_nocache$$Base = .;
  499. /* section.ospi0_cs0.zero_nocache */
  500. *(.ospi0_cs0_nocache)
  501. . = ALIGN(32);
  502. __ospi0_cs0_zero_nocache$$Limit = .;
  503. }> OSPI0_CS0
  504. /* Non-initialized ospi0_cs0 */
  505. __ospi0_cs0_noinit$$ (NOLOAD) : ALIGN(4)
  506. {
  507. __ospi0_cs0_noinit$$Base = .;
  508. /* section.ospi0_cs0.noinit */
  509. *(.ospi0_cs0_noinit)
  510. __ospi0_cs0_noinit$$Limit = .;
  511. }> OSPI0_CS0
  512. /* Zeroed ospi0_cs0 */
  513. __ospi0_cs0_zero$$ (NOLOAD) : ALIGN(4)
  514. {
  515. __ospi0_cs0_zero$$Base = .;
  516. /* section.ospi0_cs0.zero */
  517. *(.ospi0_cs0)
  518. __ospi0_cs0_zero$$Limit = .;
  519. }> OSPI0_CS0
  520. .ospi0_cs0.endof ALIGN(.,512) :
  521. {
  522. __ddsc_OSPI0_CS0_END = .;
  523. }> OSPI0_CS0
  524. /***** OSPI1_CS0 memory section allocations ******/
  525. /* ospi1_cs0 initialized from flash */
  526. __ospi1_cs0_from_flash$$ : ALIGN(4)
  527. {
  528. __ospi1_cs0_from_flash$$Base = .;__ospi1_cs0_from_flash$$Load = LOADADDR(__ospi1_cs0_from_flash$$);
  529. /* section.ospi1_cs0.from_flash */
  530. *(.ospi1_cs0_from_flash)
  531. /* section.ospi1_cs0.code_from_flash */
  532. *(.ospi1_cs0_code_from_flash)
  533. __ospi1_cs0_from_flash$$Limit = .;
  534. }> OSPI1_CS0 AT > FLASH
  535. /* Non-initialized, non-cached ospi1_cs0 */
  536. __ospi1_cs0_noinit_nocache$$ (NOLOAD) : ALIGN(32)
  537. {
  538. __ospi1_cs0_noinit_nocache$$Base = .;
  539. /* section.ospi1_cs0.noinit_nocache */
  540. *(.ospi1_cs0_noinit_nocache)
  541. __ospi1_cs0_noinit_nocache$$Limit = .;
  542. }> OSPI1_CS0
  543. /* Zeroed, non-cached ospi1_cs0 */
  544. __ospi1_cs0_zero_nocache$$ (NOLOAD) :
  545. {
  546. __ospi1_cs0_zero_nocache$$Base = .;
  547. /* section.ospi1_cs0.zero_nocache */
  548. *(.ospi1_cs0_nocache)
  549. . = ALIGN(32);
  550. __ospi1_cs0_zero_nocache$$Limit = .;
  551. }> OSPI1_CS0
  552. /* Non-initialized ospi1_cs0 */
  553. __ospi1_cs0_noinit$$ (NOLOAD) : ALIGN(4)
  554. {
  555. __ospi1_cs0_noinit$$Base = .;
  556. /* section.ospi1_cs0.noinit */
  557. *(.ospi1_cs0_noinit)
  558. __ospi1_cs0_noinit$$Limit = .;
  559. }> OSPI1_CS0
  560. /* Zeroed ospi1_cs0 */
  561. __ospi1_cs0_zero$$ (NOLOAD) : ALIGN(4)
  562. {
  563. __ospi1_cs0_zero$$Base = .;
  564. /* section.ospi1_cs0.zero */
  565. *(.ospi1_cs0)
  566. __ospi1_cs0_zero$$Limit = .;
  567. }> OSPI1_CS0
  568. .ospi1_cs0.endof ALIGN(.,512) :
  569. {
  570. __ddsc_OSPI1_CS0_END = .;
  571. }> OSPI1_CS0
  572. /***** ITCM memory section allocations ******/
  573. /* itcm initialized from flash */
  574. __itcm_from_flash$$ : ALIGN(8)
  575. {
  576. __itcm_from_flash$$Base = .;__itcm_from_flash$$Load = LOADADDR(__itcm_from_flash$$);
  577. /* section.itcm.from_flash */
  578. *(.itcm_from_flash)
  579. /* section.itcm.code_from_flash */
  580. *(.itcm_code_from_flash)
  581. . = ALIGN(8);
  582. __itcm_from_flash$$Limit = .;
  583. }> ITCM AT > FLASH
  584. /* Non-initialized itcm */
  585. __itcm_noinit$$ (NOLOAD) : ALIGN(8)
  586. {
  587. __itcm_noinit$$Base = .;
  588. /* section.itcm.noinit */
  589. *(.itcm_noinit)
  590. . = ALIGN(8);
  591. __itcm_noinit$$Limit = .;
  592. }> ITCM
  593. /* Zeroed itcm */
  594. __itcm_zero$$ (NOLOAD) : ALIGN(8)
  595. {
  596. __itcm_zero$$Base = .;
  597. /* section.itcm.zero */
  598. *(.itcm)
  599. . = ALIGN(8);
  600. __itcm_zero$$Limit = .;
  601. }> ITCM
  602. .itcm.endof ALIGN(.,8192) :
  603. {
  604. __ddsc_ITCM_END = .;
  605. }> ITCM
  606. /***** DTCM memory section allocations ******/
  607. /* dtcm initialized from flash */
  608. __dtcm_from_flash$$ : ALIGN(8)
  609. {
  610. __dtcm_from_flash$$Base = .;__dtcm_from_flash$$Load = LOADADDR(__dtcm_from_flash$$);
  611. /* section.dtcm.from_flash */
  612. *(.dtcm_from_flash)
  613. /* section.dtcm.code_from_flash */
  614. *(.dtcm_code_from_flash)
  615. . = ALIGN(8);
  616. __dtcm_from_flash$$Limit = .;
  617. }> DTCM AT > FLASH
  618. /* Non-initialized dtcm */
  619. __dtcm_noinit$$ (NOLOAD) : ALIGN(8)
  620. {
  621. __dtcm_noinit$$Base = .;
  622. /* section.dtcm.noinit */
  623. *(.dtcm_noinit)
  624. . = ALIGN(8);
  625. __dtcm_noinit$$Limit = .;
  626. }> DTCM
  627. /* Zeroed dtcm */
  628. __dtcm_zero$$ (NOLOAD) : ALIGN(8)
  629. {
  630. __dtcm_zero$$Base = .;
  631. /* section.dtcm.zero */
  632. *(.dtcm)
  633. . = ALIGN(8);
  634. __dtcm_zero$$Limit = .;
  635. }> DTCM
  636. .dtcm.endof ALIGN(.,8192) :
  637. {
  638. __ddsc_DTCM_END = .;
  639. }> DTCM
  640. /***** RAM memory section allocations ******/
  641. /* ram initialized from flash */
  642. __ram_from_flash$$ : ALIGN(4)
  643. {
  644. __ram_from_flash$$Base = .;__ram_from_flash$$Load = LOADADDR(__ram_from_flash$$);
  645. /* section.ram.from_flash */
  646. *(.ram_from_flash)
  647. /* section.ram.code_from_flash */
  648. *(.ram_code_from_flash)
  649. *(.data*)
  650. *(vtable)
  651. __ram_from_flash$$Limit = .;
  652. }> RAM AT > FLASH
  653. /* Non-initialized, non-cached ram */
  654. __ram_noinit_nocache$$ (NOLOAD) : ALIGN(32)
  655. {
  656. __ram_noinit_nocache$$Base = .;
  657. /* section.ram.noinit_nocache */
  658. *(.ram_noinit_nocache)
  659. __ram_noinit_nocache$$Limit = .;
  660. }> RAM
  661. /* Zeroed, non-cached ram */
  662. __ram_zero_nocache$$ (NOLOAD) :
  663. {
  664. __ram_zero_nocache$$Base = .;
  665. /* section.ram.zero_nocache */
  666. *(.ram_nocache)
  667. . = ALIGN(32);
  668. __ram_zero_nocache$$Limit = .;
  669. }> RAM
  670. /* Non-initialized ram */
  671. __ram_noinit$$ (NOLOAD) : ALIGN(4)
  672. {
  673. __ram_noinit$$Base = .;
  674. /* section.ram.noinit */
  675. *(.bss.g_heap)
  676. *(.bss.g_main_stack)
  677. *(.ram_noinit)
  678. *(.noinit)
  679. __ram_noinit$$Limit = .;
  680. }> RAM
  681. /* Zeroed ram */
  682. __ram_zero$$ (NOLOAD) : ALIGN(4)
  683. {
  684. __ram_zero$$Base = .;
  685. /* section.ram.zero */
  686. *(.ram)
  687. *(.bss*)
  688. __ram_zero$$Limit = .;
  689. }> RAM
  690. /* Thread Stacks */
  691. __ram_thread_stack$$ (NOLOAD) : ALIGN(8)
  692. {
  693. __ram_thread_stack$$Base = .;
  694. KEEP(*(.stack?*))
  695. __ram_thread_stack$$Limit = .;
  696. }> RAM
  697. .ram.endof ALIGN(.,8192) :
  698. {
  699. __ddsc_RAM_END = .;
  700. }> RAM
  701. .ram.flat_nsc :
  702. {
  703. __sau_ddsc_RAM_NSC = .;
  704. }> RAM
  705. /* This symbol represents the end of user allocated RAM. The RAM after this symbol can be used
  706. at run time for things such as ThreadX memory pool allocations. */
  707. __RAM_segment_used_end__ = ALIGN(__sau_ddsc_RAM_NSC , 4);
  708. __flash_readonly$$ (READONLY) :
  709. {
  710. __flash_readonly$$Base = .;
  711. /* section.flash.readonly */
  712. *(.flash)
  713. /* section.flash.code */
  714. *(.flash_code)
  715. *(.text*)
  716. *(.rodata*)
  717. KEEP(*(.mcuboot_sce9_key))
  718. KEEP(*(.version))
  719. __flash_readonly$$Limit = .;
  720. }> FLASH
  721. __flash_ctor$$ (READONLY) :
  722. {
  723. *crtbegin.o(.ctors)
  724. *crtbegin?.o(.ctors)
  725. EXCLUDE_FILE (*crtend?.o *crtend.o) *(.ctors)
  726. *(SORT(.ctors.*))
  727. *(.ctors)
  728. *crtbegin.o(.dtors)
  729. *crtbegin?.o(.dtors)
  730. EXCLUDE_FILE (*crtend?.o *crtend.o) *(.dtors)
  731. *(SORT(.dtors.*))
  732. *(.dtors)
  733. }> FLASH
  734. __flash_preinit_array$$ (READONLY) : ALIGN(4)
  735. {
  736. __preinit_array_start = .;
  737. KEEP(*(.preinit_array))
  738. __preinit_array_end = .;
  739. }> FLASH
  740. __flash_.got$$ (READONLY) :
  741. {
  742. *(.got.plt)
  743. *(.got)
  744. }> FLASH
  745. __flash_init_array$$ (READONLY) : ALIGN(4)
  746. {
  747. __init_array_start = .;
  748. KEEP(*(SORT(.init_array.*)))
  749. KEEP(*(.init_array))
  750. __init_array_end = .;
  751. }> FLASH
  752. __flash_fini_array$$ (READONLY) : ALIGN(4)
  753. {
  754. __fini_array_start = .;
  755. KEEP(*(SORT(.fini_array.*)))
  756. KEEP(*(.fini_array))
  757. __fini_array_end = .;
  758. }> FLASH
  759. /* Discard exception tables */
  760. /DISCARD/ (READONLY) :
  761. {
  762. *(.ARM.extab*)
  763. *(.gnu.linkonce.armextab.*)
  764. *(.ARM.exidx*)
  765. *(.gnu.linkonce.armexidx.*)
  766. }> FLASH
  767. /* Dummy section to hold required exidx labels */
  768. __flash_arm.exidx$$ (READONLY) :
  769. {
  770. __exidx_start = .;
  771. __exidx_end = .;
  772. }> FLASH
  773. .flash.endof ALIGN(.,32768) (READONLY) :
  774. {
  775. __ddsc_FLASH_END = .;
  776. }> FLASH
  777. .flash.flat_nsc (READONLY) :
  778. {
  779. __sau_ddsc_FLASH_NSC = .;
  780. }> FLASH
  781. /***** OPTION_SETTING_OFS0 memory section allocations ******/
  782. .option_setting_ofs0.startof (READONLY) :
  783. {
  784. __ddsc_OPTION_SETTING_OFS0_START = .;
  785. }> OPTION_SETTING_OFS0
  786. /* Option Function Select Register 0 */
  787. __option_setting_ofs0_reg$$ (READONLY) :
  788. {
  789. __option_setting_ofs0_reg$$Base = .;
  790. KEEP(*(.option_setting_ofs0))
  791. __option_setting_ofs0_reg$$Limit = .;
  792. }> OPTION_SETTING_OFS0
  793. .option_setting_ofs0.endof (READONLY) :
  794. {
  795. __ddsc_OPTION_SETTING_OFS0_END = .;
  796. }> OPTION_SETTING_OFS0
  797. /***** OPTION_SETTING_OFS2 memory section allocations ******/
  798. .option_setting_ofs2.startof (READONLY) :
  799. {
  800. __ddsc_OPTION_SETTING_OFS2_START = .;
  801. }> OPTION_SETTING_OFS2
  802. /* Option Function Select Register 2 */
  803. __option_setting_ofs2_reg$$ (READONLY) :
  804. {
  805. __option_setting_ofs2_reg$$Base = .;
  806. KEEP(*(.option_setting_ofs2))
  807. __option_setting_ofs2_reg$$Limit = .;
  808. }> OPTION_SETTING_OFS2
  809. .option_setting_ofs2.endof (READONLY) :
  810. {
  811. __ddsc_OPTION_SETTING_OFS2_END = .;
  812. }> OPTION_SETTING_OFS2
  813. /***** OPTION_SETTING_SAS memory section allocations ******/
  814. .option_setting_sas.startof (READONLY) :
  815. {
  816. __ddsc_OPTION_SETTING_SAS_START = .;
  817. }> OPTION_SETTING_SAS
  818. /* Startup Area Setting Register */
  819. __option_setting_sas_reg$$ (READONLY) :
  820. {
  821. __option_setting_sas_reg$$Base = .;
  822. KEEP(*(.option_setting_sas))
  823. __option_setting_sas_reg$$Limit = .;
  824. }> OPTION_SETTING_SAS
  825. .option_setting_sas.endof (READONLY) :
  826. {
  827. __ddsc_OPTION_SETTING_SAS_END = .;
  828. }> OPTION_SETTING_SAS
  829. /***** OPTION_SETTING_OFS1 memory section allocations ******/
  830. .option_setting_ofs1.startof (READONLY) :
  831. {
  832. __ddsc_OPTION_SETTING_OFS1_START = .;
  833. }> OPTION_SETTING_OFS1
  834. /* Option Function Select Register 1 */
  835. __option_setting_ofs1_reg$$ (READONLY) :
  836. {
  837. __option_setting_ofs1_reg$$Base = .;
  838. KEEP(*(.option_setting_ofs1))
  839. __option_setting_ofs1_reg$$Limit = .;
  840. }> OPTION_SETTING_OFS1
  841. .option_setting_ofs1.endof (READONLY) :
  842. {
  843. __ddsc_OPTION_SETTING_OFS1_END = .;
  844. }> OPTION_SETTING_OFS1
  845. /***** OPTION_SETTING_OFS1_SEC memory section allocations ******/
  846. .option_setting_ofs1_sec.startof (READONLY) :
  847. {
  848. __ddsc_OPTION_SETTING_OFS1_SEC_START = .;
  849. }> OPTION_SETTING_OFS1_SEC
  850. /* Option Function Select Register 1 Secure */
  851. __option_setting_ofs1_sec_reg$$ (READONLY) :
  852. {
  853. __option_setting_ofs1_sec_reg$$Base = .;
  854. KEEP(*(.option_setting_ofs1_sec))
  855. __option_setting_ofs1_sec_reg$$Limit = .;
  856. }> OPTION_SETTING_OFS1_SEC
  857. .option_setting_ofs1_sec.endof (READONLY) :
  858. {
  859. __ddsc_OPTION_SETTING_OFS1_SEC_END = .;
  860. }> OPTION_SETTING_OFS1_SEC
  861. /***** OPTION_SETTING_OFS1_SEL memory section allocations ******/
  862. .option_setting_ofs1_sel.startof (READONLY) :
  863. {
  864. __ddsc_OPTION_SETTING_OFS1_SEL_START = .;
  865. }> OPTION_SETTING_OFS1_SEL
  866. /* OFS1 Register Select */
  867. __option_setting_ofs1_sel_reg$$ (READONLY) :
  868. {
  869. __option_setting_ofs1_sel_reg$$Base = .;
  870. KEEP(*(.option_setting_ofs1_sel))
  871. __option_setting_ofs1_sel_reg$$Limit = .;
  872. }> OPTION_SETTING_OFS1_SEL
  873. .option_setting_ofs1_sel.endof (READONLY) :
  874. {
  875. __ddsc_OPTION_SETTING_OFS1_SEL_END = .;
  876. }> OPTION_SETTING_OFS1_SEL
  877. /***** OPTION_SETTING_OFS3 memory section allocations ******/
  878. .option_setting_ofs3.startof (READONLY) :
  879. {
  880. __ddsc_OPTION_SETTING_OFS3_START = .;
  881. }> OPTION_SETTING_OFS3
  882. /* Option Function Select Register 3 */
  883. __option_setting_ofs3_reg$$ (READONLY) :
  884. {
  885. __option_setting_ofs3_reg$$Base = .;
  886. KEEP(*(.option_setting_ofs3))
  887. __option_setting_ofs3_reg$$Limit = .;
  888. }> OPTION_SETTING_OFS3
  889. .option_setting_ofs3.endof (READONLY) :
  890. {
  891. __ddsc_OPTION_SETTING_OFS3_END = .;
  892. }> OPTION_SETTING_OFS3
  893. /***** OPTION_SETTING_OFS3_SEC memory section allocations ******/
  894. .option_setting_ofs3_sec.startof (READONLY) :
  895. {
  896. __ddsc_OPTION_SETTING_OFS3_SEC_START = .;
  897. }> OPTION_SETTING_OFS3_SEC
  898. /* Option Function Select Register 3 Secure */
  899. __option_setting_ofs3_sec_reg$$ (READONLY) :
  900. {
  901. __option_setting_ofs3_sec_reg$$Base = .;
  902. KEEP(*(.option_setting_ofs3_sec))
  903. __option_setting_ofs3_sec_reg$$Limit = .;
  904. }> OPTION_SETTING_OFS3_SEC
  905. .option_setting_ofs3_sec.endof (READONLY) :
  906. {
  907. __ddsc_OPTION_SETTING_OFS3_SEC_END = .;
  908. }> OPTION_SETTING_OFS3_SEC
  909. /***** OPTION_SETTING_OFS3_SEL memory section allocations ******/
  910. .option_setting_ofs3_sel.startof (READONLY) :
  911. {
  912. __ddsc_OPTION_SETTING_OFS3_SEL_START = .;
  913. }> OPTION_SETTING_OFS3_SEL
  914. /* OFS3 Register Select */
  915. __option_setting_ofs3_sel_reg$$ (READONLY) :
  916. {
  917. __option_setting_ofs3_sel_reg$$Base = .;
  918. KEEP(*(.option_setting_ofs3_sel))
  919. __option_setting_ofs3_sel_reg$$Limit = .;
  920. }> OPTION_SETTING_OFS3_SEL
  921. .option_setting_ofs3_sel.endof (READONLY) :
  922. {
  923. __ddsc_OPTION_SETTING_OFS3_SEL_END = .;
  924. }> OPTION_SETTING_OFS3_SEL
  925. /***** OPTION_SETTING_BPS memory section allocations ******/
  926. .option_setting_bps.startof (READONLY) :
  927. {
  928. __ddsc_OPTION_SETTING_BPS_START = .;
  929. }> OPTION_SETTING_BPS
  930. /* Block Protect Setting Register */
  931. __option_setting_bps_reg$$ (READONLY) :
  932. {
  933. __option_setting_bps_reg$$Base = .;
  934. KEEP(*(.option_setting_bps))
  935. __option_setting_bps_reg$$Limit = .;
  936. }> OPTION_SETTING_BPS
  937. .option_setting_bps.endof (READONLY) :
  938. {
  939. __ddsc_OPTION_SETTING_BPS_END = .;
  940. }> OPTION_SETTING_BPS
  941. /***** OPTION_SETTING_BPS_SEC memory section allocations ******/
  942. .option_setting_bps_sec.startof (READONLY) :
  943. {
  944. __ddsc_OPTION_SETTING_BPS_SEC_START = .;
  945. }> OPTION_SETTING_BPS_SEC
  946. /* Block Protect Setting Register Secure */
  947. __option_setting_bps_sec_reg$$ (READONLY) :
  948. {
  949. __option_setting_bps_sec_reg$$Base = .;
  950. KEEP(*(.option_setting_bps_sec))
  951. __option_setting_bps_sec_reg$$Limit = .;
  952. }> OPTION_SETTING_BPS_SEC
  953. .option_setting_bps_sec.endof (READONLY) :
  954. {
  955. __ddsc_OPTION_SETTING_BPS_SEC_END = .;
  956. }> OPTION_SETTING_BPS_SEC
  957. /***** OPTION_SETTING_OTP_PBPS_SEC memory section allocations ******/
  958. .option_setting_otp_pbps_sec.startof (READONLY) :
  959. {
  960. __ddsc_OPTION_SETTING_OTP_PBPS_SEC_START = .;
  961. }> OPTION_SETTING_OTP_PBPS_SEC
  962. /* Permanent Block Protect Setting Register Secure */
  963. __option_setting_otp_pbps_sec_reg$$ (READONLY) :
  964. {
  965. __option_setting_otp_pbps_sec_reg$$Base = .;
  966. KEEP(*(.option_setting_otp_pbps_sec))
  967. __option_setting_otp_pbps_sec_reg$$Limit = .;
  968. }> OPTION_SETTING_OTP_PBPS_SEC
  969. .option_setting_otp_pbps_sec.endof (READONLY) :
  970. {
  971. __ddsc_OPTION_SETTING_OTP_PBPS_SEC_END = .;
  972. }> OPTION_SETTING_OTP_PBPS_SEC
  973. /***** OPTION_SETTING_OTP_PBPS memory section allocations ******/
  974. .option_setting_otp_pbps.startof (READONLY) :
  975. {
  976. __ddsc_OPTION_SETTING_OTP_PBPS_START = .;
  977. }> OPTION_SETTING_OTP_PBPS
  978. /* Permanent Block Protect Setting Register */
  979. __option_setting_otp_pbps_reg$$ (READONLY) :
  980. {
  981. __option_setting_otp_pbps_reg$$Base = .;
  982. KEEP(*(.option_setting_otp_pbps))
  983. __option_setting_otp_pbps_reg$$Limit = .;
  984. }> OPTION_SETTING_OTP_PBPS
  985. .option_setting_otp_pbps.endof (READONLY) :
  986. {
  987. __ddsc_OPTION_SETTING_OTP_PBPS_END = .;
  988. }> OPTION_SETTING_OTP_PBPS
  989. }