goto err_kfree;
        }
 
-       /* Check demod answers with correct chip id */
-       ret = regmap_read(dev->regmap[0], 0xff, &uitmp);
-       if (ret)
-               goto err_regmap_0_regmap_exit;
-
-       dev_dbg(&client->dev, "chip id=%02x\n", uitmp);
-
-       if (uitmp != 0x03) {
-               ret = -ENODEV;
-               goto err_regmap_0_regmap_exit;
-       }
-
        /*
         * Chip has three I2C addresses for different register banks. Used
         * addresses are 0x18, 0x1a and 0x1c. We register two dummy clients,
        }
        i2c_set_clientdata(dev->client[2], dev);
 
+       /* Check demod answers with correct chip id */
+       ret = regmap_read(dev->regmap[2], 0xff, &uitmp);
+       if (ret)
+               goto err_regmap_2_regmap_exit;
+
+       dev_dbg(&client->dev, "chip id=%02x\n", uitmp);
+
+       if (uitmp != 0x03) {
+               ret = -ENODEV;
+               goto err_regmap_2_regmap_exit;
+       }
+
        /* Sleep because chip is active by default */
        ret = regmap_write(dev->regmap[2], 0x05, 0x3e);
        if (ret)