l4.cmake 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. set(STM32_L4_TYPES
  2. L412xx L422xx L431xx L432xx L433xx L442xx
  3. L443xx L451xx L452xx L462xx L471xx L475xx
  4. L476xx L485xx L486xx L496xx L4A6xx L4P5xx
  5. L4Q5xx L4R5xx L4R7xx L4R9xx L4S5xx L4S7xx
  6. L4S9xx
  7. )
  8. set(STM32_L4_TYPE_MATCH
  9. "L412.." "L422.." "L431.." "L432.." "L433.." "L442.."
  10. "L443.." "L451.." "L452.." "L462.." "L471.." "L475.."
  11. "L476.." "L485.." "L486.." "L496.." "L4A6.." "L4P5.."
  12. "L4Q5.." "L4R5.." "L4R7.." "L4R9.." "L4S5.." "L4S7.."
  13. "L4S9.."
  14. )
  15. set(STM32_L4_RAM_SIZES
  16. 40K 40K 64K 64K 64K 64K
  17. 64K 160K 160K 160K 96K 96K
  18. 96K 96K 96K 320K 320K 320K
  19. 320K 640K 640K 640K 640K 640K
  20. 640K
  21. )
  22. # on devices where CCRAM is remapped to be contiguous with RAM it is included into RAM section
  23. # If you want to have dedicated section then you will need to use custom linker script
  24. set(STM32_L4_CCRAM_SIZES
  25. 0K 0K 0K 0K 0K 0K
  26. 0K 0K 0K 0K 32K 32K
  27. 32K 32K 32K 0K 0K 0K
  28. 0K 0K 0K 0K 0K 0K
  29. 0K
  30. )
  31. stm32_util_create_family_targets(L4)
  32. target_compile_options(STM32::L4 INTERFACE
  33. -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard
  34. )
  35. target_link_options(STM32::L4 INTERFACE
  36. -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard
  37. )
  38. list(APPEND STM32_ALL_DEVICES
  39. L412C8
  40. L412CB
  41. L412K8
  42. L412KB
  43. L412R8
  44. L412RB
  45. L412T8
  46. L412TB
  47. L422CB
  48. L422KB
  49. L422RB
  50. L422TB
  51. L431CB
  52. L431CC
  53. L431KB
  54. L431KC
  55. L431RB
  56. L431RC
  57. L431VC
  58. L432KB
  59. L432KC
  60. L433CB
  61. L433CC
  62. L433RB
  63. L433RC
  64. L433VC
  65. L442KC
  66. L443CC
  67. L443RC
  68. L443VC
  69. L451CC
  70. L451CE
  71. L451RC
  72. L451RE
  73. L451VC
  74. L451VE
  75. L452CC
  76. L452CE
  77. L452RC
  78. L452RE
  79. L452VC
  80. L452VE
  81. L462CE
  82. L462RE
  83. L462VE
  84. L471QE
  85. L471QG
  86. L471RE
  87. L471RG
  88. L471VE
  89. L471VG
  90. L471ZE
  91. L471ZG
  92. L475RC
  93. L475RE
  94. L475RG
  95. L475VC
  96. L475VE
  97. L475VG
  98. L476JE
  99. L476JG
  100. L476ME
  101. L476MG
  102. L476QE
  103. L476QG
  104. L476RC
  105. L476RE
  106. L476RG
  107. L476VC
  108. L476VE
  109. L476VG
  110. L476ZE
  111. L476ZG
  112. L486JG
  113. L486QG
  114. L486RG
  115. L486VG
  116. L486ZG
  117. L496AE
  118. L496AG
  119. L496QE
  120. L496QG
  121. L496RE
  122. L496RG
  123. L496VE
  124. L496VG
  125. L496ZE
  126. L496ZG
  127. L4A6AG
  128. L4A6QG
  129. L4A6RG
  130. L4A6VG
  131. L4A6ZG
  132. L4P5AE
  133. L4P5AG
  134. L4P5CE
  135. L4P5CG
  136. L4P5QE
  137. L4P5QG
  138. L4P5RE
  139. L4P5RG
  140. L4P5VE
  141. L4P5VG
  142. L4P5ZE
  143. L4P5ZG
  144. L4Q5AG
  145. L4Q5CG
  146. L4Q5QG
  147. L4Q5RG
  148. L4Q5VG
  149. L4Q5ZG
  150. L4R5AG
  151. L4R5AI
  152. L4R5QG
  153. L4R5QI
  154. L4R5VG
  155. L4R5VI
  156. L4R5ZG
  157. L4R5ZI
  158. L4R7AI
  159. L4R7VI
  160. L4R7ZI
  161. L4R9AG
  162. L4R9AI
  163. L4R9VG
  164. L4R9VI
  165. L4R9ZG
  166. L4R9ZI
  167. L4S5AI
  168. L4S5QI
  169. L4S5VI
  170. L4S5ZI
  171. L4S7AI
  172. L4S7VI
  173. L4S7ZI
  174. L4S9AI
  175. L4S9VI
  176. L4S9ZI
  177. )
  178. list(APPEND STM32_SUPPORTED_FAMILIES_LONG_NAME
  179. STM32L4
  180. )
  181. list(APPEND STM32_FETCH_FAMILIES L4)
  182. set(CUBE_L4_VERSION v1.17.0)
  183. set(CMSIS_L4_VERSION v1.7.1)
  184. set(HAL_L4_VERSION v1.13.0)