1 /* SPDX-License-Identifier: BSD-2-Clause */ 2 /* 3 * Copyright 2022 NXP 4 */ 5 6 #ifndef __IMX_MU_PLATFORM_H__ 7 #define __IMX_MU_PLATFORM_H__ 8 9 /* 10 * Return the number of reception channels 11 */ 12 unsigned int imx_mu_plat_get_rx_channel(void); 13 14 /* 15 * Return the number of transmission channels 16 */ 17 unsigned int imx_mu_plat_get_tx_channel(void); 18 19 /* 20 * Send a 32bits word via the MU 21 * 22 * @base: virtual base address of the MU controller 23 * @index: MU channel index 24 * @[in]msg: word to send 25 */ 26 TEE_Result imx_mu_plat_send(vaddr_t base, unsigned int index, uint32_t msg); 27 28 /* 29 * Get the 32bits word received by the MU 30 * 31 * @base: virtual base address of the MU controller 32 * @index: MU channel index 33 * @[out]msg: word received 34 */ 35 TEE_Result imx_mu_plat_receive(vaddr_t base, unsigned int index, uint32_t *msg); 36 37 /* 38 * Initialize the MU interface 39 * 40 * @base: virtual base address of the MU controller 41 */ 42 void imx_mu_plat_init(vaddr_t base); 43 #endif /* __IMX_MU_PLATFORM_H__ */ 44