ASoC: Fix overflow error in routing driver
The reg in soc_dapm_mux is 32-bit. The BE DAI ID passed as shift(to be operated on the reg) may be more than 31, which may cause overflow. Set reg field to SND_SOC_NOPM to avoid any DAPM operation while passing BE IDs in shift_l field and hence avoid overflow. Change-Id: Ibbbca04c61b7c56eb4c5a7485a4e93dc28a09709 Signed-off-by: Soumya Managoli <smanag@codeaurora.org> [dereference23: Forward port to msm-5.4] Signed-off-by: Alexander Winkowski <dereference23@outlook.com>
This commit is contained in:
parent
abd1a7c44c
commit
e9e1988e85
@ -33192,32 +33192,32 @@ static const int int4_mi2s_rx_vi_fb_tx_stereo_ch_value[] = {
|
||||
};
|
||||
|
||||
static const struct soc_enum cdc_dma_rx_0_vi_fb_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_RX_CDC_DMA_RX_0, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_RX_CDC_DMA_RX_0, 0, 0,
|
||||
ARRAY_SIZE(cdc_dma_rx_0_vi_fb_tx_mux_text),
|
||||
cdc_dma_rx_0_vi_fb_tx_mux_text, cdc_dma_rx_0_vi_fb_tx_value);
|
||||
|
||||
static const struct soc_enum cdc_dma_rx_1_vi_fb_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_RX_CDC_DMA_RX_1, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_RX_CDC_DMA_RX_1, 0, 0,
|
||||
ARRAY_SIZE(cdc_dma_rx_1_vi_fb_tx_mux_text),
|
||||
cdc_dma_rx_1_vi_fb_tx_mux_text, cdc_dma_rx_1_vi_fb_tx_value);
|
||||
|
||||
static const struct soc_enum slim0_rx_vi_fb_lch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_SLIMBUS_0_RX, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_0_RX, 0, 0,
|
||||
ARRAY_SIZE(slim0_rx_vi_fb_tx_lch_mux_text),
|
||||
slim0_rx_vi_fb_tx_lch_mux_text, slim0_rx_vi_fb_tx_lch_value);
|
||||
|
||||
static const struct soc_enum slim0_rx_vi_fb_rch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_SLIMBUS_0_RX, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_0_RX, 0, 0,
|
||||
ARRAY_SIZE(slim0_rx_vi_fb_tx_rch_mux_text),
|
||||
slim0_rx_vi_fb_tx_rch_mux_text, slim0_rx_vi_fb_tx_rch_value);
|
||||
|
||||
static const struct soc_enum wsa_rx_0_vi_fb_lch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_WSA_CDC_DMA_RX_0, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_WSA_CDC_DMA_RX_0, 0, 0,
|
||||
ARRAY_SIZE(wsa_rx_0_vi_fb_tx_lch_mux_text),
|
||||
wsa_rx_0_vi_fb_tx_lch_mux_text, wsa_rx_0_vi_fb_tx_lch_value);
|
||||
|
||||
static const struct soc_enum wsa_rx_0_vi_fb_rch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_WSA_CDC_DMA_RX_0, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_WSA_CDC_DMA_RX_0, 0, 0,
|
||||
ARRAY_SIZE(wsa_rx_0_vi_fb_tx_rch_mux_text),
|
||||
wsa_rx_0_vi_fb_tx_rch_mux_text, wsa_rx_0_vi_fb_tx_rch_value);
|
||||
|
||||
@ -33227,13 +33227,13 @@ static const struct soc_enum mi2s_rx_vi_fb_mux_enum =
|
||||
mi2s_rx_vi_fb_tx_mux_text, mi2s_rx_vi_fb_tx_value);
|
||||
|
||||
static const struct soc_enum int4_mi2s_rx_vi_fb_mono_ch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_INT4_MI2S_RX, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, 0, 0,
|
||||
ARRAY_SIZE(int4_mi2s_rx_vi_fb_tx_mono_mux_text),
|
||||
int4_mi2s_rx_vi_fb_tx_mono_mux_text,
|
||||
int4_mi2s_rx_vi_fb_tx_mono_ch_value);
|
||||
|
||||
static const struct soc_enum int4_mi2s_rx_vi_fb_stereo_ch_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_INT4_MI2S_RX, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, 0, 0,
|
||||
ARRAY_SIZE(int4_mi2s_rx_vi_fb_tx_stereo_mux_text),
|
||||
int4_mi2s_rx_vi_fb_tx_stereo_mux_text,
|
||||
int4_mi2s_rx_vi_fb_tx_stereo_ch_value);
|
||||
|
Loading…
Reference in New Issue
Block a user