Laurent, Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> writes: >> +++ b/drivers/media/i2c/adv7604.c >> @@ -3205,7 +3205,7 @@ static int adv76xx_parse_dt(struct adv76xx_state *state) >> np = state->i2c_clients[ADV76XX_PAGE_IO]->dev.of_node; >> >> /* Parse the endpoint. */ >> - endpoint = of_graph_get_next_endpoint(np, NULL); >> + endpoint = of_graph_get_endpoint_by_regs(np, 0, -1); > > I think this should be port 1 for the adv7611 and port2 for the adv7612. > The adv7610 may need to use port 1 too, but the bindings likely need to > be updated. To be honest I have no idea about ADV7611 and 7612. The 7610 I have on Tinyrex "mobo" seems to be single port. ADV7611 seems to be mostly a 7610 in a different package (LQFP 64 instead of some BGA 76). The driver simply treats ADV7610 as a 7611. ADV7612 is apparently dual port (only one port can be used at a time) though: [ADV7612] = { .type = ADV7612, .has_afe = false, .max_port = ADV76XX_PAD_HDMI_PORT_A, /* B not supported */ .num_dv_ports = 1, /* normally 2 */ All related in-tree DTS entries (as of v6.8.0-rc1) seem to be ADV7612. To me it seems all known devices use the first port only. -- Krzysztof "Chris" Hałasa Sieć Badawcza Łukasiewicz Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa