I am going through ADV7604 driver, I could see following code snippet where i2c addresses are hard coded in adv7604_parse_dt() function. I want to use the driver for ADV7611, do I need to change these addresses. I was checking ADV7611 software manual, but I couldn't find these default addresses. Can you please tell me where I can find these default i2c addresses.

state->pdata.i2c_addresses[ADV7604_PAGE_AVLINK] = 0x42;

state->pdata.i2c_addresses[ADV7604_PAGE_CEC] = 0x40;

state->pdata.i2c_addresses[ADV7604_PAGE_INFOFRAME] = 0x3e;

state->pdata.i2c_addresses[ADV7604_PAGE_ESDP] = 0x38;

state->pdata.i2c_addresses[ADV7604_PAGE_DPP] = 0x3c;

state->pdata.i2c_addresses[ADV7604_PAGE_AFE] = 0x26;

state->pdata.i2c_addresses[ADV7604_PAGE_REP] = 0x32;

state->pdata.i2c_addresses[ADV7604_PAGE_EDID] = 0x36;

state->pdata.i2c_addresses[ADV7604_PAGE_HDMI] = 0x34;

state->pdata.i2c_addresses[ADV7604_PAGE_TEST] = 0x30;

state->pdata.i2c_addresses[ADV7604_PAGE_CP] = 0x22;

state->pdata.i2c_addresses[ADV7604_PAGE_VDP] = 0x24;

In ADV7611 software manual, few blocks have registers staring with 0x00(say IO and HDMI blocks having register with address 0x00).

If I assume there is one 0x00 register, few bits represents one block and remaining bits represents other block then bit 0 of HDMI block(HDMI_REGISTER_00H[0]) will overlap with bit 0 of IO block(VIDEO STANDARD[0]).

We are using ADV7611 in our customized board, we have modified adv7604 driver for adv7611 in 3.12 kernel. This driver is working fine with windows and android devices as HDMI source, but when we use apple devices we are facing color issue updated @ https://ez.analog.com/thread/51329.

To analyze this color issue I was updating few registers using i2cset, but register values are not changing. So I started checking the low level details of the driver in the latest Kernel.

Executed following commands to modify 0x3e register value of CP block, but it is not changing.