Re: [PATCH 12/13] ASoC: dt-bindings: davinic-mcbsp: Add the 'ti,drive-dx' property

From: Péter Ujfalusi
Date: Tue Mar 19 2024 - 14:04:05 EST




On 15/03/2024 13:27, Bastien Curutchet wrote:
> McBSP is able to handle capture and playback stream.
> The McBSP's DX pins that outputs serial data during playback streams can
> be used to output a chosen pattern during capture streams. For instance,
> this can be useful to drive an active-low signal during capture streams
> (by choosing <0> as pattern)

or configure the MCBSPx.DX pin as GPO and use it as a GPIO?

Quite novel use of the hardware, no doubt about it. If you don't have
DMA servicing the TX, it will just re-transmit the word from from the
DXR register when the transmitter is pulled out of reset.

Interesting, but I'm not sure if this belongs to DT.

> Add a 'ti,drive-dx' property that can be used to repeatedly output a
> chosen pattern on DX pin while capture stream is ON.
>
> Signed-off-by: Bastien Curutchet <bastien.curutchet@xxxxxxxxxxx>
> ---
> Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml b/Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml
> index d8d4e7ea6e02..f4d1fc6bcd61 100644
> --- a/Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml
> +++ b/Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml
> @@ -80,6 +80,13 @@ properties:
> Enable synchronisation error detections when an unexpected frame pulse is
> received. If not present, unexpected frame pulses are ignored.
>
> + ti,drive-dx:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + If the property is present, McBSP will repeatedly output the selected
> + value on DX pin during capture streams. For instance, if set to 0, this
> + can be used to drive an active-low signal.
> +
> required:
> - "#sound-dai-cells"
> - compatible

--
Péter