|
@@ -0,0 +1,104 @@
|
|
|
|
+Qualcomm Audio Front End (Q6AFE) binding
|
|
|
|
+
|
|
|
|
+AFE is one of the APR audio service on Q6DSP
|
|
|
|
+Please refer to qcom,apr.txt for details of the common apr service bindings
|
|
|
|
+used by all apr services. Must contain the following properties.
|
|
|
|
+
|
|
|
|
+- compatible:
|
|
|
|
+ Usage: required
|
|
|
|
+ Value type: <stringlist>
|
|
|
|
+ Definition: must be "qcom,q6afe-v<MAJOR-NUMBER>.<MINOR-NUMBER>"
|
|
|
|
+ Or "qcom,q6afe" where the version number can be queried
|
|
|
|
+ from DSP.
|
|
|
|
+ example "qcom,q6afe"
|
|
|
|
+
|
|
|
|
+= AFE DAIs (Digial Audio Interface)
|
|
|
|
+"dais" subnode of the AFE node. It represents afe dais, each afe dai is a
|
|
|
|
+subnode of "dais" representing board specific dai setup.
|
|
|
|
+"dais" node should have following properties followed by dai children.
|
|
|
|
+
|
|
|
|
+- #sound-dai-cells
|
|
|
|
+ Usage: required
|
|
|
|
+ Value type: <u32>
|
|
|
|
+ Definition: Must be 1
|
|
|
|
+
|
|
|
|
+- #address-cells
|
|
|
|
+ Usage: required
|
|
|
|
+ Value type: <u32>
|
|
|
|
+ Definition: Must be 1
|
|
|
|
+
|
|
|
|
+- #size-cells
|
|
|
|
+ Usage: required
|
|
|
|
+ Value type: <u32>
|
|
|
|
+ Definition: Must be 0
|
|
|
|
+
|
|
|
|
+== AFE DAI is subnode of "dais" and represent a dai, it includes board specific
|
|
|
|
+configuration of each dai. Must contain the following properties.
|
|
|
|
+
|
|
|
|
+- reg
|
|
|
|
+ Usage: required
|
|
|
|
+ Value type: <u32>
|
|
|
|
+ Definition: Must be dai id
|
|
|
|
+
|
|
|
|
+- qcom,sd-lines
|
|
|
|
+ Usage: required for mi2s interface
|
|
|
|
+ Value type: <prop-encoded-array>
|
|
|
|
+ Definition: Must be list of serial data lines used by this dai.
|
|
|
|
+ should be one or more of the 1-4 sd lines.
|
|
|
|
+
|
|
|
|
+= EXAMPLE
|
|
|
|
+
|
|
|
|
+q6afe@4 {
|
|
|
|
+ compatible = "qcom,q6afe";
|
|
|
|
+ reg = <APR_SVC_AFE>;
|
|
|
|
+
|
|
|
|
+ dais {
|
|
|
|
+ #sound-dai-cells = <1>;
|
|
|
|
+ #address-cells = <1>;
|
|
|
|
+ #size-cells = <0>;
|
|
|
|
+
|
|
|
|
+ hdmi@1 {
|
|
|
|
+ reg = <1>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ prim-mi2s-rx@16 {
|
|
|
|
+ reg = <16>;
|
|
|
|
+ qcom,sd-lines = <1 3>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ prim-mi2s-tx@17 {
|
|
|
|
+ reg = <17>;
|
|
|
|
+ qcom,sd-lines = <2>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ sec-mi2s-rx@18 {
|
|
|
|
+ reg = <18>;
|
|
|
|
+ qcom,sd-lines = <1 4>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ sec-mi2s-tx@19 {
|
|
|
|
+ reg = <19>;
|
|
|
|
+ qcom,sd-lines = <2>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ tert-mi2s-rx@20 {
|
|
|
|
+ reg = <20>;
|
|
|
|
+ qcom,sd-lines = <2 4>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ tert-mi2s-tx@21 {
|
|
|
|
+ reg = <21>;
|
|
|
|
+ qcom,sd-lines = <1>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ quat-mi2s-rx@22 {
|
|
|
|
+ reg = <22>;
|
|
|
|
+ qcom,sd-lines = <1>;
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ quat-mi2s-tx@23 {
|
|
|
|
+ reg = <23>;
|
|
|
|
+ qcom,sd-lines = <2>;
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+};
|