Kconfig 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see the file kconfig-language.txt in the NuttX tools repository.
  4. #
  5. config AUDIO_TONE
  6. bool "Audio Tone Generator using PWM"
  7. default n
  8. depends on PWM && DRIVERS_AUDIO
  9. ---help---
  10. This driver enables the Audio Tone Generator for NuttX.
  11. if AUDIO_TONE
  12. endif # AUDIO_TONE
  13. config AUDIO_VS1053
  14. bool "VS1053 codec chip"
  15. default n
  16. depends on AUDIO
  17. ---help---
  18. Select to enable support for the VS1053 Audio codec by VLSI Solutions.
  19. This chip provides encoding and decoding of MP3, WMA, AAC and Ogg
  20. Vorbis format audio. It also has a general DSP which is user
  21. programmable to perform special audio (or any DSP) functions.
  22. if AUDIO_VS1053
  23. config VS1053_DEVICE_COUNT
  24. int "Number of VS1053 devices attached"
  25. default 1
  26. ---help---
  27. Sets the number of VS1053 type devices available to the system.
  28. This is required to reserve global, static lower-half driver
  29. context pointers for the DREQ ISR to use for lookup when it needs
  30. to signal that additional data is being requested.
  31. config VS1053_WORKER_STACKSIZE
  32. int "VS1053 worker thread stack size"
  33. default 768
  34. ---help---
  35. Stack size to use with the VS1053 worker thread.
  36. if AUDIO_DRIVER_SPECIFIC_BUFFERS
  37. config VS1053_NUM_BUFFERS
  38. int "Number of Audio Pipeline Buffers to use"
  39. default 2
  40. ---help---
  41. Sets the number of the Audio Pipeline Buffers used to deliver audio
  42. data to the VS1053 driver. The minimum you should set this is
  43. 2 buffers, which should be adequate for most media types.
  44. config VS1053_BUFFER_SIZE
  45. int "Size of Audio Pipeline Buffers to use"
  46. default 8192
  47. ---help---
  48. Sets the size of the Audio Pipeline Buffers used to deliver audio
  49. data to the VS1053 driver. The minimum you should set this is
  50. 2048 bytes. The larger the buffer, the better CPU performance.
  51. endif # AUDIO_DRIVER_SPECIFIC_BUFFERS
  52. endif # AUDIO_VS1053
  53. config AUDIO_CS43L22
  54. bool "CS43L22 audio chip"
  55. default n
  56. depends on AUDIO
  57. ---help---
  58. Select to enable support for the CS43L22 Audio codec by Cirrus Logic.
  59. This chip is a lower level audio chip.. basically
  60. an exotic D-to-A. It includes no built-in support for audio CODECS
  61. The CS43L22 provides:
  62. - Low power consumption
  63. - High SNR
  64. - Stereo digital microphone input
  65. - Digital Dynamic Range Controller (compressor / limiter)
  66. - Digital sidetone mixing
  67. - Ground-referenced headphone driver
  68. - Ground-referenced line outputs
  69. NOTE: This driver also depends on both I2C and I2S support although
  70. that dependency is not explicit here.
  71. if AUDIO_CS43L22
  72. config CS43L22_INITVOLUME
  73. int "CS43L22 initial volume setting"
  74. default 250
  75. config CS43L22_INFLIGHT
  76. int "CS43L22 maximum in-flight audio buffers"
  77. default 2
  78. config CS43L22_MSG_PRIO
  79. int "CS43L22 message priority"
  80. default 1
  81. config CS43L22_BUFFER_SIZE
  82. int "CS43L22 preferred buffer size"
  83. default 8192
  84. config CS43L22_NUM_BUFFERS
  85. int "CS43L22 preferred number of buffers"
  86. default 4
  87. config CS43L22_WORKER_STACKSIZE
  88. int "CS43L22 worker thread stack size"
  89. default 768
  90. config CS43L22_REGDUMP
  91. bool "CS43L22 register dump"
  92. default n
  93. ---help---
  94. Enable logic to dump the contents of all CS43L22 registers.
  95. config CS43L22_CLKDEBUG
  96. bool "CS43L22 clock analysis"
  97. default n
  98. ---help---
  99. Enable logic to analyze CS43L22 clock configuation.
  100. endif # AUDIO_CS43L22
  101. config AUDIO_WM8776
  102. bool "WM8776 audio chip"
  103. default n
  104. depends on AUDIO
  105. ---help---
  106. Select to enable support for the WM8776 Audio codec by Wolfson
  107. Microelectonics.
  108. if AUDIO_WM8776
  109. config WM8776_INFLIGHT
  110. int "WM8776 maximum in-flight audio buffers"
  111. default 2
  112. config WM8776_MSG_PRIO
  113. int "WM8776 message priority"
  114. default 1
  115. config WM8776_WORKER_STACKSIZE
  116. int "WM8776 worker thread stack size"
  117. default 768
  118. config WM8776_SWAP_HPOUT
  119. bool "Swap WM8776 HP out signals"
  120. default n
  121. endif # AUDIO_WM8776
  122. config AUDIO_WM8904
  123. bool "WM8904 audio chip"
  124. default n
  125. depends on AUDIO
  126. ---help---
  127. Select to enable support for the WM8904 Audio codec by Wolfson
  128. Microelectonics. This chip is a lower level audio chip.. basically
  129. an exotic D-to-A. It includes no built-in support for audio CODECS
  130. The WM8904 provides:
  131. - Low power consumption
  132. - High SNR
  133. - Stereo digital microphone input
  134. - Digital Dynamic Range Controller (compressor / limiter)
  135. - Digital sidetone mixing
  136. - Ground-referenced headphone driver
  137. - Ground-referenced line outputs
  138. NOTE: This driver also depends on both I2C and I2S support although
  139. that dependency is not explicit here.
  140. if AUDIO_WM8904
  141. config WM8904_INITVOLUME
  142. int "WM8904 initial volume setting"
  143. default 250
  144. config WM8904_INFLIGHT
  145. int "WM8904 maximum in-flight audio buffers"
  146. default 2
  147. config WM8904_MSG_PRIO
  148. int "WM8904 message priority"
  149. default 1
  150. config WM8904_BUFFER_SIZE
  151. int "WM8904 preferred buffer size"
  152. default 8192
  153. config WM8904_NUM_BUFFERS
  154. int "WM8904 preferred number of buffers"
  155. default 4
  156. config WM8904_WORKER_STACKSIZE
  157. int "WM8904 worker thread stack size"
  158. default 768
  159. config WM8904_REGDUMP
  160. bool "WM8904 register dump"
  161. default n
  162. ---help---
  163. Enable logic to dump the contents of all WM8904 registers.
  164. config WM8904_CLKDEBUG
  165. bool "WM8904 clock analysis"
  166. default n
  167. ---help---
  168. Enable logic to analyze WM8904 clock configuation.
  169. endif # AUDIO_WM8904
  170. config AUDIO_NULL
  171. bool "NULL audio device"
  172. default n
  173. depends on AUDIO
  174. ---help---
  175. A do-nothing audio device driver to simplify testing of audio
  176. decoders.
  177. if AUDIO_NULL
  178. config AUDIO_NULL_MSG_PRIO
  179. int "Null audio device message priority"
  180. default 1
  181. config AUDIO_NULL_BUFFER_SIZE
  182. int "Null audio device preferred buffer size"
  183. default 8192
  184. config AUDIO_NULL_NUM_BUFFERS
  185. int "Null audio device preferred number of buffers"
  186. default 4
  187. config AUDIO_NULL_WORKER_STACKSIZE
  188. int "Null audio device worker thread stack size"
  189. default 768
  190. endif # AUDIO_NULL
  191. config AUDIO_I2S
  192. bool "Audio I2S"
  193. depends on AUDIO
  194. depends on I2S