From nobody Sun Sep 22 13:36:18 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 17485C433FE for ; Wed, 3 Nov 2021 10:27:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DE26860295 for ; Wed, 3 Nov 2021 10:27:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231993AbhKCK3w (ORCPT ); Wed, 3 Nov 2021 06:29:52 -0400 Received: from mailgw01.mediatek.com ([60.244.123.138]:44334 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S231623AbhKCK3v (ORCPT ); Wed, 3 Nov 2021 06:29:51 -0400 X-UUID: 8126625b3e3647bd9a9fa4d596dc9ff1-20211103 X-UUID: 8126625b3e3647bd9a9fa4d596dc9ff1-20211103 Received: from mtkmbs10n2.mediatek.inc [(172.21.101.183)] by mailgw01.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 782488194; Wed, 03 Nov 2021 18:27:12 +0800 Received: from mtkmbs10n1.mediatek.inc (172.21.101.34) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.792.3; Wed, 3 Nov 2021 18:27:11 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs10n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.792.15 via Frontend Transport; Wed, 3 Nov 2021 18:27:11 +0800 From: YC Hung To: , , , CC: , , , , , , , , , Subject: [PATCH v5] dt-bindings: dsp: mediatek: Add mt8195 DSP binding support Date: Wed, 3 Nov 2021 18:26:08 +0800 Message-ID: <20211103102607.12277-1-yc.hung@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "yc.hung" This describes the mt8195 DSP device tree node. Signed-off-by: yc.hung --- Changes since v4: - remove patch 1 with clocks as it will be reviewed and merged to SOF tre= e. https://github.com/thesofproject/linux/pull/3237 - refine DT file binding files with Rob's comments. .../bindings/dsp/mtk,mt8195-dsp.yaml | 142 ++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 Documentation/devicetree/bindings/dsp/mtk,mt8195-dsp.ya= ml diff --git a/Documentation/devicetree/bindings/dsp/mtk,mt8195-dsp.yaml b/Do= cumentation/devicetree/bindings/dsp/mtk,mt8195-dsp.yaml new file mode 100644 index 000000000000..aeeb7af69625 --- /dev/null +++ b/Documentation/devicetree/bindings/dsp/mtk,mt8195-dsp.yaml @@ -0,0 +1,142 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/dsp/mtk,mt8195-dsp.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mediatek mt8195 DSP core + +maintainers: + - YC Hung + +description: | + Some boards from mt8195 contain a DSP core used for + advanced pre- and post- audio processing. +properties: + compatible: + const: mediatek,mt8195-dsp + + reg: + items: + - description: Address and size of the DSP Cfg registers + - description: Address and size of the DSP SRAM + + reg-names: + items: + - const: cfg + - const: sram + + interrupts: + items: + - description: watchdog interrupt + + interrupt-names: + items: + - const: wdt + + clocks: + items: + - description: mux for audio dsp clock + - description: 26M clock + - description: mux for audio dsp local bus + - description: default audio dsp local bus clock source + - description: clock gate for audio dsp clock + - description: mux for audio dsp access external bus + + clock-names: + items: + - const: adsp_sel + - const: clk26m_ck + - const: audio_local_bus + - const: mainpll_d7_d2 + - const: scp_adsp_audiodsp + - const: audio_h + + power-domains: + maxItems: 1 + + mboxes: + items: + - description: a mailbox is ised for ipc reply between host and audi= o DSP. + - description: a mailbox is ised for ipc reuqest between host and au= dio DSP. + + mbox-names: + items: + - const: mbox0 + - const: mbox1 + + memory-region: =20 + items: + - description: A phandle to a reserved memory region is used for dma= buffer between host and DSP. =20 + - description: A phandle to a reserved memory region is used for DSP= system memory. + + sound: + description: + Sound subnode includes ASoC platform, DPTx codec node, and + HDMI codec node. + + type: object + + properties: + mediatek,platform: + $ref: "/schemas/types.yaml#/definitions/phandle" + description: The phandle of MT8195 ASoC platform. + + mediatek,dptx-codec: + $ref: "/schemas/types.yaml#/definitions/phandle" + description: The phandle of MT8195 Display Port Tx codec node. + + mediatek,hdmi-codec: + $ref: "/schemas/types.yaml#/definitions/phandle" + description: The phandle of MT8195 HDMI codec node. + +required: + - compatible + - reg + - reg-names + - interrupts + - interrupt-names + - clocks + - clock-names + - memory-region + - power-domains + - mbox-names + - mboxes + - sound + +additionalProperties: true + +examples: + - | + #include + #include + adsp: dsp@10803000 { + compatible =3D "mediatek,mt8195-dsp"; + reg =3D <0x10803000 0x1000>, + <0x10840000 0x40000>; + reg-names =3D "cfg", "sram"; + interrupts =3D ; + interrupt-names =3D "wdt"; + clocks =3D <&topckgen 10>, //CLK_TOP_ADSP + <&clk26m>, + <&topckgen 107>, //CLK_TOP_AUDIO_LOCAL_BUS + <&topckgen 136>, //CLK_TOP_MAINPLL_D7_D2 + <&scp_adsp 0>, //CLK_SCP_ADSP_AUDIODSP + <&topckgen 34>; //CLK_TOP_AUDIO_H + clock-names =3D "adsp_sel", + "clk26m_ck", + "audio_local_bus", + "mainpll_d7_d2", + "scp_adsp_audiodsp", + "audio_h"; + memory-region =3D <&adsp_dma_mem_reserved>, + <&adsp_mem_reserved>; + power-domains =3D <&spm 6>; //MT8195_POWER_DOMAIN_ADSP + mbox-names =3D "mbox0", "mbox1"; + mboxes =3D <&adsp_mailbox 0>, <&adsp_mailbox 1>; + sound { + mediatek,dptx-codec =3D <&dp_tx>; + mediatek,hdmi-codec =3D <&hdmi0>; + mediatek,platform =3D <&afe>; + }; + }; --=20 2.18.0