diff --git a/dts/xtensa/nxp/nxp_imx8ulp.dtsi b/dts/xtensa/nxp/nxp_imx8ulp.dtsi index 46381671e05d21..c0850ef9eab6e2 100644 --- a/dts/xtensa/nxp/nxp_imx8ulp.dtsi +++ b/dts/xtensa/nxp/nxp_imx8ulp.dtsi @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023 NXP + * Copyright 2023, 2024 NXP * * SPDX-License-Identifier: Apache-2.0 */ @@ -17,16 +17,16 @@ device_type = "cpu"; compatible = "cdns,tensilica-xtensa-lx7"; reg = <0>; - }; - #address-cells = <1>; - #size-cells = <0>; + #address-cells = <1>; + #size-cells = <0>; - clic: interrupt-controller@0 { - compatible = "cdns,xtensa-core-intc"; - reg = <0>; - interrupt-controller; - #interrupt-cells = <3>; + clic: interrupt-controller@0 { + compatible = "cdns,xtensa-core-intc"; + reg = <0>; + interrupt-controller; + #interrupt-cells = <3>; + }; }; }; @@ -98,4 +98,14 @@ dai-index = <6>; status = "disabled"; }; + + mu3: mbox@2da20000 { + compatible = "nxp,mbox-imx-mu"; + reg = <0x2da20000 DT_SIZE_K(64)>; + interrupt-parent = <&clic>; + interrupts = <15 0 0>; + rx-channels = <4>; + #mbox-cells = <1>; + status = "disabled"; + }; }; diff --git a/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.conf b/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.conf new file mode 100644 index 00000000000000..35b9c68a4ee1f8 --- /dev/null +++ b/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.conf @@ -0,0 +1,8 @@ +CONFIG_LOG_PRINTK=n +CONFIG_OPENAMP_WITH_DCACHE=y + +CONFIG_MBOX=y +CONFIG_MBOX_INIT_PRIORITY=3 + +CONFIG_IPM_MBOX=y +CONFIG_MBOX_NXP_IMX_MU=y diff --git a/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.overlay b/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.overlay new file mode 100644 index 00000000000000..4b38ed19328d46 --- /dev/null +++ b/samples/subsys/ipc/openamp_rsc_table/boards/imx8ulp_evk_mimx8ud7_adsp.overlay @@ -0,0 +1,31 @@ +/* + * Copyright 2024 NXP + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + /* + * shared memory reserved for the inter-processor communication + */ + zephyr,ipc_shm = &dspsram3; + zephyr,ipc = &mailbox0; + }; + + dspsram3: memory@8fef0000 { + compatible = "mmio-sram"; + reg = <0x8fef0000 0x110000>; + }; + + mailbox0: mailbox { + compatible = "zephyr,mbox-ipm"; + mboxes = <&mu3 0>, <&mu3 1>; + mbox-names = "tx", "rx"; + status = "okay"; + }; +}; + +&mu3 { + status = "okay"; +}; diff --git a/soc/nxp/imx/imx8ulp/adsp/linker.ld b/soc/nxp/imx/imx8ulp/adsp/linker.ld index a9f07e825ec3b1..98fab64a087d4f 100644 --- a/soc/nxp/imx/imx8ulp/adsp/linker.ld +++ b/soc/nxp/imx/imx8ulp/adsp/linker.ld @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023 NXP + * Copyright 2023, 2024 NXP * * SPDX-License-Identifier: Apache-2.0 */ @@ -172,6 +172,13 @@ EXTERN(ext_man_fw_ver) SECTIONS { +#ifdef CONFIG_OPENAMP_RSC_TABLE + SECTION_PROLOGUE(.resource_table,, SUBALIGN(4)) + { + KEEP(*(.resource_table*)) + } GROUP_LINK_IN(ROMABLE_REGION) +#endif + #include #ifdef CONFIG_LLEXT diff --git a/west.yml b/west.yml index 5b84378e2ea113..65c2d1ce8b8791 100644 --- a/west.yml +++ b/west.yml @@ -203,7 +203,7 @@ manifest: groups: - hal - name: hal_nxp - revision: d2e2514cbe70babc2dfe6e8eb0e4f9e4c97769b6 + revision: pull/488/head path: modules/hal/nxp groups: - hal