Home
last modified time | relevance | path

Searched full:ipm (Results 1 – 25 of 124) sorted by relevance

12345

/Zephyr-Core-3.5.0/drivers/ipm/
DKconfig3 menuconfig IPM config
4 bool "Inter-Processor Mailbox (IPM) drivers"
9 if IPM
12 bool "IPM MHU driver"
19 bool "IPM NRF driver"
28 bool "Single instance of IPM device"
30 Enable this option if the IPM device should have
35 bool "ESP32 Software IPM driver"
42 bool "IPM driver based on IVSHMEM-Doorbell"
51 bool "AMD-Xilinx IPM driver"
[all …]
Dipm_sedi.c12 #include <zephyr/drivers/ipm.h>
23 struct ipm_sedi_context *ipm = dev->data; in set_ipm_dev_busy() local
26 atomic_set_bit(&ipm->status, is_write ? IPM_WRITE_BUSY_BIT : IPM_READ_BUSY_BIT); in set_ipm_dev_busy()
33 struct ipm_sedi_context *ipm = dev->data; in clear_ipm_dev_busy() local
36 atomic_clear_bit(&ipm->status, is_write ? IPM_WRITE_BUSY_BIT : IPM_READ_BUSY_BIT); in clear_ipm_dev_busy()
37 if ((!atomic_test_bit(&ipm->status, IPM_WRITE_BUSY_BIT)) in clear_ipm_dev_busy()
38 && (!atomic_test_bit(&ipm->status, IPM_READ_BUSY_BIT))) { in clear_ipm_dev_busy()
47 struct ipm_sedi_context *ipm = dev->data; in ipm_event_dispose() local
53 if (ipm->rx_msg_notify_cb != NULL) { in ipm_event_dispose()
57 sedi_ipc_read_msg(device, ipm->incoming_data_buf, len); in ipm_event_dispose()
[all …]
DKconfig.nrfx_ipc_channel1 # nRF IPM driver channel configuration
6 menu "IPM Message Channel [$(nrfx_ipc_num)] configuration"
9 bool "IPM Message Channel $(nrfx_ipc_num)"
12 bool "IPM Message RX Channel"
16 bool "IPM Message TX Channel"
DKconfig.imx5 bool "MCUX IPM driver"
12 bool "IMX IPM driver"
19 bool "IMX IPM driver (rev 2)"
26 prompt "IMX IPM max data size"
DKconfig.sedi5 bool "Intel SEDI IPM Driver"
9 This option enables the Intel SEDI IPM(IPC) driver.
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_mcux/src/
Dmain_master.c10 #include <zephyr/drivers/ipm.h>
33 const struct device *ipm; in main() local
37 /* Get IPM device handle */ in main()
38 ipm = DEVICE_DT_GET_ANY(nxp_lpc_mailbox); in main()
39 if (!(ipm && device_is_ready(ipm))) { in main()
40 printk("Could not get IPM device handle!\n"); in main()
46 ipm_register_callback(ipm, ping_ipm_callback, NULL); in main()
47 /* Enable the IPM device */ in main()
48 ipm_set_enabled(ipm, 1); in main()
51 ipm_send(ipm, 1, 0, &first_message, 4); in main()
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_mcux/remote/src/
Dmain_remote.c10 #include <zephyr/drivers/ipm.h>
22 const struct device *ipm; in main() local
24 ipm = DEVICE_DT_GET_ANY(nxp_lpc_mailbox); in main()
25 if (!(ipm && device_is_ready(ipm))) { in main()
29 ipm_register_callback(ipm, ping_ipm_callback, NULL); in main()
30 ipm_set_enabled(ipm, 1); in main()
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_imx/src/
Dmain.c10 #include <zephyr/drivers/ipm.h>
34 const struct device *ipm; in main() local
36 ipm = DEVICE_DT_GET(DT_NODELABEL(mub)); in main()
37 if (!device_is_ready(ipm)) { in main()
41 ipm_register_callback(ipm, ipm_callback, NULL); in main()
42 ipm_set_enabled(ipm, 1); in main()
43 printk("IPM initialized, data size = %d\n", in main()
/Zephyr-Core-3.5.0/samples/boards/stm32/h7_dual_core/src/
Dmain.c9 #include <zephyr/drivers/ipm.h>
37 const struct device *const ipm = DEVICE_DT_GET(DT_NODELABEL(mailbox)); in main() local
41 if (!device_is_ready(ipm)) { in main()
42 printk("ipm device not ready\n"); in main()
56 ipm_register_callback(ipm, new_message_callback, &data); in main()
58 ipm_set_enabled(ipm, 1); in main()
61 ipm_send(ipm, 0, 0, NULL, 0); in main()
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_imx/
Dsample.yaml3 IPM and transmits it back unchanged
4 name: i.MX IPM sample
6 sample.ipm.ipm_imx:
17 - ipm
DREADME.rst1 .. zephyr:code-sample:: ipm-imx
2 :name: IPM on NXP i.MX
5 Implement inter-processor mailbox (IPM) on i.MX SoCs containing a Messaging Unit peripheral.
11 using the IPM and transmits it back unchanged. The information about
17 which effectively creates four IPM channels. Selecting the option
22 Note that this is just a simple demo to demonstrate the i.MX IPM functionality
37 :zephyr-app: samples/drivers/ipm/ipm_imx
72 IPM initialized, data size = 4
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_mhu_dual_core/
DREADME.rst1 .. zephyr:code-sample:: ipm-mhu-dual-core
2 :name: IPM with ARM MHU
5 Implement inter-processor mailbox (IPM) using an MHU (Message Handling Unit)
25 This project outputs 'IPM MHU sample on musca_b1' to the console.
29 :zephyr-app: samples/drivers/ipm/ipm_mhu_dual_core
34 This project outputs 'IPM MHU sample on v2m_musca_b1_ns' to the console.
38 :zephyr-app: samples/drivers/ipm/ipm_mhu_dual_core
73 IPM MHU sample on musca_a
76 IPM MHU sample on musca_a_nonsecure
Dsample.yaml5 sample.ipm.ipm_mhu_dual_core:
6 tags: ipm
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_esp32/
Dsample.yaml2 name: ESP32 IPM Sample
4 sample.ipm.ipm_esp32:
8 - ipm
DREADME.rst1 .. zephyr:code-sample:: ipm-esp32
2 :name: IPM on ESP32
5 Implement inter-processor mailbox (IPM) between ESP32 APP and PRO CPUs.
13 message to the APP using the IPM driver, and waits for the APP response
25 Build the ESP32 IPM sample code as follows:
28 :zephyr-app: samples/drivers/ipm/ipm_esp32
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_ivshmem/
Dsample.yaml2 name: IVSHMEM IPM Sample
4 sample.ipm.ipm_ivshmem:
9 - ipm
DREADME.rst1 .. zephyr:code-sample:: ipm-ivshmem
2 :name: IPM over IVSHMEM
5 Implement inter-processor mailbox (IPM) over IVSHMEM (Inter-VM shared memory)
72 :zephyr-app: samples/drivers/ipm/ipm_ivshmem
82 :zephyr-app: samples/drivers/ipm/ipm_ivshmem
107 instance and use the command to send the IPM notification followed
132 uart:~$ Received IPM notification over IVSHMEM
/Zephyr-Core-3.5.0/drivers/console/
Dipm_console_receiver.c15 #include <zephyr/drivers/ipm.h>
42 printk("ipm console ring buffer error: %d\n", ret); in ipm_console_thread()
119 const struct device *ipm; in ipm_console_receiver_init() local
121 ipm = device_get_binding(config_info->bind_to); in ipm_console_receiver_init()
123 if (!ipm) { in ipm_console_receiver_init()
124 printk("unable to bind IPM console receiver to '%s'\n", in ipm_console_receiver_init()
129 if (ipm_max_id_val_get(ipm) < 0xFF) { in ipm_console_receiver_init()
130 printk("IPM driver %s doesn't support 8-bit id values", in ipm_console_receiver_init()
135 driver_data->ipm_device = ipm; in ipm_console_receiver_init()
141 ipm_register_callback(ipm, ipm_console_receive_callback, driver_data); in ipm_console_receiver_init()
[all …]
Dipm_console.c10 #include <zephyr/drivers/ipm.h>
30 LOG_ERR("Error sending character %c over IPM, ret %d", c, ret); in console_out()
70 LOG_DBG("IPM console initialization"); in ipm_console_init()
79 LOG_ERR("IPM driver does not support buffer length %d", in ipm_console_init()
89 /* Need to be initialized after IPM */
/Zephyr-Core-3.5.0/tests/drivers/ipm/src/
Dmain.c8 #include <zephyr/drivers/ipm.h>
32 /* Set up the dummy IPM driver */
39 /* Sending side of the console IPM driver, will forward anything sent
50 /* Receiving side of the console IPM driver. These numbers are
81 const struct device *ipm; in main() local
84 ipm = device_get_binding("ipm_dummy0"); in main()
86 /* Try sending a raw string to the IPM device to show that the in main()
90 ipm_send(ipm, 1, thestr[i], NULL, 0); in main()
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_mcux/remote/
Dsample.yaml4 name: IPM MCUX Mailbox Sample
6 sample.ipm.ipm_mcux.remote:
12 tags: ipm
/Zephyr-Core-3.5.0/dts/bindings/ipm/
Dintel,sedi-ipm.yaml5 description: INTEL SEDI IPM controller.
7 compatible: "intel,sedi-ipm"
21 description: sedi instance id of ipm
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_mcux/
Dsample.yaml4 name: IPM MCUX Mailbox Sample
6 sample.ipm.ipm_mcux:
12 tags: ipm
DREADME.rst1 .. zephyr:code-sample:: ipm-mcux
2 :name: IPM on NXP LPC
5 Implement inter-processor mailbox (IPM) on NXP LPC family.
28 :zephyr-app: samples/drivers/ipm/ipm_mcux
37 :zephyr-app: samples/drivers/ipm/ipm_mcux
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_ivshmem/src/
Dmain.c10 #include <zephyr/drivers/ipm.h>
19 printf("Received IPM notification over IVSHMEM\n"); in ipm_receive_callback()
43 "Send notification to other side using IPM",
49 "Send notification to other side using IPM",

12345