Hello,
We have a custom board with AM4378 connected to TVP5146. The schematic is attached.
After making changes to the device tree and enabling support for tvp5146 in the kernel, it is detected as a device on the i2c bus. However, no /dev/video entry appears. More importantly, "VPFE: Invalid Bus Width error -22" is shown during bootup. What could be the problem, and how do I solve it?
The relevant parts of the device tree are:
cam1_pins_default: cam1_pins_default {
pinctrl-single,pins = <
0x1dc ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AE21) cam1_pclk.cam1_pclk */
0x1e8 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AB20) cam1_data0.cam1_data0 */
0x1ec ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AC21) cam1_data1.cam1_data1 */
0x1f0 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AD21) cam1_data2.cam1_data2 */
0x1f4 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AE22) cam1_data3.cam1_data3 */
0x1f8 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AD22) cam1_data4.cam1_data4 */
0x1fc ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AE23) cam1_data5.cam1_data5 */
0x200 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AD23) cam1_data6.cam1_data6 */
0x204 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AE24) cam1_data7.cam1_data7 */
0x1d0 ( PIN_INPUT_PULLUP | MUX_MODE0 ) /* (AD24) cam1_data8.cam1_data8 */
0x208 ( PIN_INPUT_PULLUP | MUX_MODE2 ) /* (AE18) cam0_data0.cam1_data9 */
>;
};
&i2c0 {
tvp514x@5c {
compatible = "ti,tvp5146m2";
reg = <0x5c>;
status = "okay";
port {
tvp514x_0: endpoint {
remote-endpoint = <&vpfe1_ep>;
};
};
};
};
&vpfe1 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&cam1_pins_default>;
port {
vpfe1_ep: endpoint {
slave-mode;
remote-endpoint = <&tvp514x_0>;
ti,am437x-vpfe-interface = <2>; //10 bit BT656
hsync-active = <1>;
vsync-active = <1>;
pclk-sample = <0>;
};
};
};
Regards,
Rajat Rao