Re: [PATCH v6 1/2] media: imx274: use regmap_bulk_write to write multybyte registers

From: Luca Ceresoli
Date: Tue Aug 28 2018 - 05:15:16 EST


Hi Philippe,

thanks for you review.

On 28/08/2018 11:03, Philippe De Muyter wrote:
> On Wed, Jul 25, 2018 at 06:24:54PM +0200, Luca Ceresoli wrote:
>> Currently 2-bytes and 3-bytes registers are set by very similar
>> functions doing the needed shift & mask manipulation, followed by very
>> similar for loops setting one byte at a time over I2C.
>>
>> Replace all of this code by a unique helper function that calls
>> regmap_bulk_write(), which has two advantages:
>> - sets all the bytes in a unique I2C transaction
>> - removes lots of now unused code.
>>
>> Signed-off-by: Luca Ceresoli <luca@xxxxxxxxxxxxxxxx>
>> Cc: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
>>
> ...
>> +/**
>> + * Write a multibyte register.
>> + *
>> + * Uses a bulk write where possible.
>> + *
>> + * @priv: Pointer to device structure
>> + * @addr: Address of the LSB register. Other registers must be
>> + * consecutive, least-to-most significant.
>> + * @val: Value to be written to the register (cpu endianness)
>> + * @nbytes: Number of bits to write (range: [1..3])
>> + */
>> +static int imx274_write_mbreg(struct stimx274 *priv, u16 addr, u32 val,
>> + size_t nbytes)
>
> Should nbytes be called nbits, or is nbytes a 'Number of bytes' ?

This patch has already been applied, but I sent a fix:
https://patchwork.linuxtv.org/patch/51719/

--
Luca