Commit 96d7ddde19cd9617e377f30dbc23665c3ec03c78

Authored by Edgar E. Iglesias
1 parent 678fdca8

etrax: Don't keep the passed irq pointer.

Copy passed irq object at channel connect.

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Showing 1 changed file with 3 additions and 3 deletions
hw/etraxfs_dma.c
... ... @@ -165,7 +165,7 @@ enum dma_ch_state
165 165  
166 166 struct fs_dma_channel
167 167 {
168   - qemu_irq *irq;
  168 + qemu_irq irq;
169 169 struct etraxfs_dma_client *client;
170 170  
171 171 /* Internal status. */
... ... @@ -392,7 +392,7 @@ static void channel_update_irq(struct fs_dma_ctrl *ctrl, int c)
392 392 c,
393 393 ctrl->channels[c].regs[R_MASKED_INTR]));
394 394  
395   - qemu_set_irq(ctrl->channels[c].irq[0],
  395 + qemu_set_irq(ctrl->channels[c].irq,
396 396 !!ctrl->channels[c].regs[R_MASKED_INTR]);
397 397 }
398 398  
... ... @@ -716,7 +716,7 @@ int etraxfs_dmac_input(struct etraxfs_dma_client *client,
716 716 void etraxfs_dmac_connect(void *opaque, int c, qemu_irq *line, int input)
717 717 {
718 718 struct fs_dma_ctrl *ctrl = opaque;
719   - ctrl->channels[c].irq = line;
  719 + ctrl->channels[c].irq = *line;
720 720 ctrl->channels[c].input = input;
721 721 }
722 722  
... ...