<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/include/sound/cs48l32.h, branch linux-7.0.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-04-15T12:58:43+00:00</updated>
<entry>
<title>ASoC: cs48l32: Add driver for Cirrus Logic CS48L32 audio DSP</title>
<updated>2025-04-15T12:58:43+00:00</updated>
<author>
<name>Richard Fitzgerald</name>
<email>rf@opensource.cirrus.com</email>
</author>
<published>2025-04-15T11:50:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e2bcbf99d045f6ae3826e39d1ed25978de17cbfe'/>
<id>urn:sha1:e2bcbf99d045f6ae3826e39d1ed25978de17cbfe</id>
<content type='text'>
Add a codec driver for the Cirrus Logic CS48L32 audio DSP.

The CS48L32 is a low-power audio DSP with microphone inputs for
"Always on Voice" (i.e. voice trigger) and voice command processing.
It has a programmable Halo Core DSP and a variety of power-efficient
fixed-function audio processors, with configurable digital mixing
and routing.

There are two I2S/TDM audio serial ports.

Four analogue inputs are available through IN1. These feed into a
2-channel ADC through an analogue mux. There is an ALSA control for
each IN1 ADC channel to select which analogue input to use.

A dedicated digital mic (DMIC) PDM input is available on IN2.

Two PDM outputs can feed DMIC inputs on another codec or a host DMIC/PDM
input.

An on-board regulator provides a power supply or bias voltage to
attached microphones. Three switchable MICBIAS outputs are fed from this
allowing only the microphone in use to be powered-up. There are DAPM
widgets for these outputs: MICBIAS1A, MICBIAS1B and MICBIAS1C. The machine
driver must create a DAPM route from the required MICBIAS1x widget to the
INn input widgets to make the MICBIAS switch on when the audio input is
powered-up. For example if the microphone feeding CS48L32 pin IN1LN_1 is
powered from MICBIAS1A, the machine driver must create the path:

  (sink) IN1LN_1   &lt;----- (source) MICBIAS1A

Co-developed-by: Stuart Henderson &lt;stuarth@opensource.cirrus.com&gt;
Signed-off-by: Stuart Henderson &lt;stuarth@opensource.cirrus.com&gt;
Co-developed-by: Qi Zhou &lt;qi.zhou@cirrus.com&gt;
Signed-off-by: Qi Zhou &lt;qi.zhou@cirrus.com&gt;
Co-developed-by: Piotr Stankiewicz &lt;piotrs@opensource.cirrus.com&gt;
Signed-off-by: Piotr Stankiewicz &lt;piotrs@opensource.cirrus.com&gt;
Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://patch.msgid.link/20250415115016.505777-3-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
</feed>
