stream_param.sample_type = ST_INTEGER_24BE;
stream_param.sample_size = 24;
break;
- case SNDRV_PCM_FMTBIT_FLOAT_LE:
+ case SNDRV_PCM_FORMAT_FLOAT_LE:
stream_param.sample_type = ST_FLOATING_POINT_32LE;
stream_param.sample_size = 32;
break;
- case SNDRV_PCM_FMTBIT_FLOAT_BE:
+ case SNDRV_PCM_FORMAT_FLOAT_BE:
stream_param.sample_type = ST_FLOATING_POINT_32BE;
stream_param.sample_size = 32;
break;
return err;
}
- if (idx == 0) {
- /* create a DSP loader only on first cardX*/
- err = snd_mixart_hwdep_new(mgr);
- if (err < 0)
- return err;
- }
-
snd_card_set_dev(card, &mgr->pci->dev);
return 0;
free_irq(mgr->irq, (void *)mgr);
/* reset board if some firmware was loaded */
- if(mgr->hwdep->dsp_loaded) {
+ if(mgr->dsp_loaded) {
snd_mixart_reset_board(mgr);
snd_printdd("reset miXart !\n");
}
snd_iprintf(buffer, "Digigram miXart (alsa card %d)\n\n", chip->chip_idx);
/* stats available when embedded OS is running */
- if (chip->mgr->hwdep->dsp_loaded & ( 1 << MIXART_MOTHERBOARD_ELF_INDEX)) {
+ if (chip->mgr->dsp_loaded & ( 1 << MIXART_MOTHERBOARD_ELF_INDEX)) {
snd_iprintf(buffer, "- hardware -\n");
switch (chip->mgr->board_type ) {
case MIXART_DAUGHTER_TYPE_NONE : snd_iprintf(buffer, "\tmiXart8 (no daughter board)\n\n"); break;
idx = index[dev];
else
idx = index[dev] + i;
- snprintf(tmpid, sizeof(tmpid), "%s-%d", id[dev], i);
+ snprintf(tmpid, sizeof(tmpid), "%s-%d", id[dev] ? id[dev] : "MIXART", i);
card = snd_card_new(idx, tmpid, THIS_MODULE, 0);
if (! card) {
}
}
- /* init firmware status (mgr->hwdep->dsp_loaded reset in hwdep_new) */
+ /* init firmware status (mgr->dsp_loaded reset in hwdep_new) */
mgr->board_type = MIXART_DAUGHTER_TYPE_NONE;
/* create array of streaminfo */
/* init bufferinfo_array */
memset(mgr->bufferinfo.area, 0, size);
+ /* set up firmware */
+ err = snd_mixart_setup_firmware(mgr);
+ if (err < 0) {
+ snd_mixart_free(mgr);
+ return err;
+ }
+
pci_set_drvdata(pci, mgr);
dev++;
return 0;