2022-03-08 15:58:44

by Codrin Ciubotariu

[permalink] [raw]
Subject: [PATCH v2 0/6] Add driver for SAMA7G5's PDMC

This patch series adds support for Pulse Density Microphone Controller
(PDMC), present on Microchip's SAMA7G5.
The PDMC interfaces up to 4 digital microphones having Pulse Density
Modulated (PDM) outputs. It generates a single clock line and samples 1 or
2 data lines. The signal path includes an audio grade programmable
decimation filter and outputs 24-bit audio words.
The source of each channel can be independently defined as PDMC_DS0 or
PDMC_DS1, sampled at the rising or falling edge of PDMC_CLK.

The patch series starts with a fix on the ASoC DMA engine support. Then
continues with the bindings and the driver of PDMC. It is followed by the
DT nodes for SAMA7G5 and SAMA7G5-EK. In the end, the drivers for PDMC
and PDM microphones are enabled in sama7_defconfig.

Changes in v2:
- addressed comments from Krzysztof Kozlowski

Codrin Ciubotariu (6):
ASoC: dmaengine: do not use a NULL prepare_slave_config() callback
ASoC: dt-bindings: Document Microchip's PDMC
ASoC: atmel: mchp-pdmc: add PDMC driver
ARM: dts: at91: sama7g5: add nodes for PDMC
ARM: dts: at91: sama7g5ek: add node for PDMC0
ARM: configs: at91: sama7_defconfig: add MCHP PDMC and DMIC drivers

.../bindings/sound/microchip,pdmc.yaml | 99 ++
arch/arm/boot/dts/at91-sama7g5ek.dts | 21 +-
arch/arm/boot/dts/sama7g5.dtsi | 24 +
arch/arm/configs/sama7_defconfig | 2 +
include/dt-bindings/sound/microchip,pdmc.h | 13 +
sound/soc/atmel/Kconfig | 16 +
sound/soc/atmel/Makefile | 2 +
sound/soc/atmel/mchp-pdmc.c | 1084 +++++++++++++++++
sound/soc/soc-generic-dmaengine-pcm.c | 6 +-
9 files changed, 1263 insertions(+), 4 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/microchip,pdmc.yaml
create mode 100644 include/dt-bindings/sound/microchip,pdmc.h
create mode 100644 sound/soc/atmel/mchp-pdmc.c

--
2.32.0


2022-03-08 23:09:20

by Codrin Ciubotariu

[permalink] [raw]
Subject: [PATCH v2 6/6] ARM: configs: at91: sama7_defconfig: add MCHP PDMC and DMIC drivers

Enable drivers needed for Microchip's PDMC and PDM microphones.

Signed-off-by: Codrin Ciubotariu <[email protected]>
---

Changes in v2:
- none;

arch/arm/configs/sama7_defconfig | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/configs/sama7_defconfig b/arch/arm/configs/sama7_defconfig
index 0368068e04d9..bc29badab890 100644
--- a/arch/arm/configs/sama7_defconfig
+++ b/arch/arm/configs/sama7_defconfig
@@ -138,6 +138,8 @@ CONFIG_SND_SOC_MIKROE_PROTO=m
CONFIG_SND_MCHP_SOC_I2S_MCC=y
CONFIG_SND_MCHP_SOC_SPDIFTX=y
CONFIG_SND_MCHP_SOC_SPDIFRX=y
+CONFIG_SND_MCHP_SOC_PDMC=y
+CONFIG_SND_SOC_DMIC=y
CONFIG_SND_SOC_PCM5102A=y
CONFIG_SND_SOC_SPDIF=y
CONFIG_SND_SIMPLE_CARD=y
--
2.32.0