[alsa-devel] [PATCH v7 08/13] regmap: add SLIMbus support
Charles Keepax
ckeepax at opensource.cirrus.com
Thu Nov 23 08:49:25 CET 2017
On Wed, Nov 15, 2017 at 02:10:38PM +0000, srinivas.kandagatla at linaro.org wrote:
> From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
>
> This patch adds support to read/write slimbus value elements.
> Currently it only supports byte read/write. Adding this support in
> regmap would give codec drivers more flexibility when there are more
> than 2 control interfaces like slimbus, i2c.
>
> Without this patch each codec driver has to directly call slimbus value
> element apis, and this could would get messy once we want to add i2c
> interface to it.
>
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
> ---
> +
> +static int regmap_slimbus_byte_reg_read(void *context, unsigned int reg,
> + unsigned int *val)
> +{
> + struct slim_device *sdev = context;
> + int v;
> +
> + if (!sdev)
> + return 0;
Is there a specific reason we are checking the context here? The
other regmap buses don't both and whilst I don't mind checking
shouldn't we return an error if we don't have a context rather
than pretending to succeed?
> +
> + v = slim_readb(sdev, reg);
> +
> + if (v < 0)
> + return v;
> +
> + *val = v;
> +
> + return 0;
> +}
> +
> +static int regmap_slimbus_byte_reg_write(void *context, unsigned int reg,
> + unsigned int val)
> +{
> + struct slim_device *sdev = context;
> +
> + if (!sdev)
> + return 0;
ditto.
Thanks,
Charles
More information about the Alsa-devel
mailing list