Messages in this thread | | | Date | Tue, 18 Sep 2012 07:53:21 +0200 (CEST) | From | Julia Lawall <> | 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), >>> }; >> > >
| |