5 Mar
2018
5 Mar
'18
4:49 p.m.
On Mon, Mar 05, 2018 at 01:48:16PM +0100, Mylène Josserand wrote:
--- /dev/null +++ b/sound/soc/codecs/pcm1789-i2c.c @@ -0,0 +1,76 @@ +// SPDX-License-Identifier: GPL-2.0 +/*
- PCM1789 ASoC I2C driver
- Copyright (c) Bootlin 2018
- Mylène Josserand mylene.josserand@bootlin.com
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
Please don't mix C and C++ style comments in a single comment like this - it looks unintentional. Just use the same style for the whole thing. You also don't need to include all the boilerplate with the SPDX header.
+static bool pcm1789_accessible_reg(struct device *dev, unsigned int reg) +{
- return reg >= PCM1789_MUTE_CONTROL && reg <= PCM1789_DAC_VOL_RIGHT;
+}
+static bool pcm1789_writeable_reg(struct device *dev, unsigned int reg) +{
- return pcm1789_accessible_reg(dev, reg);
+}
+static void pcm1789_work_queue(struct work_struct *work) +{
- struct pcm1789_private *priv = container_of(work,
struct pcm1789_private,
work);
- /* Perform a software reset to remove codec from desynchronized state */
- if (regmap_update_bits(priv->regmap, PCM1789_MUTE_CONTROL,
0x3 << PCM1789_MUTE_SRET, 0) < 0)
dev_err(priv->dev, "Error while setting SRET");
+}
A reset sounds like we'd also need to resync the register map, presumably this is something else? The comment could be clearer.