[PATCH 00/13] ASoC: ti: davinci-i2s: Add features to McBSP driver

From: Bastien Curutchet
Date: Fri Mar 15 2024 - 07:28:06 EST


This series aims to add some features to McBSP driver.

Convert bindings from .txt to .yaml.
Add possibility to use an external clock as sample rate generator's
input.
Add handling of new formats (TDM, S24_LE, BP_FC).
Add optional properties in DT:
- ti,enable-sync-err : Enable the detection of unexpected frame pulses
- ti,disable-free-run : Disable the free-running mode where McBSP drives
serial clocks during emulation halt
- ti,drive-dx : Outputs a chosen pattern on DX pin during
capture streams.

This has been tested on a platform designed off of the DAVINCI/OMAP-L138
connected to 3 daisy-chained AD7767. An external clock drives the
sample rate generator through the CLKS pin.
The hardware I have only allowed me to test acquisition side of McBSP.
It is connected to a 6 channels TDM and acts as Bit clock provider and
Frame clock consumer.

Bastien Curutchet (13):
ASoC: dt-bindings: davinci-mcbsp: convert McBSP bindings to yaml
schema
ASoC: dt-bindings: davinci-mcbsp: Add new properties
ASoC: ti: davinci-i2s: Remove the unused clk_input_pin attribute
ASoC: ti: davinci-i2s: Replace dev_err with dev_err_probe
ASoC: ti: davinci-i2s: Use external clock to drive sample rate
generator
ASoC: ti: davinci-i2s: Delete unnecessary assignment
ASoC: ti: davinci-i2s: Add TDM support
ASoC: ti: davinci-i2s: Add handling of BP_FC format
ASoC: ti: davinci-i2s: Enable unexpected frame pulses detection
ASoC: ti: davinci-i2s: Make free-running mode optional
ASoC: ti: davinci-i2s: Add S24_LE to supported formats
ASoC: dt-bindings: davinic-mcbsp: Add the 'ti,drive-dx' property
ASoC: ti: davinci-i2s: Opitonally drive DX pin during capture streams

.../bindings/sound/davinci-mcbsp.txt | 50 ---
.../bindings/sound/davinci-mcbsp.yaml | 119 +++++++
include/linux/platform_data/davinci_asp.h | 15 -
sound/soc/ti/davinci-i2s.c | 333 ++++++++++++++----
4 files changed, 376 insertions(+), 141 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/davinci-mcbsp.txt
create mode 100644 Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml

--
2.43.2