123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- Audio Graph Card:
- Audio 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, Audio Graph Card property is same as Simple Card.
- see ${LINUX}/Documentation/devicetree/bindings/sound/simple-card.txt
- Below are same as Simple-Card.
- - label
- - widgets
- - routing
- - dai-format
- - frame-master
- - bitclock-master
- - bitclock-inversion
- - frame-inversion
- - mclk-fs
- - hp-det-gpio
- - mic-det-gpio
- - dai-tdm-slot-num
- - dai-tdm-slot-width
- - clocks / system-clock-frequency
- Required properties:
- - compatible : "audio-graph-card";
- - dais : list of CPU DAI port{s}
- Optional properties:
- - pa-gpios: GPIO used to control external amplifier.
- Example: Single DAI case
- sound_card {
- compatible = "audio-graph-card";
- dais = <&cpu_port>;
- };
- dai-controller {
- ...
- cpu_port: port {
- cpu_endpoint: endpoint {
- remote-endpoint = <&codec_endpoint>;
- dai-format = "left_j";
- ...
- };
- };
- };
- audio-codec {
- ...
- port {
- codec_endpoint: endpoint {
- remote-endpoint = <&cpu_endpoint>;
- };
- };
- };
- Example: Multi DAI case
- sound-card {
- compatible = "audio-graph-card";
- label = "sound-card";
- dais = <&cpu_port0
- &cpu_port1
- &cpu_port2>;
- };
- audio-codec@0 {
- ...
- port {
- codec0_endpoint: endpoint {
- remote-endpoint = <&cpu_endpoint0>;
- };
- };
- };
- audio-codec@1 {
- ...
- port {
- codec1_endpoint: endpoint {
- remote-endpoint = <&cpu_endpoint1>;
- };
- };
- };
- audio-codec@2 {
- ...
- port {
- codec2_endpoint: endpoint {
- remote-endpoint = <&cpu_endpoint2>;
- };
- };
- };
- dai-controller {
- ...
- ports {
- cpu_port0: port@0 {
- cpu_endpoint0: endpoint {
- remote-endpoint = <&codec0_endpoint>;
- dai-format = "left_j";
- ...
- };
- };
- cpu_port1: port@1 {
- cpu_endpoint1: endpoint {
- remote-endpoint = <&codec1_endpoint>;
- dai-format = "i2s";
- ...
- };
- };
- cpu_port2: port@2 {
- cpu_endpoint2: endpoint {
- remote-endpoint = <&codec2_endpoint>;
- dai-format = "i2s";
- ...
- };
- };
- };
- };
|