On Mon, Nov 28, 2016 at 02:47:57AM +0000, Kuninori Morimoto wrote: > > From: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > --- > .../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@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 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html