Skip to content

Commit dd6afc7

Browse files
chadmedjannau
authored andcommitted
ASoC: cs42l84: allow runtime mask/unmask of interrupts
Make cs42L84_set_interrupt_masks accept a value for the interrupt mask register so that we can enable/disable ring sense interrupts at runtime. Signed-off-by: James Calligeros <jcalligeros99@gmail.com>
1 parent 777d32a commit dd6afc7

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

sound/soc/codecs/cs42l84.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -876,12 +876,13 @@ static irqreturn_t cs42l84_irq_thread(int irq, void *data)
876876
return IRQ_HANDLED;
877877
}
878878

879-
static void cs42l84_set_interrupt_masks(struct cs42l84_private *cs42l84)
879+
static void cs42l84_set_interrupt_masks(struct cs42l84_private *cs42l84,
880+
unsigned int val)
880881
{
881882
regmap_update_bits(cs42l84->regmap, CS42L84_TSRS_PLUG_INT_MASK,
882883
CS42L84_RS_PLUG | CS42L84_RS_UNPLUG |
883884
CS42L84_TS_PLUG | CS42L84_TS_UNPLUG,
884-
CS42L84_RS_PLUG | CS42L84_RS_UNPLUG);
885+
val);
885886
}
886887

887888
static void cs42l84_setup_plug_detect(struct cs42l84_private *cs42l84)
@@ -1020,8 +1021,8 @@ static int cs42l84_i2c_probe(struct i2c_client *i2c_client)
10201021
/* Setup plug detection */
10211022
cs42l84_setup_plug_detect(cs42l84);
10221023

1023-
/* Mask/Unmask Interrupts */
1024-
cs42l84_set_interrupt_masks(cs42l84);
1024+
/* Mask ring sense interrupts */
1025+
cs42l84_set_interrupt_masks(cs42l84, CS42L84_RS_PLUG | CS42L84_RS_UNPLUG);
10251026

10261027
/* Register codec for machine driver */
10271028
ret = devm_snd_soc_register_component(&i2c_client->dev,

0 commit comments

Comments
 (0)