mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-09-22 09:34:56 +02:00
ASoC: codecs: aw88261: fix incorrect masks for boost regs
[ Upstream commit79c053a1ff] The boost-related register fields used in aw88261_reg_force_set use the exact same definitions as the rest of the fields, where the mask must be inverted when passing it to regmap_update_bits, but they weren't inverted here. Fixes:028a2ae256("ASoC: codecs: Add aw88261 amplifier driver") Signed-off-by: Val Packett <val@packett.cool> Tested-by: Luca Weiss <luca.weiss@fairphone.com> Link: https://patch.msgid.link/20260529200550.529719-7-val@packett.cool Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a28ad91dc5
commit
dbc63fe645
@@ -284,22 +284,22 @@ static void aw88261_reg_force_set(struct aw88261 *aw88261)
|
||||
if (aw88261->frcset_en == AW88261_FRCSET_ENABLE) {
|
||||
/* set FORCE_PWM */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL3_REG,
|
||||
AW88261_FORCE_PWM_MASK, AW88261_FORCE_PWM_FORCEMINUS_PWM_VALUE);
|
||||
~AW88261_FORCE_PWM_MASK, AW88261_FORCE_PWM_FORCEMINUS_PWM_VALUE);
|
||||
/* set BOOST_OS_WIDTH */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL5_REG,
|
||||
AW88261_BST_OS_WIDTH_MASK, AW88261_BST_OS_WIDTH_50NS_VALUE);
|
||||
~AW88261_BST_OS_WIDTH_MASK, AW88261_BST_OS_WIDTH_50NS_VALUE);
|
||||
/* set BURST_LOOPR */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL6_REG,
|
||||
AW88261_BST_LOOPR_MASK, AW88261_BST_LOOPR_340K_VALUE);
|
||||
~AW88261_BST_LOOPR_MASK, AW88261_BST_LOOPR_340K_VALUE);
|
||||
/* set RSQN_DLY */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL7_REG,
|
||||
AW88261_RSQN_DLY_MASK, AW88261_RSQN_DLY_35NS_VALUE);
|
||||
~AW88261_RSQN_DLY_MASK, AW88261_RSQN_DLY_35NS_VALUE);
|
||||
/* set BURST_SSMODE */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL8_REG,
|
||||
AW88261_BURST_SSMODE_MASK, AW88261_BURST_SSMODE_FAST_VALUE);
|
||||
~AW88261_BURST_SSMODE_MASK, AW88261_BURST_SSMODE_FAST_VALUE);
|
||||
/* set BST_BURST */
|
||||
regmap_update_bits(aw88261->regmap, AW88261_BSTCTRL9_REG,
|
||||
AW88261_BST_BURST_MASK, AW88261_BST_BURST_30MA_VALUE);
|
||||
~AW88261_BST_BURST_MASK, AW88261_BST_BURST_30MA_VALUE);
|
||||
} else {
|
||||
dev_dbg(aw88261->aw_pa->dev, "needn't set reg value");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user