These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / media / tuners / qt1010.c
index bc419f8..ae8cbec 100644 (file)
@@ -294,7 +294,7 @@ static int qt1010_init(struct dvb_frontend *fe)
        int err = 0;
        u8 i, tmpval, *valptr = NULL;
 
-       qt1010_i2c_oper_t i2c_data[] = {
+       static const qt1010_i2c_oper_t i2c_data[] = {
                { QT1010_WR, 0x01, 0x80 },
                { QT1010_WR, 0x0d, 0x84 },
                { QT1010_WR, 0x0e, 0xb7 },
@@ -354,13 +354,17 @@ static int qt1010_init(struct dvb_frontend *fe)
                                valptr = &priv->reg1f_init_val;
                        else
                                valptr = &tmpval;
+
+                       BUG_ON(i >= ARRAY_SIZE(i2c_data) - 1);
+
                        err = qt1010_init_meas1(priv, i2c_data[i+1].reg,
                                                i2c_data[i].reg,
                                                i2c_data[i].val, valptr);
                        i++;
                        break;
                }
-               if (err) return err;
+               if (err)
+                       return err;
        }
 
        for (i = 0x31; i < 0x3a; i++) /* 0x31 - 0x39 */