[media] staging: solo6x10: fix | vs &
authorDan Carpenter <dan.carpenter@oracle.com>
Sat, 9 Jun 2012 06:47:32 +0000 (03:47 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 18 Jun 2012 23:08:39 +0000 (20:08 -0300)
The test here is never true because '&' was used instead of '|'.  It was
the same as:

if (status & ((1<<16) & (1<<17)) ...

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/staging/media/solo6x10/i2c.c

index ef95a500b4dad28684adc99383bc795a6e396066..398070a3d29326b738553df6e280f93b1e5c03f9 100644 (file)
@@ -175,7 +175,7 @@ int solo_i2c_isr(struct solo_dev *solo_dev)
 
        solo_reg_write(solo_dev, SOLO_IRQ_STAT, SOLO_IRQ_IIC);
 
-       if (status & (SOLO_IIC_STATE_TRNS & SOLO_IIC_STATE_SIG_ERR) ||
+       if (status & (SOLO_IIC_STATE_TRNS | SOLO_IIC_STATE_SIG_ERR) ||
            solo_dev->i2c_id < 0) {
                solo_i2c_stop(solo_dev);
                return -ENXIO;