/* this triggers the specified IRQ request returns 0 if successful, or a negative error code.  */
static int vx_send_irq_dsp(struct vx_core *chip, int num)
/* this triggers the specified IRQ request returns 0 if successful, or a negative error code.  */
static int vx_send_irq_dsp(struct vx_core *chip, int num)
{
	int nirq;
	if (snd_vx_check_reg_bit(chip, VX_CVR, CVR_HC, 0, 200) < 0)
		return -EIO;
	nirq = num;
	if (vx_has_new_dsp(chip))
		nirq += VXP_IRQ_OFFSET;
	vx_outb(chip, CVR, (nirq >> 1) | CVR_HC);
	return 0;
}