Re: [PATCH v3 5/6] dt-bindings: display: sii902x: Add HDMI audio bindings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Jyri,

Thank you for the patch.

On Wed, Mar 13, 2019 at 06:01:07PM +0200, Jyri Sarha wrote:
> The sii902x chip family supports also HDMI audio. Add binding for
> describing the necessary i2s and mclk wiring for it.
> 
> Signed-off-by: Jyri Sarha <jsarha@xxxxxx>
> ---
>  .../bindings/display/bridge/sii902x.txt       | 34 +++++++++++++++++++
>  include/dt-bindings/sound/sii902x-audio.h     | 17 ++++++++++
>  2 files changed, 51 insertions(+)
>  create mode 100644 include/dt-bindings/sound/sii902x-audio.h
> 
> diff --git a/Documentation/devicetree/bindings/display/bridge/sii902x.txt b/Documentation/devicetree/bindings/display/bridge/sii902x.txt
> index c4c1855ca654..977756841193 100644
> --- a/Documentation/devicetree/bindings/display/bridge/sii902x.txt
> +++ b/Documentation/devicetree/bindings/display/bridge/sii902x.txt
> @@ -8,6 +8,29 @@ Optional properties:
>  	- interrupts: describe the interrupt line used to inform the host
>  	  about hotplug events.
>  	- reset-gpios: OF device-tree gpio specification for RST_N pin.
> +	- sil,i2s-fifo-routing: Array of exactly 4 integers indicating i2s
> +	  pins for audio fifo routing. First integer defines routing to
> +	  fifo 0 and second to fifo 1, etc. Integers can be filled with
> +	  definitions from: include/dt-bindings/sound/sii902x-audio.h
> +	  The available definitions are:
> +	  - ENABLE_BIT:	enable this audio fifo
> +	  - CONNECT_SD#: route audio input from SD0, SD1, SD2, or SD3 i2s
> +			 data input pin
> +	  - LEFT_RIGHT_SWAP_BIT: swap i2s input channels for this fifo

Are all combinations valid ? For instance, could we have D1 routed to
the third FIFO, and all other FIFOs disabled ?

> +	  I2S HDMI audio is configured only if this property is found.
> +	- clocks: phandle mclk

Maybe "clocks: phandle and clock specifier for each clock listed in the clock-names property" ?

> +	- clock-names: "mclk"
> +	    Describes SII902x MCLK input. MCLK is used to produce
> +	    HDMI audio CTS values. This property is required if
> +	    "i2s-fifo-routing"-property is present. This property follows

The property is named sil,i2s-fifo-routing.

> +	    Documentation/devicetree/bindings/clock/clock-bindings.txt
> +	    consumer binding.
> +	- #sound-dai-cells = <0>: ASoC codec dai available for simple-card
> +	    If audio properties are present sii902x provides an ASoC
> +	    codec component driver that can be used by other ASoC
> +	    components like simple-card. See binding document for
> +	    details:
> +	    Documentation/devicetree/bindings/sound/simple-card.txt
>  
>  Optional subnodes:
>  	- video input: this subnode can contain a video input port node
> @@ -21,6 +44,17 @@ Example:
>  		compatible = "sil,sii9022";
>  		reg = <0x39>;
>  		reset-gpios = <&pioA 1 0>;
> +
> +		#sound-dai-cells = <0>;
> +		sil,i2s-fifo-routing = <
> +			(ENABLE_BIT|CONNECT_SD0)
> +			0
> +			0
> +			0
> +		>;
> +		clocks = <&mclk>;
> +		clock-names = "mclk";
> +
>  		ports {
>  			#address-cells = <1>;
>  			#size-cells = <0>;
> diff --git a/include/dt-bindings/sound/sii902x-audio.h b/include/dt-bindings/sound/sii902x-audio.h
> new file mode 100644
> index 000000000000..0a849904754b
> --- /dev/null
> +++ b/include/dt-bindings/sound/sii902x-audio.h
> @@ -0,0 +1,17 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/
> + * Author: Jyri Sarha <jsarha@xxxxxx>
> + */
> +
> +#ifndef __DT_SII9022_AUDIO_H
> +#define __DT_SII9022_AUDIO_H
> +
> +#define ENABLE_BIT			0x80
> +#define CONNECT_SD0			0x00
> +#define CONNECT_SD1			0x10
> +#define CONNECT_SD2			0x20
> +#define CONNECT_SD3			0x30
> +#define LEFT_RIGHT_SWAP_BIT		0x04

This is fairly generic, should you prefix the macros with SII9022 ?

> +
> +#endif /* __DT_SII9022_AUDIO_H */

-- 
Regards,

Laurent Pinchart



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux