static int adv7182_init(struct adv7180_state *state)
{
- if (state->chip_info->flags & ADV7180_FLAG_MIPI_CSI2)
+ if (state->csi_client)
adv7180_write(state, ADV7180_REG_CSI_SLAVE_ADDR,
- ADV7180_DEFAULT_CSI_I2C_ADDR << 1);
+ state->csi_client->addr << 1);
- if (state->chip_info->flags & ADV7180_FLAG_I2P)
+ if (state->vpp_client)
adv7180_write(state, ADV7180_REG_VPP_SLAVE_ADDR,
- ADV7180_DEFAULT_VPP_I2C_ADDR << 1);
+ state->vpp_client->addr << 1);
if (state->chip_info->flags & ADV7180_FLAG_V2) {
/* ADI recommended writes for improved video quality */
state->force_bt656_4 = true;
if (state->chip_info->flags & ADV7180_FLAG_MIPI_CSI2) {
- state->csi_client = i2c_new_dummy_device(client->adapter,
- ADV7180_DEFAULT_CSI_I2C_ADDR);
+ state->csi_client =
+ i2c_new_ancillary_device(client, "csi",
+ ADV7180_DEFAULT_CSI_I2C_ADDR);
if (IS_ERR(state->csi_client))
return PTR_ERR(state->csi_client);
}
if (state->chip_info->flags & ADV7180_FLAG_I2P) {
- state->vpp_client = i2c_new_dummy_device(client->adapter,
- ADV7180_DEFAULT_VPP_I2C_ADDR);
+ state->vpp_client =
+ i2c_new_ancillary_device(client, "vpp",
+ ADV7180_DEFAULT_VPP_I2C_ADDR);
if (IS_ERR(state->vpp_client)) {
ret = PTR_ERR(state->vpp_client);
goto err_unregister_csi_client;