[alsa-devel] [PATCH v5 11/14] ASoC: add simple-graph-card document

Rob Herring robh at kernel.org
Fri Dec 2 14:50:48 CET 2016


On Mon, Nov 28, 2016 at 02:47:57AM +0000, Kuninori Morimoto wrote:
> 
> From: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
> 
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
> ---
>  .../bindings/sound/simple-graph-card.txt           | 67 ++++++++++++++++++++++
>  1 file changed, 67 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/simple-graph-card.txt
> 
> diff --git a/Documentation/devicetree/bindings/sound/simple-graph-card.txt b/Documentation/devicetree/bindings/sound/simple-graph-card.txt
> new file mode 100644
> index 0000000..3d4c5a8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/simple-graph-card.txt
> @@ -0,0 +1,67 @@
> +Simple-Graph-Card:

There's nothing simple about this. graph-audio-card or audio-card-graph.

> +
> +Simple-Graph-Card specifies audio DAI connections of SoC <-> codec.
> +It is based on common bindings for device graphs.
> +see ${LINUX}/Documentation/devicetree/bindings/graph.txt
> +
> +Basically, Simple-Graph-Card property is same as Simple-Card.
> +see ${LINUX}/Documentation/devicetree/bindings/sound/simple-card.txt
> +
> +Below are same as Simple-Card.
> +
> +- simple-audio-card,name
> +- simple-audio-card,widgets
> +- simple-audio-card,routing
> +- simple-audio-card,mclk-fs
> +- simple-audio-card,hp-det-gpio
> +- simple-audio-card,mic-det-gpio
> +- simple-audio-card,format
> +- simple-audio-card,frame-master
> +- simple-audio-card,bitclock-master
> +- simple-audio-card,bitclock-inversion
> +- simple-audio-card,frame-inversion
> +- simple-audio-card,mclk-fs
> +- simple-audio-card,dai-tdm-slot-num
> +- simple-audio-card,dai-tdm-slot-width

The simple-audio-card prefix is pointless. It's fine to reuse, but don't 
add to it.

> +- clocks / system-clock-frequency
> +
> +In Simple-Graph-Card, above properties need in CPU side port on DT.
> +And it needs to have "compatible" property too.
> +In addition, CPU side driver needs to call asoc_simple_card_try_to_probe_graph_card().
> +It will probe specified Card driver if it could find "compatible" property on port.
> +Otherwise, it will do nothing.
> +
> +Required properties:
> +
> +- compatible				: "asoc-simple-graph-card";
> +- type					: "sound";
> +
> +Example
> +
> +ak4643: codec at 12 {
> +	compatible = "asahi-kasei,ak4643";
> +	...
> +	port {
> +		type = "sound";
> +		ak4643_port: endpoint {
> +			remote-endpoint = <&rcar_ak4643_port>;
> +			...
> +		};
> +	};
> +};
> +
> +rcar_sound {
> +	...
> +	port {
> +		compatible = "asoc-simple-graph-card";

Do you have an example where you'd have multiple ports? If not, this 
should go up a level.

> +
> +		simple-audio-card,format = "left_j";
> +		simple-audio-card,bitclock-master = <&ak4643_port>;
> +		simple-audio-card,frame-master = <&ak4643_port>;

If you follow video-interfaces.txt, these should all go in the endpoint 
node.

> +		type = "sound";
> +		rcar_ak4643_port: endpoint {
> +			remote-endpoint = <&ak4643_port>;
> +			...
> +		};
> +	};
> +};
> -- 
> 1.9.1
> 


More information about the Alsa-devel mailing list