Loading asoc/codecs/wcd937x/wcd937x.c +11 −1 Original line number Diff line number Diff line Loading @@ -150,8 +150,18 @@ static int wcd937x_handle_post_irq(void *data) static int wcd937x_init_reg(struct snd_soc_component *component) { u32 val =0; val = snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_29) & 0x0F; if (snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_16) == 0x02 || snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_17) > 0x09) { snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x0E, val); } else { snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x0E, 0x0E); } snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x80, 0x80); usleep_range(1000, 1010); Loading Loading
asoc/codecs/wcd937x/wcd937x.c +11 −1 Original line number Diff line number Diff line Loading @@ -150,8 +150,18 @@ static int wcd937x_handle_post_irq(void *data) static int wcd937x_init_reg(struct snd_soc_component *component) { u32 val =0; val = snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_29) & 0x0F; if (snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_16) == 0x02 || snd_soc_component_read32(component, WCD937X_DIGITAL_EFUSE_REG_17) > 0x09) { snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x0E, val); } else { snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x0E, 0x0E); } snd_soc_component_update_bits(component, WCD937X_SLEEP_CTL, 0x80, 0x80); usleep_range(1000, 1010); Loading