File tree 1 file changed +6
-1
lines changed
1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change 15
15
#include <uapi/linux/input-event-codes.h>
16
16
#include "common.h"
17
17
#include "qdsp6/q6afe.h"
18
+ #include "sdw.h"
18
19
#include "../codecs/rt5663.h"
19
20
20
21
#define DRIVER_NAME "sdm845"
@@ -416,7 +417,7 @@ static int sdm845_snd_startup(struct snd_pcm_substream *substream)
416
417
pr_err ("%s: invalid dai id 0x%x\n" , __func__ , cpu_dai -> id );
417
418
break ;
418
419
}
419
- return 0 ;
420
+ return qcom_snd_sdw_startup ( substream ) ;
420
421
}
421
422
422
423
static void sdm845_snd_shutdown (struct snd_pcm_substream * substream )
@@ -425,6 +426,7 @@ static void sdm845_snd_shutdown(struct snd_pcm_substream *substream)
425
426
struct snd_soc_card * card = rtd -> card ;
426
427
struct sdm845_snd_data * data = snd_soc_card_get_drvdata (card );
427
428
struct snd_soc_dai * cpu_dai = snd_soc_rtd_to_cpu (rtd , 0 );
429
+ struct sdw_stream_runtime * sruntime = data -> sruntime [cpu_dai -> id ];
428
430
429
431
switch (cpu_dai -> id ) {
430
432
case PRIMARY_MI2S_RX :
@@ -463,6 +465,9 @@ static void sdm845_snd_shutdown(struct snd_pcm_substream *substream)
463
465
pr_err ("%s: invalid dai id 0x%x\n" , __func__ , cpu_dai -> id );
464
466
break ;
465
467
}
468
+
469
+ data -> sruntime [cpu_dai -> id ] = NULL ;
470
+ sdw_release_stream (sruntime );
466
471
}
467
472
468
473
static int sdm845_snd_prepare (struct snd_pcm_substream * substream )
You can’t perform that action at this time.
0 commit comments