resample_set_enum),
SOC_SINGLE_EXT_TLV("Hw resample pause enable",
EE_AUDIO_RESAMPLEA_CTRL2, 24, 0x1, 0,
- mixer_audiobus_read, mixer_audiobus_write,
+ mixer_audiobus_read, NULL,
NULL),
SOC_SINGLE_EXT_TLV("Hw resample pause thd",
- EE_AUDIO_RESAMPLEA_CTRL2, 0, 0xffffff, 0,
- mixer_audiobus_read, mixer_audiobus_write,
+ EE_AUDIO_RESAMPLEA_CTRL2, 11, 0x1fff, 0,
+ mixer_audiobus_read, NULL,
NULL),
SOC_ENUM_EXT("Hw resample module",
auge_resample_module_enum,
resample_set_enum),
SOC_SINGLE_EXT_TLV("Hw resample b pause enable",
EE_AUDIO_RESAMPLEB_CTRL2, 24, 0x1, 0,
- mixer_audiobus_read, mixer_audiobus_write,
+ mixer_audiobus_read, NULL,
NULL),
SOC_SINGLE_EXT_TLV("Hw resample b pause thd",
- EE_AUDIO_RESAMPLEB_CTRL2, 0, 0xffffff, 0,
- mixer_audiobus_read, mixer_audiobus_write,
+ EE_AUDIO_RESAMPLEB_CTRL2, 11, 0x1fff, 0,
+ mixer_audiobus_read, NULL,
NULL),
SOC_ENUM_EXT("Hw resample b module",
auge_resample_module_enum,
reg = EE_AUDIO_RESAMPLEA_CTRL2 + offset * id;
audiobus_update_bits(reg,
1 << 25, 1 << 25);
+ resample_set_hw_pause_thd(id, 128);
return 0;
}
audiobus_write(reg, value);
}
+
+int resample_set_hw_pause_thd(enum resample_idx id, unsigned int thd)
+{
+ int offset = EE_AUDIO_RESAMPLEB_CTRL2 - EE_AUDIO_RESAMPLEA_CTRL2;
+ int reg = EE_AUDIO_RESAMPLEA_CTRL2 + offset * id;
+
+ audiobus_write(reg, 1 << 24 | thd << 11);
+
+ return 0;
+}