Thread (21 messages) 21 messages, 4 authors, 2018-06-05

Re: [PATCH v9 2/7] i2c: Add FSI-attached I2C master algorithm

From: Andy Shevchenko <hidden>
Date: 2018-06-05 09:17:51
Also in: linux-i2c, lkml

On Tue, Jun 5, 2018 at 2:38 AM, Benjamin Herrenschmidt
[off-list ref] wrote:
On Mon, 2018-06-04 at 22:21 +0300, Andy Shevchenko wrote:
quoted
quoted
+#define I2C_INT_ENABLE         0x0000ff80
+#define I2C_INT_ERR            0x0000fcc0
Now it looks like a flags combinations.
For me as for reader would be better to see quickly a decoded line.

My proposal is to introduce something like following

_INT_ALL  GENMASK()
_INT_ENABLE (_INT_ALL & ~(_FOO | _BAR))
_INT_ERR ... similar way as above ...

What do you think?
I don't think this absolutely needs to change but yes, open coding is
error prone. However I would think it more readable to use positive
logic and just list all the bits that are *set* even if it's a bit more
text:

#define I2C_INT_ERR     (I2C_INT_INV_CMD        |\
 I2C_INT_PARITY         |\
                         I2C_INT_BE_OVERRUN     |\
                        .../...)

#define I2C_INT_ENABLE  (I2C_INT_ERR            |\
                         I2C_INT_DAT_REQ        |\
                         I2C_INT_CMD_COMP)
Yep, it's fine.
I prefered though slightly different style (not putting first value on
the same line with #define), but it doesn't matter.
Note: Eddie, I notice I2C_INT_BUSY is in "ERR" but not in "ENABLE", any
reason for that ?
Exactly the reason why I payid attention on these values.

-- 
With Best Regards,
Andy Shevchenko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help