summaryrefslogtreecommitdiff
path: root/drivers/staging/intel_sst/intelmid_pvt.c
diff options
context:
space:
mode:
authorVinod Koul <vinod.koul@intel.com>2010-11-19 15:06:31 (GMT)
committerGreg Kroah-Hartman <gregkh@suse.de>2010-11-20 01:43:47 (GMT)
commit6f6ffec188b5416642b20ef14034d40cfeb3256e (patch)
treedbea55359345cc4fcf3245177cec1ad5d4736fc3 /drivers/staging/intel_sst/intelmid_pvt.c
parent4856ab33eb5c33bdf17a5a1bd8d720bffe5f6110 (diff)
downloadlinux-6f6ffec188b5416642b20ef14034d40cfeb3256e.tar.xz
sst: Change the SST driver PCM interface
The PCM interface in SST driver is cmds only, this patch changes the interface to open, close and cmd interface. This allows SST driver to keep easy track of handles open Signed-off-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/intel_sst/intelmid_pvt.c')
-rw-r--r--drivers/staging/intel_sst/intelmid_pvt.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/staging/intel_sst/intelmid_pvt.c b/drivers/staging/intel_sst/intelmid_pvt.c
index 4f9bdf3..cb71fe0 100644
--- a/drivers/staging/intel_sst/intelmid_pvt.c
+++ b/drivers/staging/intel_sst/intelmid_pvt.c
@@ -95,10 +95,8 @@ int snd_intelmad_alloc_stream(struct snd_pcm_substream *substream)
pr_debug("Capture stream,Device %d\n", stream->device);
}
str_params.device_type = stream->device;
- ret_val = intelmaddata->sstdrv_ops->control_set(SST_SND_ALLOC,
- &str_params);
- pr_debug("SST_SND_PLAY/CAPTURE ret_val = %x\n",
- ret_val);
+ ret_val = intelmaddata->sstdrv_ops->pcm_control->open(&str_params);
+ pr_debug("sst: SST_SND_PLAY/CAPTURE ret_val = %x\n", ret_val);
if (ret_val < 0)
return ret_val;
@@ -121,8 +119,8 @@ int snd_intelmad_init_stream(struct snd_pcm_substream *substream)
stream->stream_info.mad_substream = substream;
stream->stream_info.buffer_ptr = 0;
stream->stream_info.sfreq = substream->runtime->rate;
- ret_val = intelmaddata->sstdrv_ops->control_set(SST_SND_STREAM_INIT,
- &stream->stream_info);
+ ret_val = intelmaddata->sstdrv_ops->pcm_control->device_control(
+ SST_SND_STREAM_INIT, &stream->stream_info);
if (ret_val)
pr_err("control_set ret error %d\n", ret_val);
return ret_val;