diff options
| -rw-r--r-- | drivers/staging/android/lowmemorykiller.c | 2 | ||||
| -rw-r--r-- | sound/soc/msm/msm8998.c | 9 | ||||
| -rw-r--r-- | sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c | 4 |
3 files changed, 14 insertions, 1 deletions
diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c index ee4c11b4e164..62a51d9b7611 100644 --- a/drivers/staging/android/lowmemorykiller.c +++ b/drivers/staging/android/lowmemorykiller.c @@ -665,6 +665,7 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc) } task_lock(selected); + get_task_struct(selected); send_sig(SIGKILL, selected, 0); /* * FIXME: lowmemorykiller shouldn't abuse global OOM killer @@ -713,7 +714,6 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc) lowmem_deathpending_timeout = jiffies + HZ; rem += selected_tasksize; rcu_read_unlock(); - get_task_struct(selected); /* give the system time to free up the memory */ msleep_interruptible(20); trace_almk_shrink(selected_tasksize, ret, diff --git a/sound/soc/msm/msm8998.c b/sound/soc/msm/msm8998.c index c1b238e18f9e..8b3da6d7dd64 100644 --- a/sound/soc/msm/msm8998.c +++ b/sound/soc/msm/msm8998.c @@ -6260,6 +6260,15 @@ static int msm8998_tdm_snd_hw_params(struct snd_pcm_substream *substream, slot_width, slots, tdm_interface); pr_debug("%s: slot_mask :%x\n", __func__, slot_mask); + if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) { + /* over write slot-mask if configured for full slots */ + if ((slots == 32) && (slot_width == 16)) + slot_mask = 0xffffffff; + else if ((slots == 16) && (slot_width == 32)) + slot_mask = 0xffff; + pr_debug("%s:slot_mask :%x slots %d slot_width %d\n", __func__, + slot_mask, slots, slot_width); + } if (!slot_mask) { pr_err("%s: invalid slot_mask 0x%x\n", __func__, slot_mask); diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c index e0a41de1e095..b3b5ebd4d5a2 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c @@ -1571,6 +1571,10 @@ int msm_pcm_routing_reg_phy_stream(int fedai_id, int perf_mode, /* re-enable EQ if active */ msm_qti_pp_send_eq_values(fedai_id); for (i = 0; i < MSM_BACKEND_DAI_MAX; i++) { + + if (test_bit(fedai_id, &msm_bedais[i].fe_sessions[0])) + msm_bedais[i].passthr_mode[fedai_id] = LEGACY_PCM; + if (!is_be_dai_extproc(i) && (afe_get_port_type(msm_bedais[i].port_id) == port_type) && (msm_bedais[i].active) && |
