Lines Matching refs:controller
49 struct mbox_controller controller; member
85 struct device *dev = ipcc->controller.dev; in stm32_ipcc_rx_irq()
104 mbox_chan_received_data(&ipcc->controller.chans[chan], NULL); in stm32_ipcc_rx_irq()
118 struct device *dev = ipcc->controller.dev; in stm32_ipcc_tx_irq()
138 mbox_chan_txdone(&ipcc->controller.chans[chan], 0); in stm32_ipcc_tx_irq()
150 controller); in stm32_ipcc_send_data()
152 dev_dbg(ipcc->controller.dev, "%s: chan:%d\n", __func__, chan); in stm32_ipcc_send_data()
169 controller); in stm32_ipcc_startup()
174 dev_err(ipcc->controller.dev, "can not enable the clock\n"); in stm32_ipcc_startup()
189 controller); in stm32_ipcc_shutdown()
305 ipcc->controller.dev = dev; in stm32_ipcc_probe()
306 ipcc->controller.txdone_irq = true; in stm32_ipcc_probe()
307 ipcc->controller.ops = &stm32_ipcc_ops; in stm32_ipcc_probe()
308 ipcc->controller.num_chans = ipcc->n_chans; in stm32_ipcc_probe()
309 ipcc->controller.chans = devm_kcalloc(dev, ipcc->controller.num_chans, in stm32_ipcc_probe()
310 sizeof(*ipcc->controller.chans), in stm32_ipcc_probe()
312 if (!ipcc->controller.chans) { in stm32_ipcc_probe()
317 for (i = 0; i < ipcc->controller.num_chans; i++) in stm32_ipcc_probe()
318 ipcc->controller.chans[i].con_priv = (void *)i; in stm32_ipcc_probe()
320 ret = devm_mbox_controller_register(dev, &ipcc->controller); in stm32_ipcc_probe()
331 ipcc->controller.num_chans, ipcc->proc_id); in stm32_ipcc_probe()