AM69A: issue bring up Cam TEVS-AR0522-M-S140-IR-RPI22 in AM69A

Part Number: AM69A
Other Parts Discussed in Thread: AM69

I am bringing up the TEVS-AR0522-M-S140-IR-RPI22 camera on the AM69A kit, but I’m facing an issue where the camera is not running. I already modified the DTS from AM62 to be compatible with AM69, and the camera is detected, but when I proceed with the remaining steps, the camera output does not appear on the display. There may be an issue somewhere, possibly with the driver or something else. Could you help identify what might be causing this?

pls help me check it

  • Hi ,

    Can you send your device tree overlay, dmesg log, and the commands that you are using to test the camera (with the error messages if there are any).

    Additionally, can you try using yavta to test whether the camera can capture a raw image?

    Best,
    Jared

  • // SPDX-License-Identifier: GPL-2.0
    /*
     * Technexion TEVS-*-RPI - camera module
     *
     * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
     *
     */
    
    /dts-v1/;
    /plugin/;
    
    #include <dt-bindings/gpio/gpio.h>
    
    &main_i2c1 {
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&main_i2c1_pins_default>;
        clock-frequency = <400000>;
    
        #address-cells = <1>;
        #size-cells = <0>;
    
        exp3: gpio@21 {
            compatible = "ti,tca6408";
            reg = <0x21>;
            gpio-controller;
            #gpio-cells = <2>;
            gpio-line-names = "CSI_VIO_SEL", "CSI_MUX_SEL_2", "CSI2_RSTz",
                    "IO_EXP_CAM0_GPIO1", "IO_EXP_CAM1_GPIO1";
        };
    
        pca9543: i2c-mux@70 {
            compatible = "nxp,pca9543";
            #address-cells = <1>;
            #size-cells = <0>;
            reg = <0x70>;
            status = "okay";
        };
    };
    
    &pca9543 {
        #address-cells = <1>;
        #size-cells = <0>;
    
        i2c-alias-pool = /bits/ 16 <0x3c 0x3d>;
    
        /* CAM0 I2C */
        i2c@0 {
            #address-cells = <1>;
            #size-cells = <0>;
            reg = <0>;
    
            tevs@48 {
                compatible = "tn,tevs";
                reg = <0x48>;
    
                standby-gpios = <&exp3 3 GPIO_ACTIVE_HIGH>;
                reset-gpios = <&wkup_gpio0 88 GPIO_ACTIVE_HIGH>;
    
                data-lanes = <4>;
                data-frequency = <800>;
                continuous-clock = <0>;
                status = "okay";
    
                port {
                    csi2_cam0: endpoint {
                        remote-endpoint = <&csi2rx0_in_sensor>;
                        link-frequencies = /bits/ 64 <800000000>;
                        clock-lanes = <0>;
                        data-lanes = <1 2 3 4>;
                    };
                };
            };
        };
    
        i2c@1 {
            #address-cells = <1>;
            #size-cells = <0>;
            reg = <0>;
    
            tevs@48 {
                compatible = "tn,tevs";
                reg = <0x48>;
    
                standby-gpios = <&exp3 4 GPIO_ACTIVE_HIGH>;
                reset-gpios = <&wkup_gpio0 70 GPIO_ACTIVE_HIGH>;
    
                data-lanes = <4>;
                data-frequency = <800>;
                continuous-clock = <0>;
                status = "okay";
    
                port {
                    csi2_cam1: endpoint {
                        remote-endpoint = <&csi2rx2_in_sensor>;
                        link-frequencies = /bits/ 64 <800000000>;
                        clock-lanes = <0>;
                        data-lanes = <1 2 3 4>;
                    };
                };
            };
        };
    
    };
    
    
    &csi0_port0 {
        status = "okay";
    
        csi2rx0_in_sensor: endpoint {
            remote-endpoint = <&csi2_cam0>;
            bus-type = <4>; /* CSI2 DPHY. */
            clock-lanes = <0>;
            data-lanes = <1 2 3 4>;
        };
    };
    &csi2_port0 {
        status = "okay";
    
        csi2rx2_in_sensor: endpoint {
            remote-endpoint = <&csi2_cam1>;
            bus-type = <4>; /* CSI2 DPHY. */
            clock-lanes = <0>;
            data-lanes = <1 2 3 4>;
        };
    };
    &ti_csi2rx0 {
        status = "okay";
    };
    &ti_csi2rx2 {
        status = "okay";
    };
    &dphy_rx0 {
        status = "okay";
    };
    &dphy_rx2 {
        status = "okay";
    };
    

    This is the DTS I modified for the AM69, but I don’t see any error logs in dmesg.

  • Hi ,

    Are your gpio pins correct?

    Can you send your dmesg regardless?

    Also, what is the command you are using to test the camera?

    Can you try using yavta to test the camera?

    Best,
    Jared

  • The GPIO pins are correct, and I already tested this camera on the V2H kit, where it works normally.
    t have using guide https://developer.technexion.com/docs/embedded-vision/tevs/usage-guides/ti/ti-sk-kit-tevs-camera-usage-guide test Camera with chip TI , 

    And I also used the same documentation to test it on the V2H kit.
    developer.technexion.com/.../technexion-tevs-camera-for-renesas-rzv2h-evk

  • Hi ,

    Can you send your dmesg regardless?

    Can you try using yavta to test the camera?

    Can you sent the output of the command used to test the camera?

    Best,
    Jared