/Zephyr-Core-3.5.0/drivers/ipm/ |
D | Kconfig | 3 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 …]
|
D | ipm_sedi.c | 12 #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 …]
|
D | Kconfig.nrfx_ipc_channel | 1 # 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"
|
D | Kconfig.imx | 5 bool "MCUX IPM driver" 12 bool "IMX IPM driver" 19 bool "IMX IPM driver (rev 2)" 26 prompt "IMX IPM max data size"
|
D | Kconfig.sedi | 5 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/ |
D | main_master.c | 10 #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/ |
D | main_remote.c | 10 #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/ |
D | main.c | 10 #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/ |
D | main.c | 9 #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/ |
D | sample.yaml | 3 IPM and transmits it back unchanged 4 name: i.MX IPM sample 6 sample.ipm.ipm_imx: 17 - ipm
|
D | README.rst | 1 .. 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/ |
D | README.rst | 1 .. 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
|
D | sample.yaml | 5 sample.ipm.ipm_mhu_dual_core: 6 tags: ipm
|
/Zephyr-Core-3.5.0/samples/drivers/ipm/ipm_esp32/ |
D | sample.yaml | 2 name: ESP32 IPM Sample 4 sample.ipm.ipm_esp32: 8 - ipm
|
D | README.rst | 1 .. 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/ |
D | sample.yaml | 2 name: IVSHMEM IPM Sample 4 sample.ipm.ipm_ivshmem: 9 - ipm
|
D | README.rst | 1 .. 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/ |
D | ipm_console_receiver.c | 15 #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 …]
|
D | ipm_console.c | 10 #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/ |
D | main.c | 8 #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/ |
D | sample.yaml | 4 name: IPM MCUX Mailbox Sample 6 sample.ipm.ipm_mcux.remote: 12 tags: ipm
|
/Zephyr-Core-3.5.0/dts/bindings/ipm/ |
D | intel,sedi-ipm.yaml | 5 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/ |
D | sample.yaml | 4 name: IPM MCUX Mailbox Sample 6 sample.ipm.ipm_mcux: 12 tags: ipm
|
D | README.rst | 1 .. 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/ |
D | main.c | 10 #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",
|