Message ID | 20210805091218.1626290-1-aisheng.dong@nxp.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [1/2] arm64: dts: imx8mq: add remoteproc m4 support | expand |
Same for this set - I need Peng to add his RB _and_ TB tags to it before I consider for review. Also, please start adding cover letters to your patchsets. Thanks, Mathieu On Thu, Aug 05, 2021 at 05:12:17PM +0800, Dong Aisheng wrote: > Add cm4 remoteproc which supports rpmsg naming service. > It needs vdevbuffer and a pair of vrings and 16MB reserved memory. > > Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com> > --- > arch/arm64/boot/dts/freescale/Makefile | 1 + > .../boot/dts/freescale/imx8mq-evk-rpmsg.dts | 72 +++++++++++++++++++ > 2 files changed, 73 insertions(+) > create mode 100644 arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts > > diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile > index 4b4785d86324..687ad9d68a85 100644 > --- a/arch/arm64/boot/dts/freescale/Makefile > +++ b/arch/arm64/boot/dts/freescale/Makefile > @@ -49,6 +49,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mn-var-som-symphony.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mp-phyboard-pollux-rdk.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb > +dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk-rpmsg.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mq-hummingboard-pulse.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mq-kontron-pitx-imx8m.dtb > dtb-$(CONFIG_ARCH_MXC) += imx8mq-librem5-devkit.dtb > diff --git a/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts b/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts > new file mode 100644 > index 000000000000..4a8911087e5f > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts > @@ -0,0 +1,72 @@ > +// SPDX-License-Identifier: (GPL-2.0 OR MIT) > +/* > + * Copyright 2019-2021 NXP > + */ > + > +#include "imx8mq-evk.dts" > + > +/ { > + reserved-memory { > + #address-cells = <2>; > + #size-cells = <2>; > + ranges; > + > + vdev0vring0: vdev0vring0@b8000000 { > + reg = <0 0xb8000000 0 0x8000>; > + no-map; > + }; > + > + vdev0vring1: vdev0vring1@b8008000 { > + reg = <0 0xb8008000 0 0x8000>; > + no-map; > + }; > + > + rsc_table: rsc-table@b80ff000 { > + reg = <0 0xb80ff000 0 0x1000>; > + no-map; > + }; > + > + vdevbuffer: vdevbuffer@b8400000 { > + compatible = "shared-dma-pool"; > + reg = <0 0xb8400000 0 0x100000>; > + no-map; > + }; > + > + remoteproc@80000000 { > + reg = <0 0x80000000 0 0x1000000>; > + no-map; > + }; > + }; > + > + imx8mq-cm4 { > + compatible = "fsl,imx8mq-cm4"; > + clocks = <&clk IMX8MQ_CLK_M4_DIV>; > + mbox-names = "tx", "rx", "rxdb"; > + mboxes = <&mu 0 1 > + &mu 1 1 > + &mu 3 1>; > + memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, > + <&rsc_table>; > + syscon = <&src>; > + }; > +}; > + > +/* > + * Below devices are allocated on remoteproc > + */ > + > +&i2c2 { > + status = "disabled"; > +}; > + > +&pwm4 { > + status = "disabled"; > +}; > + > +&tmu { > + status = "disabled"; > +}; > + > +&uart2 { > + status = "disabled"; > +}; > -- > 2.25.1 >
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index 4b4785d86324..687ad9d68a85 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -49,6 +49,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mn-var-som-symphony.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mp-phyboard-pollux-rdk.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb +dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk-rpmsg.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-hummingboard-pulse.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-kontron-pitx-imx8m.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-librem5-devkit.dtb diff --git a/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts b/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts new file mode 100644 index 000000000000..4a8911087e5f --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts @@ -0,0 +1,72 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2019-2021 NXP + */ + +#include "imx8mq-evk.dts" + +/ { + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + vdev0vring0: vdev0vring0@b8000000 { + reg = <0 0xb8000000 0 0x8000>; + no-map; + }; + + vdev0vring1: vdev0vring1@b8008000 { + reg = <0 0xb8008000 0 0x8000>; + no-map; + }; + + rsc_table: rsc-table@b80ff000 { + reg = <0 0xb80ff000 0 0x1000>; + no-map; + }; + + vdevbuffer: vdevbuffer@b8400000 { + compatible = "shared-dma-pool"; + reg = <0 0xb8400000 0 0x100000>; + no-map; + }; + + remoteproc@80000000 { + reg = <0 0x80000000 0 0x1000000>; + no-map; + }; + }; + + imx8mq-cm4 { + compatible = "fsl,imx8mq-cm4"; + clocks = <&clk IMX8MQ_CLK_M4_DIV>; + mbox-names = "tx", "rx", "rxdb"; + mboxes = <&mu 0 1 + &mu 1 1 + &mu 3 1>; + memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, + <&rsc_table>; + syscon = <&src>; + }; +}; + +/* + * Below devices are allocated on remoteproc + */ + +&i2c2 { + status = "disabled"; +}; + +&pwm4 { + status = "disabled"; +}; + +&tmu { + status = "disabled"; +}; + +&uart2 { + status = "disabled"; +};
Add cm4 remoteproc which supports rpmsg naming service. It needs vdevbuffer and a pair of vrings and 16MB reserved memory. Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com> --- arch/arm64/boot/dts/freescale/Makefile | 1 + .../boot/dts/freescale/imx8mq-evk-rpmsg.dts | 72 +++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 arch/arm64/boot/dts/freescale/imx8mq-evk-rpmsg.dts