From 529bf56aa35e331ba92e2326aeffe9f6b6cbd083 Mon Sep 17 00:00:00 2001 From: Gerard Marull-Paretas Date: Fri, 23 Feb 2024 11:33:50 +0100 Subject: [PATCH] samples: drivers: mbox_data: use DT Instead of hardcoded stuff in C sources (node label and channel IDs). Signed-off-by: Gerard Marull-Paretas --- .../lpcxpresso55s69_lpc55s69_cpu0.overlay | 6 ++ .../mbox_data/boards/mimxrt1160_evk_cm7.conf | 3 - .../boards/mimxrt1160_evk_cm7.overlay | 29 ---------- .../mimxrt1160_evk_mimxrt1166_cm7.overlay | 6 ++ .../mimxrt1170_evk_mimxrt1176_cm7_A.overlay | 6 ++ .../mimxrt1170_evk_mimxrt1176_cm7_B.overlay | 6 ++ .../mbox_data/boards/mimxrt1170_evkb_cm7.conf | 3 - .../lpcxpresso55s69_lpc55s69_cpu1.overlay | 6 ++ .../remote/boards/mimxrt1160_evk_cm4.conf | 4 -- .../remote/boards/mimxrt1160_evk_cm4.overlay | 54 ------------------ .../mimxrt1160_evk_mimxrt1166_cm4.overlay | 6 ++ .../remote/boards/mimxrt1170_evk_cm4.conf | 4 -- .../remote/boards/mimxrt1170_evk_cm4.overlay | 54 ------------------ .../mimxrt1170_evk_mimxrt1176_cm4.overlay | 6 ++ .../mimxrt1170_evk_mimxrt1176_cm4_B.overlay | 5 ++ .../remote/boards/mimxrt1170_evkb_cm4.conf | 4 -- .../remote/boards/mimxrt1170_evkb_cm4.overlay | 55 ------------------- samples/drivers/mbox_data/remote/src/main.c | 15 +---- samples/drivers/mbox_data/src/main.c | 15 +---- 19 files changed, 53 insertions(+), 234 deletions(-) delete mode 100644 samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.conf delete mode 100644 samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.overlay delete mode 100644 samples/drivers/mbox_data/boards/mimxrt1170_evkb_cm7.conf delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.conf delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.overlay delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.conf delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.overlay delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.conf delete mode 100644 samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.overlay diff --git a/samples/drivers/mbox_data/boards/lpcxpresso55s69_lpc55s69_cpu0.overlay b/samples/drivers/mbox_data/boards/lpcxpresso55s69_lpc55s69_cpu0.overlay index b5919c4fd72..76773b87fcd 100644 --- a/samples/drivers/mbox_data/boards/lpcxpresso55s69_lpc55s69_cpu0.overlay +++ b/samples/drivers/mbox_data/boards/lpcxpresso55s69_lpc55s69_cpu0.overlay @@ -26,4 +26,10 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; diff --git a/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.conf b/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.conf deleted file mode 100644 index 583b4950360..00000000000 --- a/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.conf +++ /dev/null @@ -1,3 +0,0 @@ -CONFIG_MBOX_NXP_IMX_MU=y -CONFIG_INCLUDE_REMOTE_DIR=y -CONFIG_SECOND_CORE_MCUX=y diff --git a/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.overlay b/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.overlay deleted file mode 100644 index 870b9928faf..00000000000 --- a/samples/drivers/mbox_data/boards/mimxrt1160_evk_cm7.overlay +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright 2024 NXP - * - * SPDX-License-Identifier: Apache-2.0 - */ - -/ { - chosen { - /* Delete ipc chosen property where old IPM mailbox driver bellow is - * configured. - */ - /delete-property/ zephyr,ipc; - }; - - soc { - /* Delete IPM Driver node nxp,imx-mu */ - /delete-node/ mailbox@40c48000; - - /* Attach MBOX driver to MU Unit */ - mbox:mbox@40c48000 { - compatible = "nxp,mbox-imx-mu"; - reg = <0x40c48000 0x4000>; - interrupts = <118 0>; - rx-channels = <4>; - #mbox-cells = <1>; - status = "okay"; - }; - }; -}; diff --git a/samples/drivers/mbox_data/boards/mimxrt1160_evk_mimxrt1166_cm7.overlay b/samples/drivers/mbox_data/boards/mimxrt1160_evk_mimxrt1166_cm7.overlay index 870b9928faf..c2014d3d809 100644 --- a/samples/drivers/mbox_data/boards/mimxrt1160_evk_mimxrt1166_cm7.overlay +++ b/samples/drivers/mbox_data/boards/mimxrt1160_evk_mimxrt1166_cm7.overlay @@ -26,4 +26,10 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; diff --git a/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_A.overlay b/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_A.overlay index 870b9928faf..c2014d3d809 100644 --- a/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_A.overlay +++ b/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_A.overlay @@ -26,4 +26,10 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; diff --git a/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_B.overlay b/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_B.overlay index 870b9928faf..c2014d3d809 100644 --- a/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_B.overlay +++ b/samples/drivers/mbox_data/boards/mimxrt1170_evk_mimxrt1176_cm7_B.overlay @@ -26,4 +26,10 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; diff --git a/samples/drivers/mbox_data/boards/mimxrt1170_evkb_cm7.conf b/samples/drivers/mbox_data/boards/mimxrt1170_evkb_cm7.conf deleted file mode 100644 index 0dfb100ed70..00000000000 --- a/samples/drivers/mbox_data/boards/mimxrt1170_evkb_cm7.conf +++ /dev/null @@ -1,3 +0,0 @@ -CONFIG_MBOX_NXP_IMX_MU=y -CONFIG_SECOND_CORE_MCUX=y -CONFIG_INCLUDE_REMOTE_DIR=y diff --git a/samples/drivers/mbox_data/remote/boards/lpcxpresso55s69_lpc55s69_cpu1.overlay b/samples/drivers/mbox_data/remote/boards/lpcxpresso55s69_lpc55s69_cpu1.overlay index 96bd5aa1c3a..a1cfbf7224d 100644 --- a/samples/drivers/mbox_data/remote/boards/lpcxpresso55s69_lpc55s69_cpu1.overlay +++ b/samples/drivers/mbox_data/remote/boards/lpcxpresso55s69_lpc55s69_cpu1.overlay @@ -26,4 +26,10 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 2>, <&mbox 3>; + mbox-names = "tx", "rx"; + }; }; diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.conf b/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.conf deleted file mode 100644 index 0d36a72aec6..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_MBOX_NXP_IMX_MU=y -CONFIG_BUILD_OUTPUT_INFO_HEADER=y -CONFIG_BUILD_OUTPUT_HEX=y -CONFIG_SECOND_CORE_MCUX=y diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.overlay deleted file mode 100644 index 3f6115b9c58..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_cm4.overlay +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2024 NXP - * - * SPDX-License-Identifier: Apache-2.0 - */ - -/ { - chosen { - zephyr,flash = &ocram; - zephyr,console = &lpuart2; - zephyr,shell-uart = &lpuart2; - - /* Delete ipc chosen property where old IPM mailbox driver bellow is - * configured. - */ - /delete-property/ zephyr,ipc; - }; - - soc { - /delete-node/ gpt@400f0000; - - /* Replace GPT2 with another GPT kernel timer */ - gpt2_hw_timer:gpt@400f0000 { - compatible = "nxp,gpt-hw-timer"; - reg = <0x400f0000 0x4000>; - interrupts = <120 0>; - status = "okay"; - }; - - /* Delete IPM Driver node nxp,imx-mu */ - /delete-node/ mailbox@40c4c000; - - /* Attach MBOX driver to MU Unit */ - mbox:mbox@40c4c000 { - compatible = "nxp,mbox-imx-mu"; - reg = <0x40c4c000 0x4000>; - interrupts = <118 0>; - rx-channels = <4>; - #mbox-cells = <1>; - status = "okay"; - }; - }; -}; - -/* Enable secondary LPUART */ -&lpuart2 { - status = "okay"; - current-speed = <115200>; -}; - -/* Disable primary GPT timer */ -&gpt_hw_timer { - status = "disabled"; -}; diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_mimxrt1166_cm4.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_mimxrt1166_cm4.overlay index 3f6115b9c58..c4cbef58d77 100644 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_mimxrt1166_cm4.overlay +++ b/samples/drivers/mbox_data/remote/boards/mimxrt1160_evk_mimxrt1166_cm4.overlay @@ -40,6 +40,12 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; /* Enable secondary LPUART */ diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.conf b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.conf deleted file mode 100644 index 0d36a72aec6..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_MBOX_NXP_IMX_MU=y -CONFIG_BUILD_OUTPUT_INFO_HEADER=y -CONFIG_BUILD_OUTPUT_HEX=y -CONFIG_SECOND_CORE_MCUX=y diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.overlay deleted file mode 100644 index 3f6115b9c58..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_cm4.overlay +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2024 NXP - * - * SPDX-License-Identifier: Apache-2.0 - */ - -/ { - chosen { - zephyr,flash = &ocram; - zephyr,console = &lpuart2; - zephyr,shell-uart = &lpuart2; - - /* Delete ipc chosen property where old IPM mailbox driver bellow is - * configured. - */ - /delete-property/ zephyr,ipc; - }; - - soc { - /delete-node/ gpt@400f0000; - - /* Replace GPT2 with another GPT kernel timer */ - gpt2_hw_timer:gpt@400f0000 { - compatible = "nxp,gpt-hw-timer"; - reg = <0x400f0000 0x4000>; - interrupts = <120 0>; - status = "okay"; - }; - - /* Delete IPM Driver node nxp,imx-mu */ - /delete-node/ mailbox@40c4c000; - - /* Attach MBOX driver to MU Unit */ - mbox:mbox@40c4c000 { - compatible = "nxp,mbox-imx-mu"; - reg = <0x40c4c000 0x4000>; - interrupts = <118 0>; - rx-channels = <4>; - #mbox-cells = <1>; - status = "okay"; - }; - }; -}; - -/* Enable secondary LPUART */ -&lpuart2 { - status = "okay"; - current-speed = <115200>; -}; - -/* Disable primary GPT timer */ -&gpt_hw_timer { - status = "disabled"; -}; diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4.overlay index 3f6115b9c58..c4cbef58d77 100644 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4.overlay +++ b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4.overlay @@ -40,6 +40,12 @@ status = "okay"; }; }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; /* Enable secondary LPUART */ diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4_B.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4_B.overlay index e3576826702..c4cbef58d77 100644 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4_B.overlay +++ b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evk_mimxrt1176_cm4_B.overlay @@ -41,6 +41,11 @@ }; }; + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox 3>, <&mbox 2>; + mbox-names = "tx", "rx"; + }; }; /* Enable secondary LPUART */ diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.conf b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.conf deleted file mode 100644 index 0d36a72aec6..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_MBOX_NXP_IMX_MU=y -CONFIG_BUILD_OUTPUT_INFO_HEADER=y -CONFIG_BUILD_OUTPUT_HEX=y -CONFIG_SECOND_CORE_MCUX=y diff --git a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.overlay b/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.overlay deleted file mode 100644 index e3576826702..00000000000 --- a/samples/drivers/mbox_data/remote/boards/mimxrt1170_evkb_cm4.overlay +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright 2024 NXP - * - * SPDX-License-Identifier: Apache-2.0 - */ - -/ { - chosen { - zephyr,flash = &ocram; - zephyr,console = &lpuart2; - zephyr,shell-uart = &lpuart2; - - /* Delete ipc chosen property where old IPM mailbox driver bellow is - * configured. - */ - /delete-property/ zephyr,ipc; - }; - - soc { - /delete-node/ gpt@400f0000; - - /* Replace GPT2 with another GPT kernel timer */ - gpt2_hw_timer:gpt@400f0000 { - compatible = "nxp,gpt-hw-timer"; - reg = <0x400f0000 0x4000>; - interrupts = <120 0>; - status = "okay"; - }; - - /* Delete IPM Driver node nxp,imx-mu */ - /delete-node/ mailbox@40c4c000; - - /* Attach MBOX driver to MU Unit */ - mbox:mbox@40c4c000 { - compatible = "nxp,mbox-imx-mu"; - reg = <0x40c4c000 0x4000>; - interrupts = <118 0>; - rx-channels = <4>; - #mbox-cells = <1>; - status = "okay"; - }; - }; - -}; - -/* Enable secondary LPUART */ -&lpuart2 { - status = "okay"; - current-speed = <115200>; -}; - -/* Disable primary GPT timer */ -&gpt_hw_timer { - status = "disabled"; -}; diff --git a/samples/drivers/mbox_data/remote/src/main.c b/samples/drivers/mbox_data/remote/src/main.c index 0f3ad77a4d0..bb73fabbbc1 100644 --- a/samples/drivers/mbox_data/remote/src/main.c +++ b/samples/drivers/mbox_data/remote/src/main.c @@ -15,9 +15,6 @@ static K_SEM_DEFINE(g_mbox_data_rx_sem, 0, 1); static uint32_t g_mbox_received_data; static uint32_t g_mbox_received_channel; -#define TX_ID (2) -#define RX_ID (3) - static void callback(const struct device *dev, uint32_t channel, void *user_data, struct mbox_msg *data) { @@ -29,20 +26,14 @@ static void callback(const struct device *dev, uint32_t channel, void *user_data int main(void) { - struct mbox_channel tx_channel; - struct mbox_channel rx_channel; - const struct device *dev; + const struct mbox_channel tx_channel = MBOX_DT_CHANNEL_GET(DT_PATH(mbox_consumer), tx); + const struct mbox_channel rx_channel = MBOX_DT_CHANNEL_GET(DT_PATH(mbox_consumer), rx); struct mbox_msg msg = {0}; uint32_t message = 0; printk("mbox_data Server demo started\n"); - dev = DEVICE_DT_GET(DT_NODELABEL(mbox)); - - mbox_init_channel(&tx_channel, dev, TX_ID); - mbox_init_channel(&rx_channel, dev, RX_ID); - - const int max_transfer_size_bytes = mbox_mtu_get(dev); + const int max_transfer_size_bytes = mbox_mtu_get(tx_channel.dev); /* Sample currently supports only transfer size up to 4 bytes */ if ((max_transfer_size_bytes <= 0) || (max_transfer_size_bytes > 4)) { printk("mbox_mtu_get() error\n"); diff --git a/samples/drivers/mbox_data/src/main.c b/samples/drivers/mbox_data/src/main.c index 85df24940c4..b6520418484 100644 --- a/samples/drivers/mbox_data/src/main.c +++ b/samples/drivers/mbox_data/src/main.c @@ -15,9 +15,6 @@ static K_SEM_DEFINE(g_mbox_data_rx_sem, 0, 1); static uint32_t g_mbox_received_data; static uint32_t g_mbox_received_channel; -#define TX_ID (3) -#define RX_ID (2) - static void callback(const struct device *dev, uint32_t channel, void *user_data, struct mbox_msg *data) { @@ -29,20 +26,14 @@ static void callback(const struct device *dev, uint32_t channel, void *user_data int main(void) { - struct mbox_channel tx_channel; - struct mbox_channel rx_channel; - const struct device *dev; + const struct mbox_channel tx_channel = MBOX_DT_CHANNEL_GET(DT_PATH(mbox_consumer), tx); + const struct mbox_channel rx_channel = MBOX_DT_CHANNEL_GET(DT_PATH(mbox_consumer), rx); struct mbox_msg msg = {0}; uint32_t message = 0; printk("mbox_data Client demo started\n"); - dev = DEVICE_DT_GET(DT_NODELABEL(mbox)); - - mbox_init_channel(&tx_channel, dev, TX_ID); - mbox_init_channel(&rx_channel, dev, RX_ID); - - const int max_transfer_size_bytes = mbox_mtu_get(dev); + const int max_transfer_size_bytes = mbox_mtu_get(tx_channel.dev); /* Sample currently supports only transfer size up to 4 bytes */ if ((max_transfer_size_bytes < 0) || (max_transfer_size_bytes > 4)) { printk("mbox_mtu_get() error\n");