Config.in 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800
  1. menu "Platform Selection"
  2. choice ADK_FROSTED_ARCH
  3. prompt "Architecture"
  4. default ADK_FROSTED_ARCH_LM3S
  5. config ADK_FROSTED_ARCH_LM3S
  6. bool "LM3S"
  7. help
  8. Enable support for Stellaris LM3S systems
  9. config ADK_FROSTED_ARCH_LPC17XX
  10. bool "LPC17XX"
  11. help
  12. Enable support for NXP LPC17xx systems
  13. config ADK_FROSTED_ARCH_STM32F4
  14. bool "STM32F4"
  15. help
  16. Enable support for ST STM32F4 systems
  17. config ADK_FROSTED_ARCH_STM32F7
  18. bool "STM32F7"
  19. help
  20. Enable support for ST STM32F7 systems
  21. endchoice
  22. if ADK_FROSTED_ARCH_STM32F7
  23. choice
  24. prompt "MCU"
  25. default ADK_FROSTED_ARCH_STM32F746_NG
  26. config ADK_FROSTED_ARCH_STM32F746_NG
  27. bool "STM32F746NG 1MB"
  28. select ADK_FROSTED_FLASH_SIZE_1MB
  29. select ADK_FROSTED_RAM_SIZE_320KB
  30. select ADK_FROSTED_ARCH_STM32F746
  31. config ADK_FROSTED_ARCH_STM32F769_NI
  32. bool "STM32F769NI 2MB"
  33. select ADK_FROSTED_FLASH_SIZE_2MB
  34. select ADK_FROSTED_RAM_SIZE_368KB
  35. select ADK_FROSTED_ARCH_STM32F769
  36. endchoice
  37. endif
  38. if ADK_FROSTED_ARCH_STM32F4
  39. choice
  40. prompt "MCU"
  41. default ADK_FROSTED_ARCH_STM32F407_XG
  42. config ADK_FROSTED_ARCH_STM32F401_XB
  43. bool "STM32F401xB 128KB"
  44. select ADK_FROSTED_FLASH_SIZE_128KB
  45. select ADK_FROSTED_RAM_SIZE_64KB
  46. select ADK_FROSTED_ARCH_STM32F401
  47. config ADK_FROSTED_ARCH_STM32F401_XC
  48. bool "STM32F401xC 256KB"
  49. select ADK_FROSTED_FLASH_SIZE_256KB
  50. select ADK_FROSTED_RAM_SIZE_64KB
  51. select ADK_FROSTED_ARCH_STM32F401
  52. config ADK_FROSTED_ARCH_STM32F401_XD
  53. bool "STM32F401xD 384KB"
  54. select ADK_FROSTED_FLASH_SIZE_384KB
  55. select ADK_FROSTED_RAM_SIZE_96KB
  56. select ADK_FROSTED_ARCH_STM32F401
  57. config ADK_FROSTED_ARCH_STM32F401_XE
  58. bool "STM32F401xE 512KB"
  59. select ADK_FROSTED_FLASH_SIZE_512KB
  60. select ADK_FROSTED_RAM_SIZE_96KB
  61. select ADK_FROSTED_ARCH_STM32F401
  62. config ADK_FROSTED_ARCH_STM32F405_XG
  63. bool "STM32F405xG 1MB"
  64. select ADK_FROSTED_FLASH_SIZE_1MB
  65. select ADK_FROSTED_RAM_SIZE_192KB
  66. select ADK_FROSTED_ARCH_STM32F405
  67. config ADK_FROSTED_ARCH_STM32F405_XE
  68. bool "STM32F407xE 512KB"
  69. select ADK_FROSTED_FLASH_SIZE_512KB
  70. select ADK_FROSTED_RAM_SIZE_192KB
  71. select ADK_FROSTED_ARCH_STM32F405
  72. config ADK_FROSTED_ARCH_STM32F407_XG
  73. bool "STM32F407xG 1MB"
  74. select ADK_FROSTED_FLASH_SIZE_1MB
  75. select ADK_FROSTED_RAM_SIZE_192KB
  76. select ADK_FROSTED_ARCH_STM32F407
  77. config ADK_FROSTED_ARCH_STM32F407_XE
  78. bool "STM32F407xE 512KB"
  79. select ADK_FROSTED_FLASH_SIZE_512KB
  80. select ADK_FROSTED_RAM_SIZE_192KB
  81. select ADK_FROSTED_ARCH_STM32F407
  82. config ADK_FROSTED_ARCH_STM32F411_XE
  83. bool "STM32F411xE 512KB"
  84. select ADK_FROSTED_FLASH_SIZE_512KB
  85. select ADK_FROSTED_RAM_SIZE_128KB
  86. select ADK_FROSTED_ARCH_STM32F411
  87. config ADK_FROSTED_ARCH_STM32F411_XC
  88. bool "STM32F411xC 256KB"
  89. select ADK_FROSTED_FLASH_SIZE_256KB
  90. select ADK_FROSTED_RAM_SIZE_128KB
  91. select ADK_FROSTED_ARCH_STM32F411
  92. config ADK_FROSTED_ARCH_STM32F429_XE
  93. bool "STM32F429xE 512KB"
  94. select ADK_FROSTED_FLASH_SIZE_512KB
  95. select ADK_FROSTED_RAM_SIZE_256KB
  96. select ADK_FROSTED_ARCH_STM32F429
  97. config ADK_FROSTED_ARCH_STM32F429_XG
  98. bool "STM32F429xG 1MB"
  99. select ADK_FROSTED_FLASH_SIZE_1MB
  100. select ADK_FROSTED_RAM_SIZE_256KB
  101. select ADK_FROSTED_ARCH_STM32F429
  102. config ADK_FROSTED_ARCH_STM32F429_XI
  103. bool "STM32F429xI 2MB"
  104. select ADK_FROSTED_FLASH_SIZE_2MB
  105. select ADK_FROSTED_RAM_SIZE_256KB
  106. select ADK_FROSTED_ARCH_STM32F429
  107. config ADK_FROSTED_ARCH_STM32F446_ZE
  108. bool "STM32F446ZE 512KB"
  109. select ADK_FROSTED_FLASH_SIZE_512KB
  110. select ADK_FROSTED_RAM_SIZE_128KB
  111. select ADK_FROSTED_ARCH_STM32F446
  112. endchoice
  113. endif
  114. if ADK_FROSTED_ARCH_LPC17XX
  115. choice
  116. prompt "MCU"
  117. default ADK_FROSTED_ARCH_LPC1768
  118. config ADK_FROSTED_ARCH_LPC1763
  119. bool "LPC1763"
  120. select ADK_FROSTED_FLASH_SIZE_256KB
  121. select ADK_FROSTED_RAM_SIZE_32KB
  122. select ADK_FROSTED_CLK_100MHZ
  123. config ADK_FROSTED_ARCH_LPC1764
  124. bool "LPC1764"
  125. select ADK_FROSTED_FLASH_SIZE_128KB
  126. select ADK_FROSTED_RAM_SIZE_16KB
  127. select ADK_FROSTED_CLK_100MHZ
  128. config ADK_FROSTED_ARCH_LPC1765
  129. bool "LPC1765"
  130. select ADK_FROSTED_FLASH_SIZE_256KB
  131. select ADK_FROSTED_RAM_SIZE_32KB
  132. select ADK_FROSTED_CLK_100MHZ
  133. config ADK_FROSTED_ARCH_LPC1766
  134. bool "LPC1766"
  135. select ADK_FROSTED_FLASH_SIZE_256KB
  136. select ADK_FROSTED_RAM_SIZE_32KB
  137. select ADK_FROSTED_CLK_100MHZ
  138. config ADK_FROSTED_ARCH_LPC1767
  139. bool "LPC1767"
  140. select ADK_FROSTED_FLASH_SIZE_512KB
  141. select ADK_FROSTED_RAM_SIZE_32KB
  142. select ADK_FROSTED_CLK_100MHZ
  143. config ADK_FROSTED_ARCH_LPC1768
  144. bool "LPC1768"
  145. select ADK_FROSTED_FLASH_SIZE_512KB
  146. select ADK_FROSTED_RAM_SIZE_32KB
  147. select ADK_FROSTED_CLK_100MHZ
  148. config ADK_FROSTED_ARCH_LPC1769
  149. bool "LPC1769"
  150. select ADK_FROSTED_FLASH_SIZE_512KB
  151. select ADK_FROSTED_RAM_SIZE_32KB
  152. endchoice
  153. endif
  154. if ADK_FROSTED_ARCH_LM3S
  155. choice
  156. prompt "MCU"
  157. default ADK_FROSTED_LM3S6965
  158. config ADK_FROSTED_ARCH_LM3S6965
  159. bool "LM3S6965"
  160. select ADK_FROSTED_FLASH_SIZE_256KB
  161. select ADK_FROSTED_RAM_SIZE_64KB
  162. config ADK_FROSTED_ARCH_LM3SVIRT
  163. bool "LM3S-VIRTUAL"
  164. select ADK_FROSTED_FLASH_SIZE_1MB
  165. select ADK_FROSTED_RAM_SIZE_256KB
  166. endchoice
  167. endif
  168. config ADK_FROSTED_FLASH_SIZE_2MB
  169. bool
  170. config ADK_FROSTED_FLASH_SIZE_1MB
  171. bool
  172. config ADK_FROSTED_FLASH_SIZE_512KB
  173. bool
  174. config ADK_FROSTED_FLASH_SIZE_384KB
  175. bool
  176. config ADK_FROSTED_FLASH_SIZE_256KB
  177. bool
  178. config ADK_FROSTED_FLASH_SIZE_128KB
  179. bool
  180. config ADK_FROSTED_RAM_SIZE_368KB
  181. bool
  182. config ADK_FROSTED_RAM_SIZE_320KB
  183. bool
  184. config ADK_FROSTED_RAM_SIZE_256KB
  185. bool
  186. config ADK_FROSTED_RAM_SIZE_192KB
  187. bool
  188. config ADK_FROSTED_RAM_SIZE_128KB
  189. bool
  190. config ADK_FROSTED_RAM_SIZE_96KB
  191. bool
  192. config ADK_FROSTED_RAM_SIZE_64KB
  193. bool
  194. config ADK_FROSTED_RAM_SIZE_32KB
  195. bool
  196. config ADK_FROSTED_RAM_SIZE_16KB
  197. bool
  198. config ADK_FROSTED_ARCH_STM32F401
  199. bool
  200. config ADK_FROSTED_ARCH_STM32F405
  201. bool
  202. config ADK_FROSTED_ARCH_STM32F407
  203. bool
  204. config ADK_FROSTED_ARCH_STM32F411
  205. bool
  206. config ADK_FROSTED_ARCH_STM32F429
  207. bool
  208. config ADK_FROSTED_ARCH_STM32F446
  209. bool
  210. config ADK_FROSTED_ARCH_STM32F746
  211. bool
  212. config ADK_FROSTED_ARCH_STM32F769
  213. bool
  214. config ADK_FROSTED_DEVSTM32DMA
  215. bool
  216. #Temp hack to allow '407 & '411 clock setups to coexist
  217. choice
  218. prompt "Clock Speed"
  219. config ADK_FROSTED_CLK_48MHZ
  220. bool "48MHz"
  221. depends on (ADK_FROSTED_ARCH_STM32F401 || ADK_FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F429)
  222. config ADK_FROSTED_CLK_84MHZ
  223. bool "84MHz"
  224. depends on (ADK_FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F429)
  225. config ADK_FROSTED_CLK_100MHZ
  226. bool "100MHz"
  227. depends on ADK_FROSTED_ARCH_LPC17XX
  228. config ADK_FROSTED_CLK_120MHZ
  229. bool "120MHz"
  230. depends on (ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_LPC1769)
  231. config ADK_FROSTED_CLK_168MHZ
  232. bool "168MHz"
  233. depends on (ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429)
  234. config ADK_FROSTED_CLK_180MHZ
  235. bool "180MHz"
  236. depends on (ADK_FROSTED_ARCH_STM32F446)
  237. config ADK_FROSTED_CLK_216MHZ
  238. bool "216MHZ"
  239. depends on (ADK_FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769)
  240. endchoice
  241. choice
  242. prompt "Board"
  243. config ADK_FROSTED_MACH_STM32F746Discovery
  244. bool "STM32F746 Discovery"
  245. depends on (ADK_FROSTED_ARCH_STM32F746)
  246. config ADK_FROSTED_MACH_STM32F769Discovery
  247. bool "STM32F769 Discovery"
  248. depends on (ADK_FROSTED_ARCH_STM32F769)
  249. config ADK_FROSTED_MACH_STM32F746Nucleo144
  250. bool "STM32F746 Nucleo-144"
  251. depends on (ADK_FROSTED_ARCH_STM32F746)
  252. config ADK_FROSTED_MACH_STM32F407Discovery
  253. bool "STM32F407Discovery"
  254. depends on (ADK_FROSTED_ARCH_STM32F407)
  255. config ADK_FROSTED_MACH_STM32F405Pyboard
  256. bool "STM32F405 PyBoard (micropython)"
  257. depends on (ADK_FROSTED_ARCH_STM32F405)
  258. config ADK_FROSTED_MACH_STM32F4x1Discovery
  259. bool "STM32F4x1Discovery"
  260. depends on ( ADK_FROSTED_ARCH_STM32F401 ||ADK_FROSTED_ARCH_STM32F411)
  261. config ADK_FROSTED_MACH_STM32F429Discovery
  262. bool "STM32F429Discovery"
  263. depends on (ADK_FROSTED_ARCH_STM32F429)
  264. config ADK_FROSTED_MACH_STM32F446Nucleo
  265. bool "STM32F446 Nucleo"
  266. depends on (ADK_FROSTED_ARCH_STM32F446)
  267. config ADK_FROSTED_MACH_LPC1768MBED
  268. bool "LPC1768MBED"
  269. depends on ADK_FROSTED_ARCH_LPC1768
  270. config ADK_FROSTED_MACH_SEEEDPRO
  271. bool "SEEEDPRO"
  272. depends on ADK_FROSTED_ARCH_LPC1768
  273. config ADK_FROSTED_MACH_LPC1679XPRESSO
  274. bool "LPC1679XPRESSO"
  275. depends on ADK_FROSTED_ARCH_LPC1769
  276. config ADK_FROSTED_MACH_LM3S6965EVB
  277. bool "lm3s6965evb"
  278. depends on ADK_FROSTED_ARCH_LM3S6965
  279. config ADK_FROSTED_MACH_LM3SVIRT
  280. bool "lm3s-qemu"
  281. depends on ADK_FROSTED_ARCH_LM3SVIRT
  282. endchoice
  283. config ADK_FROSTED_STM32F7_SDRAM
  284. depends on ADK_FROSTED_ARCH_STM32F7
  285. bool "Enable external SDRAM"
  286. default y
  287. config ADK_FROSTED_STM32F4_SDRAM
  288. depends on ADK_FROSTED_ARCH_STM32F4
  289. bool "Enable external SDRAM"
  290. default n
  291. endmenu
  292. menu "Kernel Configuration"
  293. config ADK_FROSTED_KFLASHMEM_SIZE
  294. int "Kernel Flash size (KB)"
  295. default 64
  296. config ADK_FROSTED_KRAMMEM_SIZE
  297. int "Kernel RAM size (KB)"
  298. default 64
  299. choice
  300. prompt "Tasks Stack Size"
  301. default ADK_FROSTED_TASK_STACK_SIZE_2K
  302. config ADK_FROSTED_TASK_STACK_SIZE_1K
  303. bool "Tiny stack (1024 Bytes)"
  304. config ADK_FROSTED_TASK_STACK_SIZE_2K
  305. bool "Small stack (2048 Bytes)"
  306. config ADK_FROSTED_TASK_STACK_SIZE_4K
  307. bool "Big stack (4096 Bytes)"
  308. config ADK_FROSTED_TASK_STACK_SIZE_8K
  309. bool "Huge stack (8192 Bytes)"
  310. endchoice
  311. config ADK_FROSTED_MPU
  312. bool "Run-time Memory Protection"
  313. default y
  314. config ADK_FROSTED_PTHREADS
  315. bool "POSIX Threads (pthreads)"
  316. default y
  317. config ADK_FROSTED_SIGNALS
  318. bool "Process Signals"
  319. default y
  320. config ADK_FROSTED_PIPE
  321. bool "Pipe"
  322. default y
  323. config ADK_FROSTED_SOCK_UNIX
  324. bool "UNIX Sockets for IPC"
  325. default n
  326. endmenu
  327. menu "Debugging options"
  328. config ADK_FROSTED_KLOG
  329. bool "Enable kernel logging"
  330. default y
  331. config ADK_FROSTED_KLOG_SIZE
  332. depends on ADK_FROSTED_KLOG
  333. int "Kernel log buffer size"
  334. default 256
  335. config ADK_FROSTED_MEMFAULT_DBG
  336. bool "Enable extended segfault debug"
  337. default y
  338. config ADK_FROSTED_HARDFAULT_DBG
  339. bool "Enable extended hardfault debug"
  340. default n
  341. config ADK_FROSTED_STRACE
  342. bool "Enable syscall tracer"
  343. default n
  344. endmenu
  345. menu "Filesystems"
  346. config ADK_FROSTED_SYSFS
  347. bool "SysFS (/sys)"
  348. default y
  349. config ADK_FROSTED_MEMFS
  350. bool "MemFS"
  351. default y
  352. config ADK_FROSTED_XIPFS
  353. bool "Xip FS"
  354. default y
  355. config ADK_FROSTED_FATFS
  356. bool "Fat FS"
  357. default n
  358. config ADK_FROSTED_FAT32
  359. depends on ADK_FROSTED_FATFS
  360. bool "Fat32 support"
  361. default n
  362. config ADK_FROSTED_FAT16
  363. depends on ADK_FROSTED_FATFS
  364. bool "Fat16 support"
  365. default y
  366. endmenu
  367. menu "Networking"
  368. config ADK_FROSTED_SOCK_INET
  369. bool "TCP/IP Socket support"
  370. default n
  371. config ADK_FROSTED_TCPIP_MEMPOOL_YN
  372. bool "Separate memory pool for TCP/IP stack"
  373. default n
  374. if ADK_FROSTED_TCPIP_MEMPOOL_YN
  375. config ADK_FROSTED_TCPIP_MEMPOOL
  376. string "TCP/IP pool base address"
  377. default "0x10000000"
  378. endif
  379. choice ADK_FROSTED_NET_STACK
  380. prompt "TCP/IP stack selection"
  381. default ADK_FROSTED_PICOTCP
  382. depends on ADK_FROSTED_SOCK_INET
  383. config ADK_FROSTED_PICOTCP
  384. bool "Built-in PicoTCP"
  385. endchoice
  386. if ADK_FROSTED_PICOTCP
  387. menu "picoTCP configuration"
  388. config ADK_FROSTED_CONFIG_PICOTCP_IPV4
  389. bool "Support for IP version 4"
  390. default y
  391. config ADK_FROSTED_CONFIG_PICOTCP_IPV6
  392. bool "Support for IP version 6"
  393. default n
  394. config ADK_FROSTED_CONFIG_PICOTCP_TCP
  395. bool "Support for TCP"
  396. default y
  397. config ADK_FROSTED_CONFIG_PICOTCP_UDP
  398. bool "Support for UDP"
  399. default y
  400. config ADK_FROSTED_CONFIG_PICOTCP_DNS
  401. bool "Support for DNS client"
  402. default y
  403. config ADK_FROSTED_CONFIG_PICOTCP_MCAST
  404. bool "Support for Multicast"
  405. default n
  406. config ADK_FROSTED_CONFIG_PICOTCP_NAT
  407. bool "Support for NAT"
  408. default n
  409. config ADK_FROSTED_CONFIG_PICOTCP_IPFILTER
  410. bool "Support for IP Filter"
  411. default n
  412. config ADK_FROSTED_CONFIG_PICOTCP_LOOP
  413. bool "Support for loopback device"
  414. default y
  415. config ADK_FROSTED_CONFIG_PICOTCP_DEBUG
  416. bool "Activate debugging symbols"
  417. default n
  418. endmenu
  419. endif
  420. endmenu
  421. menu "Device Drivers"
  422. config ADK_FROSTED_DEVNULL
  423. bool "Support for /dev/null and /dev/zero"
  424. default y
  425. menuconfig ADK_FROSTED_DEVUART
  426. bool "Generic UART driver"
  427. default y
  428. if ADK_FROSTED_DEVUART
  429. config ADK_FROSTED_USART_0
  430. bool "USART 0"
  431. depends on (FROSTED_ARCH_LM3S6965 || ADK_FROSTED_ARCH_LM3SVIRT)
  432. config ADK_FROSTED_USART_1
  433. bool "USART 1"
  434. depends on (FROSTED_ARCH_LM3S6965 || ADK_FROSTED_ARCH_LM3SVIRT || \
  435. ADK_FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446 || \
  436. ADK_FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769)
  437. config ADK_FROSTED_USART_2
  438. bool "USART 2"
  439. depends on (FROSTED_ARCH_LM3S6965 || ADK_FROSTED_ARCH_LM3SVIRT || \
  440. ADK_FROSTED_ARCH_STM32F401 || ADK_FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F446 || \
  441. ADK_FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769 )
  442. config ADK_FROSTED_USART_3
  443. bool "USART 3"
  444. depends on (FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769 )
  445. config ADK_FROSTED_USART_6
  446. bool "USART 6"
  447. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F446 || \
  448. ADK_FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769 )
  449. config ADK_FROSTED_UART_0
  450. bool "UART 0"
  451. depends on ADK_FROSTED_ARCH_LPC17XX
  452. config ADK_FROSTED_UART_1
  453. bool "UART 1"
  454. depends on ADK_FROSTED_ARCH_LPC17XX
  455. config ADK_FROSTED_UART_2
  456. bool "UART 2"
  457. depends on ADK_FROSTED_ARCH_LPC17XX
  458. config ADK_FROSTED_UART_3
  459. bool "UART 3"
  460. depends on ADK_FROSTED_ARCH_LPC17XX
  461. endif
  462. config ADK_FROSTED_DEVF4DSP
  463. bool "STM32F4 Sound driver"
  464. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446)
  465. select ADK_FROSTED_DEVSTM32DMA
  466. default n
  467. config ADK_FROSTED_DEVSTM32USB
  468. bool
  469. menuconfig ADK_FROSTED_DEVSTM32USBFS
  470. bool "Support for Full Speed USB OTG"
  471. depends on (!ADK_FROSTED_DEVSTM32USBHFS) && (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446 || \
  472. ADK_FROSTED_ARCH_STM32F746)
  473. default n
  474. select ADK_FROSTED_DEVSTM32USB
  475. if ADK_FROSTED_DEVSTM32USBFS
  476. choice
  477. prompt "USB FS OTG mode"
  478. default ADK_FROSTED_USBFS_GUEST
  479. config ADK_FROSTED_USBFS_HOST
  480. bool "Host mode"
  481. config ADK_FROSTED_USBFS_GUEST
  482. bool "Device mode"
  483. endchoice
  484. endif
  485. menuconfig ADK_FROSTED_DEVSTM32USBHS
  486. bool "Support for High Speed USB OTG"
  487. depends on (FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769)
  488. select ADK_FROSTED_DEVSTM32USB
  489. default n
  490. if ADK_FROSTED_DEVSTM32USBHS
  491. choice
  492. prompt "USB HS OTG mode"
  493. default ADK_FROSTED_USBHS_GUEST
  494. config ADK_FROSTED_USBHS_HOST
  495. bool "Host mode"
  496. config ADK_FROSTED_USBHS_GUEST
  497. bool "Device mode"
  498. endchoice
  499. endif
  500. config ADK_FROSTED_DEV_USB_ETH
  501. depends on ADK_FROSTED_PICOTCP && ( (FROSTED_DEVSTM32USBHS && ADK_FROSTED_USBHS_GUEST) || (FROSTED_DEVSTM32USBFS && ADK_FROSTED_USBFS_GUEST) )
  502. select ADK_FROSTED_DEVSTM32USB
  503. bool "Ethernet over USB (CDC-ECM)"
  504. default n
  505. if ADK_FROSTED_DEV_USB_ETH
  506. config ADK_FROSTED_USB_DEFAULT_IP
  507. string "Default (boot-up) address for usb0"
  508. default 192.168.6.150
  509. config ADK_FROSTED_USB_DEFAULT_NM
  510. string "Default (boot-up) netmask for usb0"
  511. default 255.255.255.0
  512. config ADK_FROSTED_USB_DEFAULT_GW
  513. string "Default (boot-up) gateway for usb0"
  514. default 192.168.6.1
  515. endif
  516. config ADK_FROSTED_DEVTIM
  517. bool "System CPU timer on TIM2"
  518. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446 || ADK_FROSTED_ARCH_STM32F746)
  519. default n
  520. config ADK_FROSTED_DEVADC
  521. bool "Generic ADC driver"
  522. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446)
  523. select ADK_FROSTED_DEVSTM32DMA
  524. default n
  525. config ADK_FROSTED_DEVF4ETH
  526. bool "STM32F4 Ethernet driver"
  527. depends on ((FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446) && ADK_FROSTED_PICOTCP)
  528. default n
  529. config ADK_FROSTED_DEVF7ETH
  530. bool "STM32F7 Ethernet driver"
  531. depends on ((FROSTED_ARCH_STM32F746 || ADK_FROSTED_ARCH_STM32F769) && ADK_FROSTED_PICOTCP)
  532. default n
  533. config ADK_FROSTED_DEVLM3SETH
  534. bool "LM3S Ethernet driver"
  535. depends on ((FROSTED_ARCH_LM3S) && ADK_FROSTED_PICOTCP)
  536. default n
  537. if ADK_FROSTED_DEVF4ETH || ADK_FROSTED_DEVF7ETH || ADK_FROSTED_DEVLM3SETH
  538. config ADK_FROSTED_ETH_DEFAULT_IP
  539. string "Default (boot-up) address for eth0"
  540. default 192.168.2.150
  541. config ADK_FROSTED_ETH_DEFAULT_NM
  542. string "Default (boot-up) netmask for eth0"
  543. default 255.255.255.0
  544. config ADK_FROSTED_ETH_DEFAULT_GW
  545. string "Default (boot-up) gateway for eth0"
  546. default 192.168.2.1
  547. endif
  548. config ADK_FROSTED_DEVSTM32SDIO
  549. bool "STM32F4 SD I/O driver"
  550. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F7|| ADK_FROSTED_ARCH_STM32F446)
  551. default n
  552. menuconfig ADK_FROSTED_DEVSTM32I2C
  553. bool "STM32 I2C driver"
  554. depends on (FROSTED_ARCH_STM32F401 ||FROSTED_ARCH_STM32F411 || ADK_FROSTED_ARCH_STM32F407 || ADK_FROSTED_ARCH_STM32F405 || ADK_FROSTED_ARCH_STM32F429 || ADK_FROSTED_ARCH_STM32F446 || ADK_FROSTED_ARCH_STM32F746)
  555. select ADK_FROSTED_DEVSTM32DMA
  556. default n
  557. if ADK_FROSTED_DEVSTM32I2C
  558. config ADK_FROSTED_I2C1
  559. bool "I2C 1"
  560. default n
  561. config ADK_FROSTED_I2C2
  562. bool "I2C 2"
  563. default n
  564. config ADK_FROSTED_I2C3
  565. bool "I2C 3"
  566. default y
  567. endif
  568. config ADK_FROSTED_DEVCS43L22
  569. tristate "CS43L22 driver (Stereo DAC)"
  570. depends on (FROSTED_DEVSTM32I2C)
  571. default n
  572. config ADK_FROSTED_DEVLSM303DLHC
  573. tristate "LSM303DLHC driver (Accelerometer & Magnetometer)"
  574. depends on (FROSTED_DEVSTM32I2C)
  575. default n
  576. config ADK_FROSTED_DEVMCCOG21
  577. tristate "MCCOG21 driver (2-lines B/W display)"
  578. depends on (FROSTED_DEVSTM32I2C)
  579. default n
  580. config ADK_FROSTED_DEVFT5336
  581. tristate "FT5336 driver (Touchscreen STM32F746)"
  582. depends on (FROSTED_DEVSTM32I2C)
  583. default n
  584. config ADK_FROSTED_DEVSTMPE811
  585. tristate "STMPE811 driver (Touchscreen)"
  586. depends on (FROSTED_DEVSTM32I2C)
  587. default n
  588. menuconfig ADK_FROSTED_DEVSPI
  589. bool "Generic SPI driver"
  590. depends on (FROSTED_ARCH_STM32F4 || ADK_FROSTED_ARCH_STM32F7)
  591. select ADK_FROSTED_DEVSTM32DMA
  592. default n
  593. if ADK_FROSTED_DEVSPI
  594. config ADK_FROSTED_SPI_1
  595. bool "SPI 1"
  596. config ADK_FROSTED_SPI_5
  597. bool "SPI 5"
  598. endif
  599. config ADK_FROSTED_DEVLIS3DSH
  600. tristate "LIS3DSH driver (3-Axis Accelerometer)"
  601. depends on (FROSTED_DEVSPI)
  602. default n
  603. config ADK_FROSTED_DEVILI9341
  604. tristate "ILI9341 driver (LCD Controller)"
  605. depends on (FROSTED_DEVSPI)
  606. default n
  607. config ADK_FROSTED_DEVL3GD20
  608. tristate "L3GD20 driver (Gyro)"
  609. depends on (FROSTED_DEVSPI)
  610. default n
  611. config ADK_FROSTED_DEV_RANDOM
  612. depends on (FROSTED_ARCH_STM32F4 || ADK_FROSTED_ARCH_STM32F7)
  613. bool "STM32F2/F4/F7 Random devices"
  614. default n
  615. if ADK_FROSTED_DEV_RANDOM
  616. choice
  617. prompt "Random device selection"
  618. config ADK_FROSTED_DEVRNG
  619. bool "Hardware TRNG driver"
  620. config ADK_FROSTED_DEVFRAND
  621. bool "Fortuna PRNG device"
  622. endchoice
  623. endif
  624. menuconfig ADK_FROSTED_DEVFRAMEBUFFER
  625. depends on (FROSTED_ARCH_STM32F7 || ADK_FROSTED_ARCH_STM32F4)
  626. bool "STM32 Framebuffer driver"
  627. default n
  628. config ADK_FROSTED_DEVFBCON
  629. depends on ADK_FROSTED_DEVFRAMEBUFFER
  630. bool "Console on Framebuffer via /dev/fbcon"
  631. default n
  632. config ADK_FROSTED_DEVF7DISCOLTDC
  633. depends on ADK_FROSTED_DEVFRAMEBUFFER
  634. bool "F746 Discovery LTDC"
  635. default n
  636. endmenu
  637. menu "Power Management"
  638. if ADK_FROSTED_DEVTIM
  639. config ADK_FROSTED_LOWPOWER
  640. bool "Enable low-power optimizations"
  641. default n
  642. config ADK_FROSTED_TICKLESS
  643. bool "Disable systick in between process switches (untested)"
  644. default n
  645. endif
  646. if !ADK_FROSTED_DEVTIM
  647. comment "Power Management requires CPU Timer support"
  648. endif
  649. endmenu