1
0
Fork 0

MLK-23944 arm64: dts: enable the rpmsg and rpmsg audio on imx8mn evk board

Enable the RPMSG on iMX8MN LPDDR4 EVK platform, and verify the rpmsg
audio feature.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Tested-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
5.4-rM2-2.2.x-imx-squashed
Richard Zhu 2020-05-08 12:52:22 +08:00
parent f801089134
commit 59a594e44e
2 changed files with 126 additions and 1 deletions

View File

@ -56,7 +56,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb imx8mm-evk-rpmsg.dtb imx8mm-evk-rm67191
dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk-ak4497.dtb imx8mm-evk-ak5558.dtb imx8mm-evk-audio-tdm.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mn-evk.dtb imx8mn-evk-rm67191.dtb imx8mn-ddr4-evk.dtb imx8mn-ddr4-evk-ak5558.dtb \
imx8mn-ddr4-evk-rm67191.dtb imx8mn-ddr4-evk-rpmsg.dtb imx8mn-ddr4-evk-usd-wifi.dtb \
imx8mn-evk-ak5558.dtb
imx8mn-evk-ak5558.dtb imx8mn-evk-rpmsg.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mn-ddr4-evk-root.dtb imx8mn-ddr4-evk-inmate.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb imx8mp-evk-root.dtb imx8mp-evk-inmate.dtb imx8mp-evk-rpmsg.dtb \
imx8mp-evk-rm67191.dtb imx8mp-evk-flexcan2.dtb imx8mp-evk-it6263-lvds-dual-channel.dtb \

View File

@ -0,0 +1,125 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright 2020 NXP
*/
#include "imx8mn-evk.dts"
/ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
m_core_reserved: m_core@0x80000000 {
no-map;
reg = <0 0x80000000 0 0x1000000>;
};
vdev0vring0: vdev0vring0@b8000000 {
compatible = "shared-dma-pool";
reg = <0 0xb8000000 0 0x8000>;
no-map;
};
vdev0vring1: vdev0vring1@b8008000 {
compatible = "shared-dma-pool";
reg = <0 0xb8008000 0 0x8000>;
no-map;
};
vdevbuffer: vdevbuffer@b8400000 {
compatible = "shared-dma-pool";
reg = <0 0xb8400000 0 0x100000>;
no-map;
};
};
sound-wm8524 {
status = "disabled";
};
wm8524: wm8524{
status = "disabled";
};
rpmsg_i2s: rpmsg-i2s {
compatible = "fsl,imx8mn-rpmsg-i2s";
/* the audio device index in m4 domain */
fsl,audioindex = <0> ;
fsl,dma-buffer-size = <0x6000000>;
fsl,enable-lpa;
status = "okay";
};
sound-rpmsg {
compatible = "fsl,imx-audio-rpmsg";
model = "wm8524-audio";
cpu-dai = <&rpmsg_i2s>;
rpmsg-out;
};
imx8mn-cm7 {
compatible = "fsl,imx8mn-cm7";
rsc-da = <0xb8000000>;
mbox-names = "tx", "rx", "rxdb";
mboxes = <&mu 0 1
&mu 1 1
&mu 3 1>;
memory-region = <&vdev0vring0>, <&vdev0vring1>, <&vdevbuffer>;
status = "okay";
};
};
&clk {
init-on-array = <
IMX8MN_CLK_UART4_ROOT
>;
};
/*
* ATTENTION: M core may use IPs like below
* ECSPI2, GPIO1/GPIO5, GPT1, I2C3, I2S3, WDOG1, UART4, PWM3, SDMA1/3 and PDM
*/
&ecspi2 {
status = "disabled";
};
&i2c3 {
status = "disabled";
};
&pwm3 {
status = "disabled";
};
&rpmsg{
/*
* 64K for one rpmsg instance:
* --0xb8000000~0xb800ffff: pingpong
*/
vdev-nums = <1>;
reg = <0x0 0xb8000000 0x0 0x10000>;
memory-region = <&vdevbuffer>;
status = "disabled";
};
&sai3 {
status = "disabled";
};
&uart4 {
status = "disabled";
};
&wdog1 {
status = "disabled";
};
&sdma1{
status = "disabled";
};
&sdma3 {
status = "disabled";
};