Hi km,
Glad to hear that you are making progress! Good job!
Ahh I see your point, well, actually the function that will try to configure the PCF8575 is vps_ti816x_select_video_decoder which is really implemented in the board file (board-ti8168evm.c), this function is passed to the V4L2 capture driver from the file ti81xx_vpss.c
if (cpu_is_ti814x()) {
hdvpss_capture_sdev_info[0].ti81xxvin_select_decoder =
vps_ti814x_select_video_decoder;
hdvpss_capture_sdev_info[0].ti81xxvin_set_mode =
vps_ti814x_set_tvp7002_filter;
hdvpss_capture_sdev_info[0].decoder_id = 0;
hdvpss_capture_sdev_info[1].ti81xxvin_select_decoder =
NULL;
hdvpss_capture_sdev_info[1].ti81xxvin_set_mode =
NULL;
hdvpss_capture_sdev_info[1].decoder_id = 0;
} else {
hdvpss_capture_sdev_info[0].ti81xxvin_select_decoder =
vps_ti816x_select_video_decoder;
hdvpss_capture_sdev_info[0].ti81xxvin_set_mode =
vps_ti816x_set_tvp7002_filter;
hdvpss_capture_sdev_info[0].decoder_id = 0;
hdvpss_capture_sdev_info[1].ti81xxvin_select_decoder =
NULL;
hdvpss_capture_sdev_info[1].ti81xxvin_set_mode =
NULL;
hdvpss_capture_sdev_info[1].decoder_id = 0;
}
if you are not using the PCF8175 nor the THS7368 you can set them to NULL, so the V4L2 capture driver wont try to call them:
hdvpss_capture_sdev_info[0].ti81xxvin_select_decoder =
NULL;
hdvpss_capture_sdev_info[0].ti81xxvin_set_mode =
NULL;
-David