diff --git a/asoc/codecs/wsa884x/wsa884x.c b/asoc/codecs/wsa884x/wsa884x.c index 2ad8d1f094..9e50474f81 100644 --- a/asoc/codecs/wsa884x/wsa884x.c +++ b/asoc/codecs/wsa884x/wsa884x.c @@ -1499,9 +1499,6 @@ static void wsa884x_codec_init(struct snd_soc_component *component) snd_soc_component_update_bits(component, reg_init[i].reg, reg_init[i].mask, reg_init[i].val); - if (wsa884x->variant == WSA8845H) - snd_soc_component_update_bits(wsa884x->component, - REG_FIELD_VALUE(DRE_CTL_1, CSR_GAIN_EN, 0x01)); wsa_noise_gate_write(component, wsa884x->noise_gate_mode); } @@ -2232,6 +2229,11 @@ static int wsa884x_swr_probe(struct swr_device *pdev) ret = -EINVAL; goto err_mem; } + /* Assume that compander is enabled by default unless it is haptics sku */ + if (wsa884x->variant == WSA8845H) + wsa884x->comp_enable = false; + else + wsa884x->comp_enable = true; wsa884x_set_gain_parameters(component); wsa884x_set_pbr_parameters(component); /* Must write WO registers in a single write */