xref: /openbmc/u-boot/drivers/sound/Kconfig (revision 0c41e59a37fbd5b10d4837ae30c288a084997465)
10b11dbf7SMasahiro Yamadamenu "Sound support"
20b11dbf7SMasahiro Yamada
3ef35d98aSSimon Glassconfig SOUND
4ef35d98aSSimon Glass	bool "Enable sound support"
5ef35d98aSSimon Glass	help
6ef35d98aSSimon Glass	  Support making sounds through an audio codec. This is normally a
7ef35d98aSSimon Glass	  beep at a chosen frequency for a selected length of time. However
8ef35d98aSSimon Glass	  the drivers support playing arbitrary sound samples using a
9ef35d98aSSimon Glass	  PCM interface.
10ef35d98aSSimon Glass
11ef35d98aSSimon Glass	  Note: At present the sound setup is somewhat tangled up in that the
12ef35d98aSSimon Glass	  audio codecs are called from the sound-i2s code. This could be
13ef35d98aSSimon Glass	  converted to driver model.
1400cf7bf1SSimon Glass
1500cf7bf1SSimon Glassconfig I2S
1600cf7bf1SSimon Glass	bool "Enable I2S support"
1700cf7bf1SSimon Glass	depends on SOUND
1800cf7bf1SSimon Glass	help
1900cf7bf1SSimon Glass	  I2S is a serial bus often used to transmit audio data from the
2000cf7bf1SSimon Glass	  SoC to the audio codec. This option enables sound support using
2100cf7bf1SSimon Glass	  I2S. It calls either of the two supported codecs (no use is made
2200cf7bf1SSimon Glass	  of driver model at present).
236bd7be27SSimon Glass
242665f091SSimon Glassconfig I2S_ROCKCHIP
252665f091SSimon Glass	bool "Enable I2S support for Rockchip SoCs"
262665f091SSimon Glass	depends on I2S
272665f091SSimon Glass	help
282665f091SSimon Glass	  Rockchip SoCs support an I2S interface for sending audio data to an
292665f091SSimon Glass	  audio codec. This option enables support for this, using one of the
302665f091SSimon Glass	  available audio codec drivers. This driver does not make use of
312665f091SSimon Glass	  DMA, but writes each word directly to the hardware.
322665f091SSimon Glass
336bd7be27SSimon Glassconfig I2S_SAMSUNG
346bd7be27SSimon Glass	bool "Enable I2C support for Samsung SoCs"
35afcd6457SSimon Glass	depends on I2S
366bd7be27SSimon Glass	help
376bd7be27SSimon Glass	  Samsung Exynos SoCs support an I2S interface for sending audio
386bd7be27SSimon Glass	  data to an audio codec. This option enables support for this,
396bd7be27SSimon Glass	  using one of the available audio codec drivers. Enabling this
406bd7be27SSimon Glass	  option provides an implementation for sound_init() and
416bd7be27SSimon Glass	  sound_play().
427a170a59SSimon Glass
436a27e540SSimon Glassconfig SOUND_I8254
446a27e540SSimon Glass	bool "Intel i8254 timer / beeper"
456a27e540SSimon Glass	depends on SOUND
466a27e540SSimon Glass	help
476a27e540SSimon Glass	  This enables support for a beeper that uses the i8254 timer chip.
486a27e540SSimon Glass	  This can emit beeps at a fixed frequency. It is possible to control
496a27e540SSimon Glass	  the length of the beeps, by turning a beep on, waiting for a period
506a27e540SSimon Glass	  of time, then turning it off.
516a27e540SSimon Glass
526a27e540SSimon Glass	  This is quite an old feature, called PIT (Programmable Interval
536a27e540SSimon Glass	  Timer), but is nonetheless still available on modern x86 machines.
546a27e540SSimon Glass
552ca47137SSimon Glassconfig SOUND_INTEL_HDA
562ca47137SSimon Glass	bool "Intel HDA audio codec"
572ca47137SSimon Glass	depends on SOUND
582ca47137SSimon Glass	help
592ca47137SSimon Glass	  Most Intel chips have an HDA (High-definition audio) codec which can
602ca47137SSimon Glass	  be used by U-Boot to play simple beeps. This is also sometimes called
612ca47137SSimon Glass	  Azalia which was the development code-name. It requires setup
622ca47137SSimon Glass	  information in the device tree (see intel-hda.txt).
632ca47137SSimon Glass
646744c0d6SSimon Glassconfig SOUND_IVYBRIDGE
656744c0d6SSimon Glass	bool "Intel Ivybridge sound support"
666744c0d6SSimon Glass	depends on SOUND
676744c0d6SSimon Glass	select SOUND_INTEL_HDA
686744c0d6SSimon Glass	help
696744c0d6SSimon Glass	  Enable sound output on supported Intel Ivybridge-based boards. This
706744c0d6SSimon Glass	  driver uses Intel's High-definition Audio (HDA) architecture,
716744c0d6SSimon Glass	  sometimes called Azalia. The audio codec is detected using a
726744c0d6SSimon Glass	  semi-automatic mechanism.
736744c0d6SSimon Glass
749a7210f6SSimon Glassconfig SOUND_MAX98088
759a7210f6SSimon Glass	bool "Support Maxim max98088 audio codec"
76afcd6457SSimon Glass	depends on I2S
779a7210f6SSimon Glass	help
789a7210f6SSimon Glass	  Enable the max98088 audio codec. This is connected via I2S for
799a7210f6SSimon Glass	  audio data and I2C for codec control. At present it only works
809a7210f6SSimon Glass	  with the Samsung I2S driver.
819a7210f6SSimon Glass
828cad63c7SSimon Glassconfig SOUND_MAX98090
838cad63c7SSimon Glass	bool "Support Maxim max98090 audio codec"
84afcd6457SSimon Glass	depends on I2S
858cad63c7SSimon Glass	help
868cad63c7SSimon Glass	  Enable the max98090 audio codec. This is connected via I2S for
878cad63c7SSimon Glass	  audio data and I2C for codec control. At present it only works
888cad63c7SSimon Glass	  with the Samsung I2S driver.
898cad63c7SSimon Glass
907a170a59SSimon Glassconfig SOUND_MAX98095
917a170a59SSimon Glass	bool "Support Maxim max98095 audio codec"
92afcd6457SSimon Glass	depends on I2S
937a170a59SSimon Glass	help
947a170a59SSimon Glass	  Enable the max98095 audio codec. This is connected via I2S for
957a170a59SSimon Glass	  audio data and I2C for codec control. At present it only works
967a170a59SSimon Glass	  with the Samsung I2S driver.
97dd573f91SSimon Glass
98*cf885929SSimon Glassconfig SOUND_RT5677
99*cf885929SSimon Glass	bool "Support Realtek RT5677 audio codec"
100*cf885929SSimon Glass	depends on SOUND
101*cf885929SSimon Glass	help
102*cf885929SSimon Glass	  Enable the Realtek RT5677 audio codec. This is an I2S device used on
103*cf885929SSimon Glass	  some Chromebooks from around 2015 ('auron'). It is configured using
104*cf885929SSimon Glass	  an I2C interface and supports multiple sound inputs and outputs,
105*cf885929SSimon Glass	  including digital microphones.
106*cf885929SSimon Glass
1073907305fSSimon Glassconfig SOUND_SANDBOX
1083907305fSSimon Glass	bool "Support sandbox emulated audio codec"
1093907305fSSimon Glass	depends on SANDBOX && SOUND
1103907305fSSimon Glass	help
1113907305fSSimon Glass	  U-Boot sandbox can emulate a sound device using SDL, playing the
1123907305fSSimon Glass	  sound on the host machine. This option implements the sound_init()
1133907305fSSimon Glass	  and sound_play() functions for sandbox. Note that you must install
1143907305fSSimon Glass	  the SDL libraries for this to work.
1153907305fSSimon Glass
116dd573f91SSimon Glassconfig SOUND_WM8994
117dd573f91SSimon Glass	bool "Support Wolfson Micro wm8994 audio codec"
118dd573f91SSimon Glass	depends on I2S_SAMSUNG
119dd573f91SSimon Glass	help
120dd573f91SSimon Glass	  Enable the wm8994 audio codec. This is connected via I2S for
121dd573f91SSimon Glass	  audio data and I2C for codec control. At present it only works
122dd573f91SSimon Glass	  with the Samsung I2S driver.
1230b11dbf7SMasahiro Yamada
1240b11dbf7SMasahiro Yamadaendmenu
125