Re: [PATCH v2 4/4] ASoC: rsnd: use regmap instead of original registermapping method

From: Kuninori Morimoto
Date: Tue Sep 17 2013 - 09:24:12 EST



Dear Mark

> > +void rsnd_write(struct rsnd_priv *priv,
> > + struct rsnd_mod *mod,
> > + enum rsnd_reg reg, u32 data)
> > +{
> > + struct rsnd_gen *gen = rsnd_priv_to_gen(priv);
> > +
> > + if (regmap_fields_enable(gen->regs[reg]))
> > + regmap_fields_write(gen->regs[reg], rsnd_mod_id(mod), data);
> > + else
> > + regmap_field_write(gen->regs[reg], data);
> > +}
>
> Ah, sorry - I see you are actually using fields_enable(). I must've
> searched for the wrong thing. However looking at this I'm not sure that
> this is a good use anyway, it seems like the caller should know if the
> register it is writing to is in one of the repeated blocks. Can you
> provide a bit more detail as to what's going on here?

Hmm...
rsnd_write/read() care about it (block/non-block),
and caller don't care it, is nice point of this function...

For example, SSI device have many ports (0-8),
but ADG is only 1 device.
On this driver, all devices are using rsnd_write/read() to
access register.

I can re-check it, but it will be next week
Thank you

Best regards
--
Kuninori Morimoto

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/