Path: blob/main/sys/contrib/device-tree/Bindings/dsp/fsl,dsp.yaml
48375 views
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/dsp/fsl,dsp.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: NXP i.MX8 DSP core78maintainers:9- Daniel Baluta <daniel.baluta@nxp.com>10- Shengjiu Wang <shengjiu.wang@nxp.com>1112description: |13Some boards from i.MX8 family contain a DSP core used for14advanced pre- and post- audio processing.1516properties:17compatible:18enum:19- fsl,imx8qxp-dsp20- fsl,imx8qm-dsp21- fsl,imx8mp-dsp22- fsl,imx8ulp-dsp23- fsl,imx8qxp-hifi424- fsl,imx8qm-hifi425- fsl,imx8mp-hifi426- fsl,imx8ulp-hifi42728reg:29maxItems: 13031clocks:32items:33- description: ipg clock34- description: ocram clock35- description: core clock36- description: debug interface clock37- description: message unit clock38minItems: 33940clock-names:41items:42- const: ipg43- const: ocram44- const: core45- const: debug46- const: mu47minItems: 34849power-domains:50description:51List of phandle and PM domain specifier as documented in52Documentation/devicetree/bindings/power/power_domain.txt53minItems: 154maxItems: 45556mboxes:57description:58List of <&phandle type channel> - 2 channels for TXDB, 2 channels for RXDB59or - 1 channel for TX, 1 channel for RX, 1 channel for RXDB60(see mailbox/fsl,mu.txt)61minItems: 362maxItems: 46364mbox-names:65minItems: 366maxItems: 46768memory-region:69description:70phandle to a node describing reserved memory (System RAM memory)71used by DSP (see bindings/reserved-memory/reserved-memory.txt)72minItems: 173maxItems: 47475firmware-name:76description: |77Default name of the firmware to load to the remote processor.7879fsl,dsp-ctrl:80$ref: /schemas/types.yaml#/definitions/phandle81description:82Phandle to syscon block which provide access for processor enablement8384required:85- compatible86- reg87- clocks88- clock-names89- power-domains90- mboxes91- mbox-names92- memory-region9394allOf:95- if:96properties:97compatible:98contains:99enum:100- fsl,imx8qxp-dsp101- fsl,imx8qm-dsp102- fsl,imx8qxp-hifi4103- fsl,imx8qm-hifi4104then:105properties:106power-domains:107minItems: 4108else:109properties:110power-domains:111maxItems: 1112113- if:114properties:115compatible:116contains:117enum:118- fsl,imx8qxp-hifi4119- fsl,imx8qm-hifi4120- fsl,imx8mp-hifi4121- fsl,imx8ulp-hifi4122then:123properties:124memory-region:125minItems: 4126mboxes:127maxItems: 3128mbox-names:129items:130- const: tx131- const: rx132- const: rxdb133else:134properties:135memory-region:136maxItems: 1137mboxes:138minItems: 4139mbox-names:140items:141- const: txdb0142- const: txdb1143- const: rxdb0144- const: rxdb1145146additionalProperties: false147148examples:149- |150#include <dt-bindings/firmware/imx/rsrc.h>151#include <dt-bindings/clock/imx8-clock.h>152dsp@596e8000 {153compatible = "fsl,imx8qxp-dsp";154reg = <0x596e8000 0x88000>;155clocks = <&adma_lpcg IMX_ADMA_LPCG_DSP_IPG_CLK>,156<&adma_lpcg IMX_ADMA_LPCG_OCRAM_IPG_CLK>,157<&adma_lpcg IMX_ADMA_LPCG_DSP_CORE_CLK>;158clock-names = "ipg", "ocram", "core";159power-domains = <&pd IMX_SC_R_MU_13A>,160<&pd IMX_SC_R_MU_13B>,161<&pd IMX_SC_R_DSP>,162<&pd IMX_SC_R_DSP_RAM>;163mbox-names = "txdb0", "txdb1", "rxdb0", "rxdb1";164mboxes = <&lsio_mu13 2 0>, <&lsio_mu13 2 1>, <&lsio_mu13 3 0>, <&lsio_mu13 3 1>;165memory-region = <&dsp_reserved>;166};167- |168#include <dt-bindings/clock/imx8mp-clock.h>169dsp_reserved: dsp@92400000 {170reg = <0x92400000 0x1000000>;171no-map;172};173dsp_vdev0vring0: vdev0vring0@942f0000 {174reg = <0x942f0000 0x8000>;175no-map;176};177dsp_vdev0vring1: vdev0vring1@942f8000 {178reg = <0x942f8000 0x8000>;179no-map;180};181dsp_vdev0buffer: vdev0buffer@94300000 {182compatible = "shared-dma-pool";183reg = <0x94300000 0x100000>;184no-map;185};186187dsp: dsp@3b6e8000 {188compatible = "fsl,imx8mp-hifi4";189reg = <0x3b6e8000 0x88000>;190clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_DSP_ROOT>,191<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_OCRAMA_IPG>,192<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_DSP_ROOT>,193<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_DSPDBG_ROOT>;194clock-names = "ipg", "ocram", "core", "debug";195firmware-name = "imx/dsp/hifi4.bin";196power-domains = <&audiomix_pd>;197mbox-names = "tx", "rx", "rxdb";198mboxes = <&mu2 0 0>,199<&mu2 1 0>,200<&mu2 3 0>;201memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>,202<&dsp_vdev0vring1>, <&dsp_reserved>;203fsl,dsp-ctrl = <&audio_blk_ctrl>;204};205206207