/* input buffer for single insn */
        int16_t *insn_buf;
 
+       int8_t ao_chanlist[USBDUX_NUM_AO_CHAN];
        unsigned int ao_readback[USBDUX_NUM_AO_CHAN];
 
        unsigned int high_speed:1;
        unsigned int ao_counter;
        /* interval in frames/uframes */
        unsigned int ai_interval;
-       /* D/A commands */
-       int8_t *dac_commands;
        /* commands */
        int8_t *dux_commands;
        struct semaphore sem;
                len = s->async->cmd.chanlist_len;
                *datap++ = len;
                for (i = 0; i < s->async->cmd.chanlist_len; i++) {
-                       unsigned int chan = devpriv->dac_commands[i];
+                       unsigned int chan = devpriv->ao_chanlist[i];
                        short val;
 
                        ret = comedi_buf_get(s->async, &val);
        for (i = 0; i < cmd->chanlist_len; ++i) {
                unsigned int chan = CR_CHAN(cmd->chanlist[i]);
 
-               devpriv->dac_commands[i] = chan << 6;
+               devpriv->ao_chanlist[i] = chan << 6;
        }
 
        /* we count in steps of 1ms (125us) */
        struct urb *urb;
        int i;
 
-       /* create space for the commands of the DA converter */
-       devpriv->dac_commands = kzalloc(NUMOUTCHANNELS, GFP_KERNEL);
-       if (!devpriv->dac_commands)
-               return -ENOMEM;
-
        /* create space for the commands going to the usb device */
        devpriv->dux_commands = kzalloc(SIZEOFDUXBUFFER, GFP_KERNEL);
        if (!devpriv->dux_commands)
        kfree(devpriv->insn_buf);
        kfree(devpriv->in_buf);
        kfree(devpriv->dux_commands);
-       kfree(devpriv->dac_commands);
 }
 
 static int usbdux_auto_attach(struct comedi_device *dev,