[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1209180752080.2056@localhost6.localdomain6>
Date: Tue, 18 Sep 2012 07:53:21 +0200 (CEST)
From: Julia Lawall <julia.lawall@...6.fr>
To: Ryan Mallon <rmallon@...il.com>
cc: Shubhrajyoti <shubhrajyoti@...com>, rtc-linux@...glegroups.com,
linux-kernel@...r.kernel.org, julia.lawall@...6.fr
Subject: Re: [PATCH 3/7] rtc: Convert struct i2c_msg initialization to C99
format
On Tue, 18 Sep 2012, Ryan Mallon wrote:
> On 18/09/12 15:40, Shubhrajyoti wrote:
>> On Tuesday 18 September 2012 07:21 AM, Ryan Mallon wrote:
>>> Actually, I wonder if it is useful to have something like:.
>> Read and write differ only in the flag also it will be a deviation from
>> what $SUBJECT
>> would warrant. So could be a separate patch.
>
> Sure, but I think it would help make the code even more readable than
> just converting to C99 initialisers (especially since putting the C99
> initialiser all on one line is hard to read),
The one line thing is the fault of Coccinelle :)
julia
> and there is little sense
> in doing one clean up and then replacing it later with a different clean up.
>
> If you are worried about the duplication of code for a single flag
> difference you could always do:
>
> #define I2C_OP(_addr, _buf, _len, _flags) \
> ...
>
> #define I2C_WRITE(addr, buf, len) I2C_OP(addr, buf, len, 0)
> #define I2C_READ(addr, buf, len) I2C_OP(addr, buf, len, I2C_M_RD)
>
> ~Ryan
>
>>>
>>> #define I2C_WRITE(_addr, _buf, _len) { \
>>> .addr = _addr, \
>>> .buf = _buf, \
>>> .len = _len, \
>>> }
>>>
>>> #define I2C_READ(_addr, _buf, _len) { \
>>> .addr = _addr, \
>>> .buf = _buf, \
>>> .len = _len, \
>>> .flags = I2C_M_RD, \
>>> }
>>>
>>> and then write this as:
>>>
>>> struct i2c_msg msgs[2] = {
>>> I2C_WRITE(client->addr, reg_addr, sizeof(reg_addr)),
>>> I2C_READ(client->addr, buf, len),
>>> };
>>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists