blob: 6e9dcefcb90661f8e6a6143b2a437b53b38d07e0 [file] [log] [blame]
Masahiro Yamadacc85b7b2015-07-26 02:46:26 +09001menu "Sound support"
2
Simon Glass3f111d42015-03-06 13:19:08 -07003config SOUND
4 bool "Enable sound support"
5 help
6 Support making sounds through an audio codec. This is normally a
7 beep at a chosen frequency for a selected length of time. However
8 the drivers support playing arbitrary sound samples using a
9 PCM interface.
10
11 Note: At present the sound setup is somewhat tangled up in that the
12 audio codecs are called from the sound-i2s code. This could be
13 converted to driver model.
Simon Glassc62d28e2015-03-06 13:19:10 -070014
15config I2S
16 bool "Enable I2S support"
17 depends on SOUND
18 help
19 I2S is a serial bus often used to transmit audio data from the
20 SoC to the audio codec. This option enables sound support using
21 I2S. It calls either of the two supported codecs (no use is made
22 of driver model at present).
Simon Glass67402f02015-03-06 13:19:11 -070023
Simon Glass63a65b42018-12-27 20:15:21 -070024config I2S_ROCKCHIP
25 bool "Enable I2S support for Rockchip SoCs"
26 depends on I2S
27 help
28 Rockchip SoCs support an I2S interface for sending audio data to an
29 audio codec. This option enables support for this, using one of the
30 available audio codec drivers. This driver does not make use of
31 DMA, but writes each word directly to the hardware.
32
Simon Glass67402f02015-03-06 13:19:11 -070033config I2S_SAMSUNG
34 bool "Enable I2C support for Samsung SoCs"
Simon Glassd789d082018-12-27 13:24:39 -070035 depends on I2S
Simon Glass67402f02015-03-06 13:19:11 -070036 help
37 Samsung Exynos SoCs support an I2S interface for sending audio
38 data to an audio codec. This option enables support for this,
39 using one of the available audio codec drivers. Enabling this
40 option provides an implementation for sound_init() and
41 sound_play().
Simon Glass015b4a52015-03-06 13:19:12 -070042
Simon Glass950cc822019-02-16 20:24:59 -070043config SOUND_I8254
44 bool "Intel i8254 timer / beeper"
45 depends on SOUND
46 help
47 This enables support for a beeper that uses the i8254 timer chip.
48 This can emit beeps at a fixed frequency. It is possible to control
49 the length of the beeps, by turning a beep on, waiting for a period
50 of time, then turning it off.
51
52 This is quite an old feature, called PIT (Programmable Interval
53 Timer), but is nonetheless still available on modern x86 machines.
54
Simon Glassb67c18d2019-02-16 20:24:55 -070055config SOUND_INTEL_HDA
56 bool "Intel HDA audio codec"
57 depends on SOUND
58 help
59 Most Intel chips have an HDA (High-definition audio) codec which can
60 be used by U-Boot to play simple beeps. This is also sometimes called
61 Azalia which was the development code-name. It requires setup
62 information in the device tree (see intel-hda.txt).
63
Simon Glasse7ceeef2019-02-16 20:24:57 -070064config SOUND_IVYBRIDGE
65 bool "Intel Ivybridge sound support"
66 depends on SOUND
67 select SOUND_INTEL_HDA
68 help
69 Enable sound output on supported Intel Ivybridge-based boards. This
70 driver uses Intel's High-definition Audio (HDA) architecture,
71 sometimes called Azalia. The audio codec is detected using a
72 semi-automatic mechanism.
73
Simon Glass355ec122019-01-11 18:37:09 -070074config SOUND_MAX98088
75 bool "Support Maxim max98088 audio codec"
Simon Glassd789d082018-12-27 13:24:39 -070076 depends on I2S
Simon Glass355ec122019-01-11 18:37:09 -070077 help
78 Enable the max98088 audio codec. This is connected via I2S for
79 audio data and I2C for codec control. At present it only works
80 with the Samsung I2S driver.
81
Simon Glass803f6b52018-12-10 10:37:43 -070082config SOUND_MAX98090
83 bool "Support Maxim max98090 audio codec"
Simon Glassd789d082018-12-27 13:24:39 -070084 depends on I2S
Simon Glass803f6b52018-12-10 10:37:43 -070085 help
86 Enable the max98090 audio codec. This is connected via I2S for
87 audio data and I2C for codec control. At present it only works
88 with the Samsung I2S driver.
89
Simon Glass015b4a52015-03-06 13:19:12 -070090config SOUND_MAX98095
91 bool "Support Maxim max98095 audio codec"
Simon Glassd789d082018-12-27 13:24:39 -070092 depends on I2S
Simon Glass015b4a52015-03-06 13:19:12 -070093 help
94 Enable the max98095 audio codec. This is connected via I2S for
95 audio data and I2C for codec control. At present it only works
96 with the Samsung I2S driver.
Simon Glassbb3315f2015-03-06 13:19:13 -070097
Simon Glass12b3b582019-02-16 20:25:05 -070098config SOUND_RT5677
99 bool "Support Realtek RT5677 audio codec"
100 depends on SOUND
101 help
102 Enable the Realtek RT5677 audio codec. This is an I2S device used on
103 some Chromebooks from around 2015 ('auron'). It is configured using
104 an I2C interface and supports multiple sound inputs and outputs,
105 including digital microphones.
106
Simon Glass9c2d7af2015-03-06 13:19:14 -0700107config SOUND_SANDBOX
108 bool "Support sandbox emulated audio codec"
109 depends on SANDBOX && SOUND
110 help
111 U-Boot sandbox can emulate a sound device using SDL, playing the
112 sound on the host machine. This option implements the sound_init()
113 and sound_play() functions for sandbox. Note that you must install
114 the SDL libraries for this to work.
115
Simon Glassbb3315f2015-03-06 13:19:13 -0700116config SOUND_WM8994
117 bool "Support Wolfson Micro wm8994 audio codec"
118 depends on I2S_SAMSUNG
119 help
120 Enable the wm8994 audio codec. This is connected via I2S for
121 audio data and I2C for codec control. At present it only works
122 with the Samsung I2S driver.
Masahiro Yamadacc85b7b2015-07-26 02:46:26 +0900123
124endmenu