Unverified Commit f8d5f28e authored by Martin Povišer's avatar Martin Povišer Committed by Mark Brown
Browse files

ASoC: tas2764: Add control concerning overcurrent events



Add control to expose the option of autoretry behavior on overcurrent
events in the codec.

Reviewed-by: default avatarNeal Gompa <neal@gompa.dev>
Signed-off-by: default avatarMartin Povišer <povik+lin@cutebit.org>
Signed-off-by: default avatarJames Calligeros <jcalligeros99@gmail.com>
Link: https://patch.msgid.link/20250227-apple-codec-changes-v3-4-cbb130030acf@gmail.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent ad183929
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -634,12 +634,21 @@ static SOC_ENUM_SINGLE_DECL(
	tas2764_hpf_enum, TAS2764_DC_BLK0,
	TAS2764_DC_BLK0_HPF_FREQ_PB_SHIFT, tas2764_hpf_texts);

static const char * const tas2764_oce_texts[] = {
	"Disable", "Retry",
};

static SOC_ENUM_SINGLE_DECL(
	tas2764_oce_enum, TAS2764_MISC_CFG1,
	TAS2764_MISC_CFG1_OCE_RETRY_SHIFT, tas2764_oce_texts);

static const struct snd_kcontrol_new tas2764_snd_controls[] = {
	SOC_SINGLE_TLV("Speaker Volume", TAS2764_DVC, 0,
		       TAS2764_DVC_MAX, 1, tas2764_playback_volume),
	SOC_SINGLE_TLV("Amp Gain Volume", TAS2764_CHNL_0, 1, 0x14, 0,
		       tas2764_digital_tlv),
	SOC_ENUM("HPF Corner Frequency", tas2764_hpf_enum),
	SOC_ENUM("OCE Handling", tas2764_oce_enum),
};

static const struct snd_soc_component_driver soc_component_driver_tas2764 = {
+4 −0
Original line number Diff line number Diff line
@@ -44,6 +44,10 @@

#define TAS2764_CHNL_0  TAS2764_REG(0X0, 0x03)

/* Miscellaneous */
#define TAS2764_MISC_CFG1		TAS2764_REG(0x0, 0x06)
#define TAS2764_MISC_CFG1_OCE_RETRY_SHIFT  5

/* TDM Configuration Reg0 */
#define TAS2764_TDM_CFG0		TAS2764_REG(0X0, 0x08)
#define TAS2764_TDM_CFG0_SMP_MASK	BIT(5)