Lines Matching defs:mhuv2
46 #define MHUV2_PROTOCOL_PROP "arm,mhuv2-protocols"
160 * struct mhuv2 - MHUv2 mailbox controller data
174 struct mhuv2 {
190 #define mhu_from_mbox(_mbox) container_of(_mbox, struct mhuv2, mbox)
207 int (*rx_startup)(struct mhuv2 *mhu, struct mbox_chan *chan);
208 void (*rx_shutdown)(struct mhuv2 *mhu, struct mbox_chan *chan);
209 void *(*read_data)(struct mhuv2 *mhu, struct mbox_chan *chan);
211 void (*tx_startup)(struct mhuv2 *mhu, struct mbox_chan *chan);
212 void (*tx_shutdown)(struct mhuv2 *mhu, struct mbox_chan *chan);
213 int (*last_tx_done)(struct mhuv2 *mhu, struct mbox_chan *chan);
214 int (*send_data)(struct mhuv2 *mhu, struct mbox_chan *chan, void *arg);
261 static int mhuv2_doorbell_rx_startup(struct mhuv2 *mhu, struct mbox_chan *chan)
270 static void mhuv2_doorbell_rx_shutdown(struct mhuv2 *mhu,
279 static void *mhuv2_doorbell_read_data(struct mhuv2 *mhu, struct mbox_chan *chan)
288 static int mhuv2_doorbell_last_tx_done(struct mhuv2 *mhu,
297 static int mhuv2_doorbell_send_data(struct mhuv2 *mhu, struct mbox_chan *chan,
325 static int mhuv2_data_transfer_rx_startup(struct mhuv2 *mhu,
339 static void mhuv2_data_transfer_rx_shutdown(struct mhuv2 *mhu,
348 static void *mhuv2_data_transfer_read_data(struct mhuv2 *mhu,
385 static void mhuv2_data_transfer_tx_startup(struct mhuv2 *mhu,
398 static void mhuv2_data_transfer_tx_shutdown(struct mhuv2 *mhu,
408 static int mhuv2_data_transfer_last_tx_done(struct mhuv2 *mhu,
445 static int mhuv2_data_transfer_send_data(struct mhuv2 *mhu,
500 static struct mbox_chan *get_irq_chan_comb(struct mhuv2 *mhu, u32 __iomem *reg)
540 struct mhuv2 *mhu = data;
621 static struct mbox_chan *get_irq_chan_comb_rx(struct mhuv2 *mhu)
645 static struct mbox_chan *get_irq_chan_stat_rx(struct mhuv2 *mhu)
668 static struct mbox_chan *get_irq_chan_rx(struct mhuv2 *mhu)
678 struct mhuv2 *mhu = arg;
713 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
721 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
732 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
742 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
758 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
766 struct mhuv2 *mhu = mhu_from_mbox(chan->mbox);
795 struct mhuv2 *mhu = mhu_from_mbox(mbox);
836 static int mhuv2_verify_protocol(struct mhuv2 *mhu)
872 static int mhuv2_allocate_channels(struct mhuv2 *mhu)
931 static int mhuv2_parse_channels(struct mhuv2 *mhu)
966 static int mhuv2_tx_init(struct amba_device *adev, struct mhuv2 *mhu,
988 IRQF_ONESHOT, "mhuv2-tx", mhu);
1020 static int mhuv2_rx_init(struct amba_device *adev, struct mhuv2 *mhu,
1041 "mhuv2-rx", mhu);
1061 struct mhuv2 *mhu;
1076 if (of_device_is_compatible(np, "arm,mhuv2-tx"))
1078 else if (of_device_is_compatible(np, "arm,mhuv2-rx"))
1104 struct mhuv2 *mhu = amba_get_drvdata(adev);
1127 .name = "arm-mhuv2",