Thread (55 messages) 55 messages, 9 authors, 2012-12-18

Re: [PATCH 9/13] drivers/media/tuners/fc0011.c: use macros for i2c_msg initialization

From: Michael Büsch <m@bues.ch>
Date: 2012-10-07 18:27:18
Also in: kernel-janitors, lkml

On Sun, 7 Oct 2012 18:50:31 +0200 (CEST)
Julia Lawall [off-list ref] wrote:
quoted
quoted
@@ -97,10 +96,8 @@ static int fc0011_readreg(struct fc0011_priv *priv, u8 reg, u8 *val)
 {
 	u8 dummy;
 	struct i2c_msg msg[2] = {
-		{ .addr = priv->addr,
-		  .flags = 0, .buf = &reg, .len = 1 },
-		{ .addr = priv->addr,
-		  .flags = I2C_M_RD, .buf = val ? : &dummy, .len = 1 },
+		I2C_MSG_WRITE(priv->addr, &reg, sizeof(reg)),
+		I2C_MSG_READ(priv->addr, val ? : &dummy, sizeof(dummy)),
 	};
This dummy looks strange, can it be that this is used uninitialised ?
I'm not sure to understand the question.  The read, when it happens in 
i2c_transfer will initialize dummy.  On the other hand, I don't know what 
i2c_transfer does when the buffer is NULL and the size is 1.  It does not 
look very elegant at least.
Well its use case is if you only care about the side effects and not the actual data
returned by the read operation.

-- 
Greetings, Michael.

PGP encryption is encouraged / 908D8B0E

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help