/linux-6.1.9/drivers/mailbox/ |
D | arm_mhuv2.c | 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) in mhuv2_doorbell_rx_startup() argument 266 &mhu->recv->ch_wn[priv->ch_wn_idx].mask_clear); in mhuv2_doorbell_rx_startup() 270 static void mhuv2_doorbell_rx_shutdown(struct mhuv2 *mhu, in mhuv2_doorbell_rx_shutdown() argument [all …]
|
D | arm_mhu_db.c | 54 struct arm_mhu *mhu; member 79 void __iomem *base = chan_info->mhu->mlink[chan_info->pchan].rx_reg; in mhu_db_mbox_clear_irq() 84 static unsigned int mhu_db_mbox_irq_to_pchan_num(struct arm_mhu *mhu, int irq) in mhu_db_mbox_irq_to_pchan_num() argument 89 if (mhu->mlink[pchan].irq == irq) in mhu_db_mbox_irq_to_pchan_num() 95 mhu_db_mbox_irq_to_channel(struct arm_mhu *mhu, unsigned int pchan) in mhu_db_mbox_irq_to_channel() argument 100 struct mbox_controller *mbox = &mhu->mbox; in mhu_db_mbox_irq_to_channel() 101 void __iomem *base = mhu->mlink[pchan].rx_reg; in mhu_db_mbox_irq_to_channel() 127 struct arm_mhu *mhu = data; in mhu_db_mbox_rx_handler() local 128 unsigned int pchan = mhu_db_mbox_irq_to_pchan_num(mhu, irq); in mhu_db_mbox_rx_handler() 130 while (NULL != (chan = mhu_db_mbox_irq_to_channel(mhu, pchan))) { in mhu_db_mbox_rx_handler() [all …]
|
D | platform_mhu.c | 118 struct platform_mhu *mhu; in platform_mhu_probe() local 125 mhu = devm_kzalloc(dev, sizeof(*mhu), GFP_KERNEL); in platform_mhu_probe() 126 if (!mhu) in platform_mhu_probe() 129 mhu->base = devm_platform_ioremap_resource(pdev, 0); in platform_mhu_probe() 130 if (IS_ERR(mhu->base)) { in platform_mhu_probe() 132 return PTR_ERR(mhu->base); in platform_mhu_probe() 136 mhu->chan[i].con_priv = &mhu->mlink[i]; in platform_mhu_probe() 137 mhu->mlink[i].irq = platform_get_irq(pdev, i); in platform_mhu_probe() 138 if (mhu->mlink[i].irq < 0) { in platform_mhu_probe() 140 return mhu->mlink[i].irq; in platform_mhu_probe() [all …]
|
D | arm_mhu.c | 112 struct arm_mhu *mhu; in mhu_probe() local 120 mhu = devm_kzalloc(dev, sizeof(*mhu), GFP_KERNEL); in mhu_probe() 121 if (!mhu) in mhu_probe() 124 mhu->base = devm_ioremap_resource(dev, &adev->res); in mhu_probe() 125 if (IS_ERR(mhu->base)) in mhu_probe() 126 return PTR_ERR(mhu->base); in mhu_probe() 129 mhu->chan[i].con_priv = &mhu->mlink[i]; in mhu_probe() 130 mhu->mlink[i].irq = adev->irq[i]; in mhu_probe() 131 mhu->mlink[i].rx_reg = mhu->base + mhu_reg[i]; in mhu_probe() 132 mhu->mlink[i].tx_reg = mhu->mlink[i].rx_reg + TX_REG_OFFSET; in mhu_probe() [all …]
|
/linux-6.1.9/Documentation/devicetree/bindings/mailbox/ |
D | arm,mhu.yaml | 4 $id: http://devicetree.org/schemas/mailbox/arm,mhu.yaml# 37 - arm,mhu 38 - arm,mhu-doorbell 47 - const: arm,mhu 52 - const: arm,mhu-doorbell 97 compatible = "arm,mhu", "arm,primecell"; 129 compatible = "arm,mhu-doorbell", "arm,primecell";
|
D | arm,mhuv2.yaml | 111 mhu: mailbox@2b1f0000 { 142 mboxes = <&mhu 0 5>; // Channel Window Group 0, doorbell 5. 143 mboxes = <&mhu 1 7>; // Channel Window Group 1, doorbell 7. 144 mboxes = <&mhu 2 0>; // Channel Window Group 2, data transfer protocol with 1 window. 145 mboxes = <&mhu 3 0>; // Channel Window Group 3, data transfer protocol with 5 windows. 146 mboxes = <&mhu 4 0>; // Channel Window Group 4, data transfer protocol with 7 windows. 202 mboxes = <&mhu_tx 2 0>, //data-transfer protocol with 5 windows, mhu-tx 203 <&mhu_tx 3 0>, //data-transfer protocol with 7 windows, mhu-tx 204 <&mhu_rx 2 27>, //doorbell protocol channel 2, doorbell 27, mhu-rx 205 <&mhu_rx 0 0>; //data-transfer protocol with 1 window, mhu-rx
|
D | amlogic,meson-gxbb-mhu.yaml | 5 $id: "http://devicetree.org/schemas/mailbox/amlogic,meson-gxbb-mhu.yaml#" 24 - amlogic,meson-gxbb-mhu 49 compatible = "amlogic,meson-gxbb-mhu";
|
/linux-6.1.9/Documentation/devicetree/bindings/clock/ |
D | fujitsu,mb86s70-crg11.txt | 17 mhu: mhu0@2b1f0000 { 19 compatible = "arm,mhu";
|
/linux-6.1.9/arch/arm64/boot/dts/arm/ |
D | juno-scmi.dtsi | 188 compatible = "arm,mhu-doorbell", "arm,primecell";
|
D | juno-base.dtsi | 25 mailbox: mhu@2b1f0000 { 26 compatible = "arm,mhu", "arm,primecell";
|
/linux-6.1.9/arch/arm64/boot/dts/amlogic/ |
D | meson-gx.dtsi | 572 compatible = "amlogic,meson-gxbb-mhu";
|
D | meson-axg.dtsi | 1273 compatible = "amlogic,meson-gxbb-mhu";
|