Loading include/sound/q6asm-v2.h +1 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ #define FORMAT_APE 0x0019 #define FORMAT_G711_ALAW_FS 0x001a #define FORMAT_G711_MLAW_FS 0x001b #define FORMAT_DTS 0x001c #define ENCDEC_SBCBITRATE 0x0001 #define ENCDEC_IMMEDIATE_DECODE 0x0002 Loading sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c +17 −2 Original line number Diff line number Diff line Loading @@ -175,7 +175,8 @@ struct msm_compr_audio { spinlock_t lock; }; const u32 compr_codecs[] = {SND_AUDIOCODEC_AC3, SND_AUDIOCODEC_EAC3}; const u32 compr_codecs[] = { SND_AUDIOCODEC_AC3, SND_AUDIOCODEC_EAC3, SND_AUDIOCODEC_DTS}; struct query_audio_effect { uint32_t mod_id; Loading Loading @@ -636,7 +637,7 @@ static void populate_codec_list(struct msm_compr_audio *prtd) COMPR_PLAYBACK_MIN_NUM_FRAGMENTS; prtd->compr_cap.max_fragments = COMPR_PLAYBACK_MAX_NUM_FRAGMENTS; prtd->compr_cap.num_codecs = 12; prtd->compr_cap.num_codecs = 13; prtd->compr_cap.codecs[0] = SND_AUDIOCODEC_MP3; prtd->compr_cap.codecs[1] = SND_AUDIOCODEC_AAC; prtd->compr_cap.codecs[2] = SND_AUDIOCODEC_AC3; Loading @@ -649,6 +650,7 @@ static void populate_codec_list(struct msm_compr_audio *prtd) prtd->compr_cap.codecs[9] = SND_AUDIOCODEC_VORBIS; prtd->compr_cap.codecs[10] = SND_AUDIOCODEC_ALAC; prtd->compr_cap.codecs[11] = SND_AUDIOCODEC_APE; prtd->compr_cap.codecs[12] = SND_AUDIOCODEC_DTS; } static int msm_compr_send_media_format_block(struct snd_compr_stream *cstream, Loading Loading @@ -874,6 +876,10 @@ static int msm_compr_send_media_format_block(struct snd_compr_stream *cstream, pr_err("%s: CMD Format block failed ret %d\n", __func__, ret); break; case FORMAT_DTS: pr_debug("SND_AUDIOCODEC_DTS\n"); /* no media format block needed */ break; default: pr_debug("%s, unsupported format, skip", __func__); Loading Loading @@ -1387,6 +1393,12 @@ static int msm_compr_set_params(struct snd_compr_stream *cstream, break; } case SND_AUDIOCODEC_DTS: { pr_debug("%s: SND_AUDIOCODEC_DTS\n", __func__); prtd->codec = FORMAT_DTS; break; } default: pr_err("codec not supported, id =%d\n", params->codec.id); return -EINVAL; Loading Loading @@ -2174,6 +2186,8 @@ static int msm_compr_get_codec_caps(struct snd_compr_stream *cstream, break; case SND_AUDIOCODEC_APE: break; case SND_AUDIOCODEC_DTS: break; default: pr_err("%s: Unsupported audio codec %d\n", __func__, codec->codec); Loading Loading @@ -2649,6 +2663,7 @@ static int msm_compr_dec_params_put(struct snd_kcontrol *kcontrol, case FORMAT_VORBIS: case FORMAT_ALAC: case FORMAT_APE: case FORMAT_DTS: pr_debug("%s: no runtime parameters for codec: %d\n", __func__, prtd->codec); break; Loading sound/soc/msm/qdsp6v2/q6asm.c +3 −0 Original line number Diff line number Diff line Loading @@ -2374,6 +2374,9 @@ int q6asm_open_write_compressed(struct audio_client *ac, uint32_t format, case FORMAT_EAC3: open.fmt_id = ASM_MEDIA_FMT_EAC3; break; case FORMAT_DTS: open.fmt_id = ASM_MEDIA_FMT_DTS; break; default: pr_err("%s: Invalid format[%d]\n", __func__, format); rc = -EINVAL; Loading Loading
include/sound/q6asm-v2.h +1 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ #define FORMAT_APE 0x0019 #define FORMAT_G711_ALAW_FS 0x001a #define FORMAT_G711_MLAW_FS 0x001b #define FORMAT_DTS 0x001c #define ENCDEC_SBCBITRATE 0x0001 #define ENCDEC_IMMEDIATE_DECODE 0x0002 Loading
sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c +17 −2 Original line number Diff line number Diff line Loading @@ -175,7 +175,8 @@ struct msm_compr_audio { spinlock_t lock; }; const u32 compr_codecs[] = {SND_AUDIOCODEC_AC3, SND_AUDIOCODEC_EAC3}; const u32 compr_codecs[] = { SND_AUDIOCODEC_AC3, SND_AUDIOCODEC_EAC3, SND_AUDIOCODEC_DTS}; struct query_audio_effect { uint32_t mod_id; Loading Loading @@ -636,7 +637,7 @@ static void populate_codec_list(struct msm_compr_audio *prtd) COMPR_PLAYBACK_MIN_NUM_FRAGMENTS; prtd->compr_cap.max_fragments = COMPR_PLAYBACK_MAX_NUM_FRAGMENTS; prtd->compr_cap.num_codecs = 12; prtd->compr_cap.num_codecs = 13; prtd->compr_cap.codecs[0] = SND_AUDIOCODEC_MP3; prtd->compr_cap.codecs[1] = SND_AUDIOCODEC_AAC; prtd->compr_cap.codecs[2] = SND_AUDIOCODEC_AC3; Loading @@ -649,6 +650,7 @@ static void populate_codec_list(struct msm_compr_audio *prtd) prtd->compr_cap.codecs[9] = SND_AUDIOCODEC_VORBIS; prtd->compr_cap.codecs[10] = SND_AUDIOCODEC_ALAC; prtd->compr_cap.codecs[11] = SND_AUDIOCODEC_APE; prtd->compr_cap.codecs[12] = SND_AUDIOCODEC_DTS; } static int msm_compr_send_media_format_block(struct snd_compr_stream *cstream, Loading Loading @@ -874,6 +876,10 @@ static int msm_compr_send_media_format_block(struct snd_compr_stream *cstream, pr_err("%s: CMD Format block failed ret %d\n", __func__, ret); break; case FORMAT_DTS: pr_debug("SND_AUDIOCODEC_DTS\n"); /* no media format block needed */ break; default: pr_debug("%s, unsupported format, skip", __func__); Loading Loading @@ -1387,6 +1393,12 @@ static int msm_compr_set_params(struct snd_compr_stream *cstream, break; } case SND_AUDIOCODEC_DTS: { pr_debug("%s: SND_AUDIOCODEC_DTS\n", __func__); prtd->codec = FORMAT_DTS; break; } default: pr_err("codec not supported, id =%d\n", params->codec.id); return -EINVAL; Loading Loading @@ -2174,6 +2186,8 @@ static int msm_compr_get_codec_caps(struct snd_compr_stream *cstream, break; case SND_AUDIOCODEC_APE: break; case SND_AUDIOCODEC_DTS: break; default: pr_err("%s: Unsupported audio codec %d\n", __func__, codec->codec); Loading Loading @@ -2649,6 +2663,7 @@ static int msm_compr_dec_params_put(struct snd_kcontrol *kcontrol, case FORMAT_VORBIS: case FORMAT_ALAC: case FORMAT_APE: case FORMAT_DTS: pr_debug("%s: no runtime parameters for codec: %d\n", __func__, prtd->codec); break; Loading
sound/soc/msm/qdsp6v2/q6asm.c +3 −0 Original line number Diff line number Diff line Loading @@ -2374,6 +2374,9 @@ int q6asm_open_write_compressed(struct audio_client *ac, uint32_t format, case FORMAT_EAC3: open.fmt_id = ASM_MEDIA_FMT_EAC3; break; case FORMAT_DTS: open.fmt_id = ASM_MEDIA_FMT_DTS; break; default: pr_err("%s: Invalid format[%d]\n", __func__, format); rc = -EINVAL; Loading