This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5728: Porting ov5640 camera onto to TI Linux SDK 9.03.

Part Number: AM5728


Tool/software:

Hi,

I have the same custom board as mentioned in (https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1008216/am5728-unable-to-get-correct-capture-with-ov5640-green-pink-screen-issue?tisearch=e2e-sitesearch&keymatch=am5728%252520ov5640#) based on TI's AM5728 EVM.

I am running the latest Linux PSDK 9.03 on it. I have done the same dts changes similar to what is described in the post above. (See dts changes below:-)

clk_ov5640_fixed: clk_ov5640_fixed {
                          compatible = "fixed-clock";
                          #clock-cells = <0>;
                          clock-frequency = <24000000>;
                  };
clk_ov5640: clk_ov5640 {
                    compatible = "gpio-gate-clock";
                    #clock-cells = <0>;
                    clocks = <&clk_ov5640_fixed>;
                    enable-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>; //[04] changed in VIC2 from ACTIVE_LOW
                };


&vip2 {
    status = "okay";
};

&vin3a {
    status = "okay";

    port {
        vin3a_ep: endpoint {
            remote-endpoint = <&cam>;
            slave-mode;
            bus-width = <8>;
            data-shift = <0>;
            hsync-active = <1>;
            vsync-active = <0>;
            pclk-sample = <0>;
        };
    };
};

&i2c3 {
        status = "okay";
        clock-frequency = <400000>;

        ov5640@3c {
                compatible = "ovti,ov5640";
                reg = <0x3c>;
                status="okay";
                clocks = <&clk_ov5640>;
                clock-names = "xclk";
                powerdown-gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;

                port {
                        cam: endpoint {
                                bus-width = <8>;
                                data-shift = <0>;
                                hsync-active = <1>;
                                vsync-active = <0>;
                                pclk-sample = <0>;
                                remote-endpoint = <&vin3a_ep>;
                        };
                };
        };
};

I have enabled ov5640 driver in the kernel and I too am taking care of all its dependencies as well. I am using the same driver code which is present in Linux 9.03 PSDK. Path for the driver is -  

/opt/ti-processor-sdk-linux-am57xx-evm-09_03_06_05/board-support/ti-linux-kernel-6.1.119+gitAUTOINC+e4e8b16e66-ti/drivers/media/i2c/ov5640.c 


But the camera device is not getting registered as /dev/video1 (capture device). Only /dev/video0 is showing. 

I have put prints in each function in drivers/media/i2c/ov5640.c and ./drivers/media/platform/ti/vpe/vip.c (See dmesg logs below)

[    0.326049] VM********************* File: drivers/input/keyboard/omap4-keypad.c, Line: 358, Function: omap4_keypad_probe ****************************
[    9.326629] VM********************* File: drivers/media/i2c/ov5640.c, Line: 3850, Function: ov5640_probe ****************************
[    9.362701] VM********************* File: drivers/media/i2c/ov5640.c, Line: 3814, Function: ov5640_get_regulators ****************************
[    9.496124] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3937, Function: vip_probe ****************************
[    9.597930] VM********************* File: drivers/media/i2c/ov5640.c, Line: 3442, Function: ov5640_init_controls ****************************
[    9.660461] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3782, Function: vip_endpoint_scan ****************************
[    9.686187] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 333, Function: vip_init_format_info ****************************
[    9.817169] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3617, Function: get_field ****************************
[    9.884002] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 529, Function: vip_shared_set_clock_enable ****************************
[    9.938079] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 569, Function: vip_top_vpdma_reset ****************************
[   10.002136] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.018829] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.044342] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3867, Function: vip_probe_slice ****************************
[   10.065155] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 540, Function: vip_top_reset ****************************
[   10.087524] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.102722] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.118164] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 629, Function: vip_set_slice_path ****************************
[   10.158843] VM********************* File: drivers/media/i2c/ov5640.c, Line: 3827, Function: ov5640_check_chip_id ****************************
[   10.207580] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.267791] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3867, Function: vip_probe_slice ****************************
[   10.400909] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 540, Function: vip_top_reset ****************************
[   10.490997] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.583160] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.583160] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 629, Function: vip_set_slice_path ****************************
[   10.583160] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 451, Function: insert_field ****************************
[   10.588836] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3937, Function: vip_probe ****************************
[   10.588867] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3782, Function: vip_endpoint_scan ****************************
[   10.604034] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3624, Function: vip_vpdma_fw_cb ****************************
[   10.604064] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3801, Function: vip_probe_complete ****************************
[   10.604064] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3704, Function: fwnode_graph_get_next_endpoint_by_regs ****************************
[   10.604095] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3583, Function: alloc_port ****************************
[   10.604095] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3712, Function: vip_register_subdev_notif ****************************
[   10.604095] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3704, Function: fwnode_graph_get_next_endpoint_by_regs ****************************
[   10.604125] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3704, Function: fwnode_graph_get_next_endpoint_by_regs ****************************
[   10.604125] VM********************* File: drivers/media/platform/ti/vpe/vip.c, Line: 3704, Function: fwnode_graph_get_next_endpoint_by_regs ****************************


What am I missing? 

Please help resolve this !

  •  

    Can you try setting vsync and hsync to 0 like in the above yaml?

    Here is my updated dtsi file. 

    // SPDX-License-Identifier: GPL-2.0-only
    /*
     * Copyright (C) 2014-2016 Texas Instruments Incorporated - https://www.ti.com/
     */
    /dts-v1/;
    
    #include "am5728.dtsi"
    #include "am57xx-commercial-grade.dtsi"
    #include "dra74x-mmc-iodelay.dtsi"
    #include "dra74-ipu-dsp-common.dtsi"
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    
    / {
    	compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7";
    
    	aliases {
    		rtc0 = &mcp_rtc;
    		rtc1 = &tps659038_rtc;
    		rtc2 = &rtc;
    		//display0 = &hdmi0;
    		display0 = "/display";
    	};
    
    	gpio-keys {
                    compatible = "gpio-keys";
    
                    button-user1 {
                            gpios = <&gpio1 14 0>;
                            label = "VM_HOOK_INT";
    			linux,code = <103>;
                    };
    
                    button-user2 {
    			gpios = <&gpio2 6 1>;
                            label = "VM_KEYL_INT";
    			linux,code = <102>;
                    };
    
                    button-user3 {
    			gpios = <&gpio5 1 0>;
                            label = "VM_HEADSET_INT";
    			linux,code = <108>;
                    };
    
            };
    		
    	chosen {
    		stdout-path = &uart3;
    	};
    
    	memory@0 {
    		device_type = "memory";
    		reg = <0x0 0x80000000 0x0 0x80000000>;
    	};
    
    	main_12v0: fixedregulator-main_12v0 {
    		/* main supply */
    		compatible = "regulator-fixed";
    		regulator-name = "main_12v0";
    		regulator-min-microvolt = <12000000>;
    		regulator-max-microvolt = <12000000>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	evm_5v0: fixedregulator-evm_5v0 {
    		/* Output of TPS54531D */
    		compatible = "regulator-fixed";
    		regulator-name = "evm_5v0";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		vin-supply = <&main_12v0>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		ipu2_memory_region: ipu2-memory@95800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x0 0x95800000 0x0 0x3800000>;
    			reusable;
    			status = "okay";
    		};
    
    		dsp1_memory_region: dsp1-memory@99000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x0 0x99000000 0x0 0x4000000>;
    			reusable;
    			status = "okay";
    		};
    
    		ipu1_memory_region: ipu1-memory@9d000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x0 0x9d000000 0x0 0x2000000>;
    			reusable;
    			status = "okay";
    		};
    
    		dsp2_memory_region: dsp2-memory@9f000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x0 0x9f000000 0x0 0x800000>;
    			reusable;
    			status = "okay";
    		};
    	};
    
    	vdd_3v3: fixedregulator-vdd_3v3 {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_3v3";
    		vin-supply = <&regen1>;
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    	};
    
    	aic_dvdd: fixedregulator-aic_dvdd {
    		compatible = "regulator-fixed";
    		regulator-name = "aic_dvdd_fixed";
    		vin-supply = <&vdd_3v3>;
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    	};
    
    	vtt_fixed: fixedregulator-vtt {
    		/* TPS51200 */
    		compatible = "regulator-fixed";
    		regulator-name = "vtt_fixed";
    		vin-supply = <&smps3_reg>;
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-always-on;
    		regulator-boot-on;
    		enable-active-high;
    		gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
    	};
    
    	gpio_fan: gpio_fan {
    		/* Based on 5v 500mA AFB02505HHB */
    		compatible = "gpio-fan";
    		gpios =  <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>;
    		gpio-fan,speed-map = <0     0>,
    				     <13000 1>;
    		#cooling-cells = <2>;
    	};
    
    	
    	clk_ov5640_fixed: clk_ov5640_fixed {
                            compatible = "fixed-clock";
                            #clock-cells = <0>;
                            clock-frequency = <24000000>;
                    };
    	clk_ov5640: clk_ov5640 {
                            compatible = "gpio-gate-clock";
                            #clock-cells = <0>;
                            clocks = <&clk_ov5640_fixed>;
                            enable-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
                    };
    
    	lcd0: display {
                  compatible = "bolymin,btz070f-chc" ,"panel-dpi";
                  //compatible = "osddisplays,osd070t1718-19ts" ,"panel-dpi";
                  backlight = <&lcd_bl>;
                  enable-gpios = <&gpio5 12 GPIO_ACTIVE_HIGH>;
                  attr-gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>; //LCD GPIO [AKSHI] changed in VIC2
                  label = "lcd";
    
    
                  port {
                       lcd_in: endpoint {
                               remote-endpoint = <&dpi_out>;
                               };
                  };
             };
    
             lcd_bl: backlight {
                     compatible = "pwm-backlight";
                     brightness-levels = <0 32 64 96 128 160 192 255>;
                     default-brightness-level = <8>;
                     pwms = <&ehrpwm0 0 50000 0>;
             };
    
    	sound0: sound0 {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "BeagleBoard-X15";
    		simple-audio-card,widgets =
    			"Line", "Line Out",
    			"Line", "Line In";
    		simple-audio-card,routing =
    			"Line Out",	"LLOUT",
    			"Line Out",	"RLOUT",
    			"MIC2L",	"Line In",
    			"MIC2R",	"Line In";
    		simple-audio-card,format = "dsp_b";
    		simple-audio-card,bitclock-master = <&sound0_master>;
    		simple-audio-card,frame-master = <&sound0_master>;
    		simple-audio-card,bitclock-inversion;
    
    		simple-audio-card,cpu {
    			sound-dai = <&mcasp3>;
    		};
    
    		sound0_master: simple-audio-card,codec {
    			sound-dai = <&tlv320aic3104>;
    			clocks = <&clkout2_clk>;
    		};
    	};
    };
    
    &i2c1 {
    	status = "okay";
    	clock-frequency = <400000>;
    
    	tps659038: tps659038@58 {
    		compatible = "ti,tps659038";
    		reg = <0x58>;
    		interrupt-parent = <&gpio1>;
    		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
    
    		#interrupt-cells = <2>;
    		interrupt-controller;
    
    		ti,system-power-controller;
    		ti,palmas-override-powerhold;
    
    		tps659038_pmic {
    			compatible = "ti,tps659038-pmic";
    
    			regulators {
    				smps12_reg: smps12 {
    					/* VDD_MPU */
    					regulator-name = "smps12";
    					regulator-min-microvolt = < 850000>;
    					regulator-max-microvolt = <1250000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				smps3_reg: smps3 {
    					/* VDD_DDR */
    					regulator-name = "smps3";
    					regulator-min-microvolt = <1350000>;
    					regulator-max-microvolt = <1350000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				smps45_reg: smps45 {
    					/* VDD_DSPEVE, VDD_IVA, VDD_GPU */
    					regulator-name = "smps45";
    					regulator-min-microvolt = < 850000>;
    					regulator-max-microvolt = <1250000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				smps6_reg: smps6 {
    					/* VDD_CORE */
    					regulator-name = "smps6";
    					regulator-min-microvolt = <850000>;
    					regulator-max-microvolt = <1150000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				/* SMPS7 unused */
    
    				smps8_reg: smps8 {
    					/* VDD_1V8 */
    					regulator-name = "smps8";
    					regulator-min-microvolt = <1800000>;
    					regulator-max-microvolt = <1800000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				/* SMPS9 unused */
    
    				ldo1_reg: ldo1 {
    					/* VDD_SD / VDDSHV8  */
    					regulator-name = "ldo1";
    					regulator-min-microvolt = <1800000>;
    					regulator-max-microvolt = <3300000>;
    					regulator-boot-on;
    					regulator-always-on;
    				};
    
    				ldo2_reg: ldo2 {
    					/* VDD_SHV5 */
    					regulator-name = "ldo2";
    					regulator-min-microvolt = <3300000>;
    					regulator-max-microvolt = <3300000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				ldo3_reg: ldo3 {
    					/* VDDA_1V8_PHYA */
    					regulator-name = "ldo3";
    					regulator-min-microvolt = <1800000>;
    					regulator-max-microvolt = <1800000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				ldo4_reg: ldo4 {
    					/* VDDA_1V8_PHYB */
    					regulator-name = "ldo4";
    					regulator-min-microvolt = <1800000>;
    					regulator-max-microvolt = <1800000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				ldo9_reg: ldo9 {
    					/* VDD_RTC */
    					regulator-name = "ldo9";
    					regulator-min-microvolt = <1050000>;
    					regulator-max-microvolt = <1050000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				ldoln_reg: ldoln {
    					/* VDDA_1V8_PLL */
    					regulator-name = "ldoln";
    					regulator-min-microvolt = <1800000>;
    					regulator-max-microvolt = <1800000>;
    					regulator-always-on;
    					regulator-boot-on;
    				};
    
    				ldousb_reg: ldousb {
    					/* VDDA_3V_USB: VDDA_USBHS33 */
    					regulator-name = "ldousb";
    					regulator-min-microvolt = <3300000>;
    					regulator-max-microvolt = <3300000>;
    					regulator-boot-on;
    				};
    
    				regen1: regen1 {
    					/* VDD_3V3_ON */
    					regulator-name = "regen1";
    					regulator-boot-on;
    					regulator-always-on;
    				};
    			};
    		};
    
    		tps659038_rtc: tps659038_rtc {
    			compatible = "ti,palmas-rtc";
    			interrupt-parent = <&tps659038>;
    			interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
    			wakeup-source;
    		};
    
    		tps659038_pwr_button: tps659038_pwr_button {
    			compatible = "ti,palmas-pwrbutton";
    			interrupt-parent = <&tps659038>;
    			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
    			wakeup-source;
    			ti,palmas-long-press-seconds = <12>;
    		};
    
    		tps659038_gpio: tps659038_gpio {
    			compatible = "ti,palmas-gpio";
    			gpio-controller;
    			#gpio-cells = <2>;
    		};
    
    		extcon_usb2: tps659038_usb {
    			compatible = "ti,palmas-usb-vid";
    			ti,enable-vbus-detection;
    			vbus-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
    		};
    
    	};
    
    	/*tmp102: tmp102@48 {
    		compatible = "ti,tmp102";
    		reg = <0x48>;
    		interrupt-parent = <&gpio7>;
    		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
    		#thermal-sensor-cells = <1>;
    	};*/
    
    	tlv320aic3104: tlv320aic3104@18 {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3104";
    		reg = <0x18>;
    		assigned-clocks = <&clkoutmux2_clk_mux>;
    		assigned-clock-parents = <&sys_clk2_dclk_div>;
    
    		status = "okay";
    		adc-settle-ms = <40>;
    
    		AVDD-supply = <&vdd_3v3>;
    		IOVDD-supply = <&vdd_3v3>;
    		DRVDD-supply = <&vdd_3v3>;
    		DVDD-supply = <&aic_dvdd>;
    	};
    
    	eeprom: eeprom@50 {
    		compatible = "atmel,24c256";
    		reg = <0x50>;
    	};
    };
    
    //AKSHI
    &i2c2 {
    	status = "okay";
    	clock-frequency = <400000>;
    	
    	//changed to 6_19 from 7_8 in VIC2
    	proc_temp: lm75@48 {
                       compatible = "national,lm75a";
                       reg = <0x48>;
    	           interrupt-parent = <&gpio6>;
    		   interrupts = <19 IRQ_TYPE_LEVEL_LOW>;
    		   #thermal-sensor-cells = <1>;
            };
    
            handset_temp: lm75@49 {
                       compatible = "national,lm75a";
                       reg = <0x49>;
    	           interrupt-parent = <&gpio6>;
    		   interrupts = <18 IRQ_TYPE_LEVEL_LOW>;
    		   #thermal-sensor-cells = <0>;
            };
    
    };
    
    
    
    &vin3a {
    	
    	status = "okay";
            vin3a_ep: endpoint {
                    remote-endpoint = <&cam>;
    		hsync-active = <0>;
    	        pclk-sample = <1>;
            	vsync-active = <0>;
            };
    };
    
    &vip2 {
            status = "okay";
    };
    
    &i2c3 {
            status = "okay";
            clock-frequency = <400000>;
    
    	mcp_rtc: rtc@6f {
    		compatible = "microchip,mcp7941x";
    		reg = <0x6f>;
    		interrupts-extended = <&crossbar_mpu GIC_SPI 2 IRQ_TYPE_EDGE_RISING>,
    				      <&dra7_pmx_core 0x424>;
    		interrupt-names = "irq", "wakeup";
    
    		vcc-supply = <&vdd_3v3>;
    		wakeup-source;
    	};
    
    
            ov5640@3c {
                    compatible = "ovti,ov5640";
                    reg = <0x3c>;
                    clock-names = "xclk";
                    clocks = <&clk_ov5640>;
    		pinctrl-names = "default";
                    pinctrl-0 = <&camera_gpio>;
    		powerdown-gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;
    
                    port {
                            cam: endpoint {
                                    bus-width = <8>;
                                    hsync-active = <0>;
                                    vsync-active = <0>;
                                    pclk-sample = <1>;
                                    remote-endpoint = <&vin3a_ep>;
                            };
                    };
            };
    
    };
    
    &ehrpwm0 {
            status = "okay";
    };
    
    &epwmss0 {
            status = "okay";
    };
    
    
    /* [00] ::  Added Touch panel entries */
    &i2c5 {
            status = "okay";
            clock-frequency = <400000>;
    
            polytouch: edt-ft5x06@38 {
                    compatible = "edt,edt-ft5x06";
                    reg = <0x38>;
                    attb-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
                    interrupt-parent = <&gpio5>;
                    interrupts = <9 0>;
            //reset-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>;
            //wake-gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
    /* AKSHI*/
                    threshold = <20>;
                    touchscreen-size-x = <1024>;
                    touchscreen-size-y = <600>;
                    wakeup-source;
        };
    
    };
    
    
    /*&gpio7_target {
    	ti,no-reset-on-init;
    	ti,no-idle-on-init;
    };*/
    
    
    &cpu0 {
    	vdd-supply = <&smps12_reg>;
    	voltage-tolerance = <1>;
    };
    
    &uart3 {
    	status = "okay";
    	interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
    			      <&dra7_pmx_core 0x3f8>;
    };
    
    &davinci_mdio_sw {
    	phy0: ethernet-phy@0 {
    		reg = <0>;
    	};
    
    	phy1: ethernet-phy@1 {
    		reg = <1>;
    	};
    };
    
    &mac_sw {
    	status = "okay";
    	dual_emac;
    };
    
    &cpsw_port0 {
    	phy-handle = <&phy0>;
    	//phy-mode = "rgmii-rxid";
    	phy-mode = "rgmii";
    	ti,dual-emac-pvid = <1>;
    };
    
    &cpsw_port1 {
    	phy-handle = <&phy1>;
    	//phy-mode = "rgmii-rxid";
    	phy-mode = "rgmii";
    	ti,dual-emac-pvid = <2>;
    };
    
    &mmc1 {
    	status = "okay";
    
    	pinctrl-names = "default";
    	pinctrl-0 = <&mmc1_pins_default>;
    
    	bus-width = <4>;
    	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
    	no-1-8-v;
    };
    
    &mmc2 {
    	status = "okay";
    
    	pinctrl-names = "default";
    	pinctrl-0 = <&mmc2_pins_default>;
    
    	vmmc-supply = <&vdd_3v3>;
    	vqmmc-supply = <&vdd_3v3>;
    	bus-width = <8>;
    	non-removable;
    	no-1-8-v;
    };
    
    &sata {
    	status = "okay";
    };
    
    &usb2_phy1 {
    	phy-supply = <&ldousb_reg>;
    };
    
    &usb2_phy2 {
    	phy-supply = <&ldousb_reg>;
    };
    
    &usb1 {
    	dr_mode = "host";
    	status = "disabled"; 
    };
    
    &omap_dwc3_2 {
    	extcon = <&extcon_usb2>;
    };
    
    &usb2 {
    	/*
    	 * Stand alone usage is peripheral only.
    	 * However, with some resistor modifications
    	 * this port can be used via expansion connectors
    	 * as "host" or "dual-role". If so, provide
    	 * the necessary dr_mode override in the expansion
    	 * board's DT.
    	 */
    	dr_mode = "peripheral";
    	status = "disabled";
    };
    
    &cpu_trips {
    	cpu_alert1: cpu_alert1 {
    		temperature = <50000>; /* millicelsius */
    		hysteresis = <2000>; /* millicelsius */
    		type = "active";
    	};
    };
    
    &cpu_cooling_maps {
    	map1 {
    		trip = <&cpu_alert1>;
    		cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
    	};
    };
    
    &thermal_zones {
    	board_thermal: board_thermal {
    		polling-delay-passive = <1250>; /* milliseconds */
    		polling-delay = <1500>; /* milliseconds */
    
    				/* sensor       ID */
    		thermal-sensors = <&proc_temp 0>;
    
    		board_trips: trips {
    			board_alert0: board_alert {
    				temperature = <40000>; /* millicelsius */
    				hysteresis = <2000>; /* millicelsius */
    				type = "active";
    			};
    
    			board_crit: board_crit {
    				temperature = <105000>; /* millicelsius */
    				hysteresis = <0>; /* millicelsius */
    				type = "critical";
    			};
    		};
    
    		board_cooling_maps: cooling-maps {
    			map0 {
    				trip = <&board_alert0>;
    				cooling-device =
    				  <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
    			};
    		};
           };
    };
    
    &gpu {
    	status = "ok";
    };
    
    &dss {
            status = "okay";
            vdda_video-supply = <&ldoln_reg>;
            ports {
                    #address-cells = <1>;
                    #size-cells = <0>;
    
                    port {
                            reg = <0>;
                            dpi_out: endpoint {
                                    data-lines = <24>;
                                    remote-endpoint = <&lcd_in>;
                            };
                    };
            };
    };
    
    
    /*&hdmi {
    	status = "okay";
    	vdda-supply = <&ldo4_reg>;
    
    	port {
    		hdmi_out: endpoint {
    			remote-endpoint = <&tpd12s015_in>;
    		};
    	};
    };*/
    
    &pcie1_rc {
    	status = "okay";
    	gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
    };
    
    &mcasp3 {
    	#sound-dai-cells = <0>;
    	assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>;
    	assigned-clock-parents = <&sys_clkin2>;
    	status = "okay";
    
    	op-mode = <0>;	/* MCASP_IIS_MODE */
    	tdm-slots = <2>;
    	/* 4 serializers */
    	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
    		1 2 0 0
    	>;
    	tx-num-evt = <32>;
    	rx-num-evt = <32>;
    };
    
    &ipu2 {
    	status = "okay";
    	memory-region = <&ipu2_memory_region>;
    };
    
    &ipu1 {
    	status = "okay";
    	memory-region = <&ipu1_memory_region>;
    };
    
    &dsp1 {
    	status = "okay";
    	memory-region = <&dsp1_memory_region>;
    };
    
    &dsp2 {
    	status = "okay";
    	memory-region = <&dsp2_memory_region>;
    };
    
    &pruss1_mdio {
    	status = "disabled";
    };
    
    &pruss2_mdio {
    	status = "disabled";
    };
    
    #include "dra7-ipu-common-early-boot.dtsi"

    But still no change. Same green and purple output. 

    Also the gstreamer feed is very slow i.e., when i wave my hand in front of the camera the feed takes  a long time to update the patterns.

    Please resolve the issue soon. 

    They must be under the ov5640 -> port node and the vin3a node. 

    Yeah ok. Earlier it was missing under vin3a node.

    -Vishal

  • Hi Vishal,

    Please add the vsync and hsync back.

    Can you add prints to the I2C commands to see if there are any differences between the two releases?

    Best,
    Jared

  • Hi  ,

    Please add the vsync and hsync back.

    You mean set them back to 1 under both port and vin3a nodes?

    Can you add prints to the I2C commands to see if there are any differences between the two releases?

    By two releases you mean one where hsync and vsync are 1 and the other where hsync and vsync are 0? Which i2c commands are you referring to ?

    Can you please be very specific when you post here ?

    - Vishal 

  • Hi Vishal,

    You mean set them back to 1 under both port and vin3a nodes?

    Yes, I mean to set them both back to 1. It sounds like they were performing better with those settings based off of your comment.

    By two releases you mean one where hsync and vsync are 1 and the other where hsync and vsync are 0? Which i2c commands are you referring to ?

    I meant 6.03 and 9.03. I would like to see what differences in the ov5640 I2C registers there are between the two. If the 9.03 release is setting more/less registers than 6.03, it could explain the difference in behavior.

    You should be able to add a dev_info to the ov5640_write_reg function to see what is set.

    Best,
    Jared

  • Jared, 
    I am on leave as I am ill. 

    I meant 6.03 and 9.03. I would like to see what differences in the ov5640 I2C registers there are between the two. If the 9.03 release is setting more/less registers than 6.03, it could explain the difference in behavior.

    You should be able to add a dev_print to the ov5640_write_reg function to see what is set.

    I will tell the result soon!

    -Vishal

  • Hi Vishal,

    Thank you, please update the thread when you are able to.

    Best,
    Jared

  • Jared, 

    I have set the values of hsync and vsync back to 1.

    Do you want me to add back ti,vip-channels property ?

    I will put the prints inside ov5640_write_reg function.

    Basically, I will be printing out the values of reg variable in the driver and attach the  dmesg output here.

    -Vishal

  • Jared, 

    I have set the values of hsync and vsync back to 1.

    Do you want me to add back ti,vip-channels property ?

    I will put the prints inside ov5640_write_reg function.

    Basically, I will be printing out the values of reg variable in the driver as below.

    printk(KERN_INFO "VM ********** reg value = %hu **************\n", val);

    Here is the reg value output for 9.03 SDK's boot log.

    root@am57xx-evm:~# dmesg | grep "reg value"
    [    9.733795] VM ********** reg value = 66 **************
    [    9.739227] VM ********** reg value = 17 **************
    [    9.751708] VM ********** reg value = 3 **************
    [    9.809387] VM ********** reg value = 54 **************
    [    9.815093] VM ********** reg value = 14 **************
    [    9.821411] VM ********** reg value = 226 **************
    [    9.827117] VM ********** reg value = 18 **************
    [    9.833404] VM ********** reg value = 224 **************
    [    9.843994] VM ********** reg value = 160 **************
    [    9.852661] VM ********** reg value = 90 **************
    [    9.914031] VM ********** reg value = 120 **************
    [    9.959106] VM ********** reg value = 1 **************
    [    9.972991] VM ********** reg value = 96 **************
    [    9.980590] VM ********** reg value = 26 **************
    [    9.998107] VM ********** reg value = 2 **************
    [   10.003631] VM ********** reg value = 16 **************
    [   10.010711] VM ********** reg value = 10 **************
    [   10.020202] VM ********** reg value = 18 **************
    [   10.087188] VM ********** reg value = 8 **************
    [   10.148590] VM ********** reg value = 51 **************
    [   10.204315] VM ********** reg value = 96 **************
    [   10.280914] VM ********** reg value = 82 **************
    [   10.357849] VM ********** reg value = 32 **************
    [   10.421051] VM ********** reg value = 80 **************
    [   10.496795] VM ********** reg value = 67 **************
    [   10.595184] VM ********** reg value = 0 **************
    [   10.654174] VM ********** reg value = 248 **************
    [   10.729187] VM ********** reg value = 19 **************
    [   10.782592] VM ********** reg value = 3 **************
    [   10.831878] VM ********** reg value = 64 **************
    [   10.901184] VM ********** reg value = 1 **************
    [   10.950927] VM ********** reg value = 164 **************
    [   11.035888] VM ********** reg value = 40 **************
    [   11.131347] VM ********** reg value = 152 **************
    [   11.200805] VM ********** reg value = 0 **************
    [   11.250915] VM ********** reg value = 8 **************
    [   11.252685] VM ********** reg value = 0 **************
    [   11.253509] VM ********** reg value = 28 **************
    [   11.254669] VM ********** reg value = 156 **************
    [   11.257110] VM ********** reg value = 64 **************
    [   11.261901] VM ********** reg value = 65 **************
    [   11.264831] VM ********** reg value = 7 **************
    [   11.265655] VM ********** reg value = 49 **************
    [   11.266235] VM ********** reg value = 49 **************
    [   11.266387] VM ********** reg value = 0 **************
    [   11.268585] VM ********** reg value = 41 **************
    [   11.268737] VM ********** reg value = 100 **************
    [   11.269348] VM ********** reg value = 82 **************
    [   11.269500] VM ********** reg value = 3 **************
    [   11.270111] VM ********** reg value = 3 **************
    [   11.270263] VM ********** reg value = 216 **************
    [   11.270385] VM ********** reg value = 1 **************
    [   11.270538] VM ********** reg value = 39 **************
    [   11.272338] VM ********** reg value = 0 **************
    [   11.272491] VM ********** reg value = 246 **************
    [   11.272613] VM ********** reg value = 3 **************
    [   11.272766] VM ********** reg value = 4 **************
    [   11.272918] VM ********** reg value = 3 **************
    [   11.274139] VM ********** reg value = 216 **************
    [   11.274261] VM ********** reg value = 2 **************
    [   11.275939] VM ********** reg value = 2 **************
    [   11.276611] VM ********** reg value = 0 **************
    [   11.276763] VM ********** reg value = 28 **************
    [   11.277465] VM ********** reg value = 255 **************
    [   11.278106] VM ********** reg value = 195 **************
    [   11.278259] VM ********** reg value = 8 **************
    [   11.278411] VM ********** reg value = 63 **************
    [   11.280303] VM ********** reg value = 0 **************
    [   11.280456] VM ********** reg value = 0 **************
    [   11.280609] VM ********** reg value = 10 **************
    [   11.280731] VM ********** reg value = 167 **************
    [   11.280883] VM ********** reg value = 163 **************
    [   11.281005] VM ********** reg value = 255 **************
    [   11.281158] VM ********** reg value = 242 **************
    [   11.281280] VM ********** reg value = 0 **************
    [   11.281433] VM ********** reg value = 20 **************
    [   11.283355] VM ********** reg value = 37 **************
    [   11.283782] VM ********** reg value = 36 **************
    [   11.283935] VM ********** reg value = 9 **************
    [   11.284088] VM ********** reg value = 9 **************
    [   11.284210] VM ********** reg value = 9 **************
    [   11.284362] VM ********** reg value = 136 **************
    [   11.284484] VM ********** reg value = 84 **************
    [   11.284637] VM ********** reg value = 238 **************
    [   11.284759] VM ********** reg value = 178 **************
    [   11.284912] VM ********** reg value = 80 **************
    [   11.286865] VM ********** reg value = 52 **************
    [   11.287017] VM ********** reg value = 107 **************
    [   11.287170] VM ********** reg value = 70 **************
    [   11.287322] VM ********** reg value = 248 **************
    [   11.287445] VM ********** reg value = 4 **************
    [   11.287597] VM ********** reg value = 112 **************
    [   11.287719] VM ********** reg value = 240 **************
    [   11.287872] VM ********** reg value = 240 **************
    [   11.289428] VM ********** reg value = 3 **************
    [   11.290344] VM ********** reg value = 1 **************
    [   11.291137] VM ********** reg value = 4 **************
    [   11.291290] VM ********** reg value = 108 **************
    [   11.291442] VM ********** reg value = 4 **************
    [   11.291595] VM ********** reg value = 0 **************
    [   11.291717] VM ********** reg value = 9 **************
    [   11.291900] VM ********** reg value = 43 **************
    [   11.292053] VM ********** reg value = 56 **************
    [   11.292205] VM ********** reg value = 30 **************
    [   11.292358] VM ********** reg value = 91 **************
    [   11.292541] VM ********** reg value = 8 **************
    [   11.292694] VM ********** reg value = 10 **************
    [   11.292846] VM ********** reg value = 126 **************
    [   11.292999] VM ********** reg value = 136 **************
    [   11.293151] VM ********** reg value = 124 **************
    [   11.293273] VM ********** reg value = 108 **************
    [   11.293426] VM ********** reg value = 16 **************
    [   11.293579] VM ********** reg value = 1 **************
    [   11.294067] VM ********** reg value = 152 **************
    [   11.294189] VM ********** reg value = 8 **************
    [   11.294372] VM ********** reg value = 48 **************
    [   11.294494] VM ********** reg value = 16 **************
    [   11.294647] VM ********** reg value = 0 **************
    [   11.294769] VM ********** reg value = 8 **************
    [   11.294952] VM ********** reg value = 48 **************
    [   11.295074] VM ********** reg value = 8 **************
    [   11.295227] VM ********** reg value = 22 **************
    [   11.295379] VM ********** reg value = 8 **************
    [   11.295501] VM ********** reg value = 48 **************
    [   11.295654] VM ********** reg value = 4 **************
    [   11.295867] VM ********** reg value = 6 **************
    [   11.296020] VM ********** reg value = 1 **************
    [   11.296173] VM ********** reg value = 8 **************
    [   11.296295] VM ********** reg value = 20 **************
    [   11.296478] VM ********** reg value = 40 **************
    [   11.296630] VM ********** reg value = 81 **************
    [   11.296752] VM ********** reg value = 101 **************
    [   11.296905] VM ********** reg value = 113 **************
    [   11.297058] VM ********** reg value = 125 **************
    [   11.297210] VM ********** reg value = 135 **************
    [   11.297851] VM ********** reg value = 145 **************
    [   11.298004] VM ********** reg value = 154 **************
    [   11.299713] VM ********** reg value = 170 **************
    [   11.300445] VM ********** reg value = 184 **************
    [   11.300598] VM ********** reg value = 205 **************
    [   11.300750] VM ********** reg value = 221 **************
    [   11.300872] VM ********** reg value = 234 **************
    [   11.302734] VM ********** reg value = 29 **************
    [   11.303314] VM ********** reg value = 2 **************
    [   11.303924] VM ********** reg value = 64 **************
    [   11.304168] VM ********** reg value = 16 **************
    [   11.304290] VM ********** reg value = 16 **************
    [   11.304443] VM ********** reg value = 0 **************
    [   11.304565] VM ********** reg value = 248 **************
    [   11.304718] VM ********** reg value = 35 **************
    [   11.304840] VM ********** reg value = 20 **************
    [   11.305023] VM ********** reg value = 15 **************
    [   11.305145] VM ********** reg value = 15 **************
    [   11.305297] VM ********** reg value = 18 **************
    [   11.305450] VM ********** reg value = 38 **************
    [   11.305603] VM ********** reg value = 12 **************
    [   11.305725] VM ********** reg value = 8 **************
    [   11.305877] VM ********** reg value = 5 **************
    [   11.305999] VM ********** reg value = 5 **************
    [   11.306152] VM ********** reg value = 8 **************
    [   11.306304] VM ********** reg value = 13 **************
    [   11.306457] VM ********** reg value = 8 **************
    [   11.306610] VM ********** reg value = 3 **************
    [   11.306762] VM ********** reg value = 0 **************
    [   11.306915] VM ********** reg value = 0 **************
    [   11.307037] VM ********** reg value = 3 **************
    [   11.307189] VM ********** reg value = 9 **************
    [   11.307342] VM ********** reg value = 7 **************
    [   11.307464] VM ********** reg value = 3 **************
    [   11.307617] VM ********** reg value = 0 **************
    [   11.307769] VM ********** reg value = 1 **************
    [   11.307891] VM ********** reg value = 3 **************
    [   11.308044] VM ********** reg value = 8 **************
    [   11.308166] VM ********** reg value = 13 **************
    [   11.308319] VM ********** reg value = 8 **************
    [   11.308471] VM ********** reg value = 5 **************
    [   11.308593] VM ********** reg value = 6 **************
    [   11.308746] VM ********** reg value = 8 **************
    [   11.308868] VM ********** reg value = 14 **************
    [   11.309020] VM ********** reg value = 41 **************
    [   11.309173] VM ********** reg value = 23 **************
    [   11.309295] VM ********** reg value = 17 **************
    [   11.309448] VM ********** reg value = 17 **************
    [   11.309600] VM ********** reg value = 21 **************
    [   11.309722] VM ********** reg value = 40 **************
    [   11.309875] VM ********** reg value = 70 **************
    [   11.310028] VM ********** reg value = 38 **************
    [   11.310150] VM ********** reg value = 8 **************
    [   11.310302] VM ********** reg value = 38 **************
    [   11.310424] VM ********** reg value = 100 **************
    [   11.310577] VM ********** reg value = 38 **************
    [   11.310699] VM ********** reg value = 36 **************
    [   11.310852] VM ********** reg value = 34 **************
    [   11.310974] VM ********** reg value = 36 **************
    [   11.311126] VM ********** reg value = 36 **************
    [   11.311279] VM ********** reg value = 6 **************
    [   11.311401] VM ********** reg value = 34 **************
    [   11.311553] VM ********** reg value = 64 **************
    [   11.311706] VM ********** reg value = 66 **************
    [   11.311859] VM ********** reg value = 36 **************
    [   11.311981] VM ********** reg value = 38 **************
    [   11.312133] VM ********** reg value = 36 **************
    [   11.312286] VM ********** reg value = 34 **************
    [   11.312438] VM ********** reg value = 34 **************
    [   11.314178] VM ********** reg value = 38 **************
    [   11.314331] VM ********** reg value = 68 **************
    [   11.314453] VM ********** reg value = 36 **************
    [   11.314605] VM ********** reg value = 38 **************
    [   11.314758] VM ********** reg value = 40 **************
    [   11.315551] VM ********** reg value = 66 **************
    [   11.315673] VM ********** reg value = 206 **************
    [   11.315826] VM ********** reg value = 0 **************
    [   11.316497] VM ********** reg value = 48 **************
    [   11.316650] VM ********** reg value = 40 **************
    [   11.316802] VM ********** reg value = 48 **************
    [   11.316925] VM ********** reg value = 38 **************
    [   11.317474] VM ********** reg value = 96 **************
    [   11.317626] VM ********** reg value = 20 **************
    [   11.317779] VM ********** reg value = 4 **************
    [   11.623840] VM ********** reg value = 1 **************
    [   11.629577] VM ********** reg value = 2 **************
    [   11.635314] VM ********** reg value = 3 **************
    [   11.641296] VM ********** reg value = 24 **************
    [   11.643371] VM ********** reg value = 32 **************
    [   11.643829] VM ********** reg value = 123 **************
    [   11.646423] VM ********** reg value = 19 **************
    [   11.649017] VM ********** reg value = 1 **************
    [   11.654510] VM ********** reg value = 8 **************
    [   11.655639] VM ********** reg value = 28 **************
    [   11.745269] VM ********** reg value = 156 **************
    [   11.788757] VM ********** reg value = 64 **************
    [   12.719970] VM ********** reg value = 49 **************
    [   12.726043] VM ********** reg value = 49 **************
    [   12.731689] VM ********** reg value = 0 **************
    [   12.744903] VM ********** reg value = 41 **************
    [   12.751861] VM ********** reg value = 100 **************
    [   12.757476] VM ********** reg value = 82 **************
    [   12.764129] VM ********** reg value = 3 **************
    [   12.774078] VM ********** reg value = 3 **************
    [   12.783996] VM ********** reg value = 216 **************
    [   12.790893] VM ********** reg value = 1 **************
    [   12.796661] VM ********** reg value = 39 **************
    [   12.803253] VM ********** reg value = 0 **************
    [   12.808776] VM ********** reg value = 246 **************
    [   12.834075] VM ********** reg value = 3 **************
    [   12.844940] VM ********** reg value = 4 **************
    [   12.860168] VM ********** reg value = 3 **************
    [   12.877746] VM ********** reg value = 216 **************
    [   12.884277] VM ********** reg value = 2 **************
    [   12.904968] VM ********** reg value = 2 **************
    [   12.917968] VM ********** reg value = 4 **************
    [   12.923339] VM ********** reg value = 53 **************
    [   12.928863] VM ********** reg value = 34 **************
    [   12.934906] VM ********** reg value = 2 **************
    [   12.940338] VM ********** reg value = 163 **************
    [   12.945922] VM ********** reg value = 0 **************
    [   12.951263] VM ********** reg value = 0 **************
    [   12.957489] VM ********** reg value = 0 **************
    [   12.962860] VM ********** reg value = 4 **************
    [   12.968414] VM ********** reg value = 10 **************
    [   12.974090] VM ********** reg value = 63 **************
    [   12.993041] VM ********** reg value = 7 **************
    [   13.009429] VM ********** reg value = 155 **************
    [   13.020416] VM ********** reg value = 0 **************
    [   13.028289] VM ********** reg value = 16 **************
    [   13.040557] VM ********** reg value = 0 **************
    [   13.046997] VM ********** reg value = 6 **************
    [   13.058898] VM ********** reg value = 2 **************
    [   13.064453] VM ********** reg value = 128 **************
    [   13.070068] VM ********** reg value = 1 **************
    [   13.079986] VM ********** reg value = 224 **************
    [   13.085662] VM ********** reg value = 7 **************
    [   13.091156] VM ********** reg value = 104 **************
    [   13.096862] VM ********** reg value = 4 **************
    [   13.102355] VM ********** reg value = 56 **************
    [   13.108215] VM ********** reg value = 1 **************
    [   13.119415] VM ********** reg value = 0 **************
    [   13.129364] VM ********** reg value = 7 **************
    [   13.134979] VM ********** reg value = 65 **************
    [   13.141448] VM ********** reg value = 56 **************
    [   13.153076] VM ********** reg value = 47 **************
    [   13.159698] VM ********** reg value = 56 **************
    [   13.167388] VM ********** reg value = 47 **************
    [   13.184967] VM ********** reg value = 112 **************
    [   13.194671] VM ********** reg value = 23 **************
    [   13.208740] VM ********** reg value = 1 **************
    [   13.215759] VM ********** reg value = 14 **************
    [   13.222991] VM ********** reg value = 3 **************
    [   13.230834] VM ********** reg value = 1 **************
    [   13.238739] VM ********** reg value = 68 **************
    [   13.247497] VM ********** reg value = 3 **************
    [   13.261749] VM ********** reg value = 42 **************
    [   13.267547] VM ********** reg value = 63 **************
    [   13.273132] VM ********** reg value = 0 **************
    [   13.281707] VM ********** reg value = 7 **************
    [   13.289093] VM ********** reg value = 28 **************
    [   13.296722] VM ********** reg value = 195 **************
    [   13.305267] VM ********** reg value = 0 **************
    [   13.311004] VM ********** reg value = 34 **************
    [   13.317169] VM ********** reg value = 24 **************
    [   13.324157] VM ********** reg value = 127 **************
    [   13.333892] VM ********** reg value = 252 **************

    Similary I put a print in the ov5640_write_reg function of 6.03's SDK ov5640 driver and I got nothing in the dmesg logs.

     

    But I don't think these are useful to you. Please tell how do you want to modify the printk statement.

    -Vishal

  • Hi Vishal,

    I'd like to see which register and value are being written.

    So something like:

    printk("i2c reg: 0x%x, value: 0x%x", i2c_reg, i2c_val);

    Best,
    Jared

  • Jared, 

    I put the printk in 9.03 SDK like you asked for.

    printk("i2c reg: 0x%x, value: 0x%x", reg, val);

    Here is the dmesg output below.

    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 6.1.119-00014-gc356cb3a8b8b-dirty (root@cdot-VirtualBox) (arm-oe-linux-gnueabi-gcc (GCC) 11.5.0, GNU ld (GNU Binutils) 2.38.20220708) #90 SMP PREEMPT Tue Sep 23 10:33:29 IST 2025
    [    0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=30c5387d
    [    0.000000] CPU: div instructions available: patching division code
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [    0.000000] OF: fdt: Machine model: TI AM5728 BeagleBoard-X15 rev C
    [    0.000000] Memory policy: Data cache writealloc
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created CMA memory pool at 0x0000000095800000, size 56 MiB
    [    0.000000] OF: reserved mem: initialized node ipu2-memory@95800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created CMA memory pool at 0x0000000099000000, size 64 MiB
    [    0.000000] OF: reserved mem: initialized node dsp1-memory@99000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009d000000, size 32 MiB
    [    0.000000] OF: reserved mem: initialized node ipu1-memory@9d000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created CMA memory pool at 0x000000009f000000, size 8 MiB
    [    0.000000] OF: reserved mem: initialized node dsp2-memory@9f000000, compatible id shared-dma-pool
    [    0.000000] cma: Reserved 64 MiB at 0x00000000ab800000
    [    0.000000] OMAP4: Map 0x00000000afd00000 to (ptrval) for dram barrier
    [    0.000000] Hit pending asynchronous external abort (FSR=0x00001211) during first unmask, this is most likely caused by a firmware/bootloader bug.
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000afcfffff]
    [    0.000000]   Normal   empty
    [    0.000000]   HighMem  [mem 0x00000000afd00000-0x000000027fffffff]
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x00000000956fffff]
    [    0.000000]   node   0: [mem 0x0000000095700000-0x00000000957fffff]
    [    0.000000]   node   0: [mem 0x0000000095800000-0x000000009cffffff]
    [    0.000000]   node   0: [mem 0x000000009d000000-0x000000009effffff]
    [    0.000000]   node   0: [mem 0x000000009f000000-0x00000000afcfffff]
    [    0.000000]   node   0: [mem 0x00000000b0000000-0x00000000feffffff]
    [    0.000000]   node   0: [mem 0x0000000200000000-0x000000027fffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000027fffffff]
    [    0.000000] On node 0, zone HighMem: 768 pages in unavailable ranges
    [    0.000000] DRA752 ES2.0
    [    0.000000] clockdomain: ipu1_clkdm: powerdomain ipu_pwrdm does not exist
    [    0.000000] clockdomain: ipu_clkdm: powerdomain ipu_pwrdm does not exist
    [    0.000000] percpu: Embedded 16 pages/cpu s34324 r8192 d23020 u65536
    [    0.000000] pcpu-alloc: s34324 r8192 d23020 u65536 alloc=16*4096
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1042182
    [    0.000000] Kernel command line: console=ttyS2,115200n8 root=PARTUUID=5c496148-02 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: area num 2.
    [    0.000000] software IO TLB: mapped [mem 0x00000000a3800000-0x00000000a7800000] (64MB)
    [    0.000000] Memory: 3758060K/4174848K available (12288K kernel code, 1468K rwdata, 3304K rodata, 2048K init, 309K bss, 220180K reserved, 196608K cma-reserved, 3325952K highmem)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] trace event string verifier disabled
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu: 	RCU event tracing is enabled.
    [    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=16 to nr_cpu_ids=2.
    [    0.000000] 	Trampoline variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] GIC: Using split EOI/Deactivate mode
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] OMAP clocksource: 32k_counter at 32768 Hz
    [    0.000000] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
    [    0.000000] sched_clock: 32 bits at 33kHz, resolution 30517ns, wraps every 65535999984741ns
    [    0.001434] TI gptimer clockevent: always-on 32786 Hz at /ocp/interconnect@4ae00000/segment@10000/target-module@8000
    [    0.003143] TI gptimer percpu-dmtimer: 20000000 Hz at /ocp/interconnect@48800000/segment@0/target-module@2c000
    [    0.003326] TI gptimer percpu-dmtimer: 20000000 Hz at /ocp/interconnect@48800000/segment@0/target-module@2e000
    [    0.004241] Console: colour dummy device 80x30
    [    0.004272] Calibrating delay loop... 1993.93 BogoMIPS (lpj=9969664)
    [    0.062072] CPU: Testing write buffer coherency: ok
    [    0.062103] CPU0: Spectre v2: using ICIALLU workaround
    [    0.062103] CPU0: Spectre BHB: enabling loop workaround for all CPUs
    [    0.062133] pid_max: default: 32768 minimum: 301
    [    0.062255] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.062255] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.062896] /cpus/cpu@0 missing clock-frequency property
    [    0.062927] /cpus/cpu@1 missing clock-frequency property
    [    0.062927] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [    0.063568] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.063598] cblist_init_generic: Setting shift to 1 and lim to 1.
    [    0.063690] Setting up static identity map for 0x80200000 - 0x80200138
    [    0.063781] rcu: Hierarchical SRCU implementation.
    [    0.063781] rcu: 	Max phase no-delay instances is 1000.
    [    0.065948] EFI services will not be available.
    [    0.066497] smp: Bringing up secondary CPUs ...
    [    0.126708] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
    [    0.126739] CPU1: Spectre v2: using ICIALLU workaround
    [    0.126831] smp: Brought up 1 node, 2 CPUs
    [    0.126861] SMP: Total of 2 processors activated (3994.41 BogoMIPS).
    [    0.126861] CPU: All CPU(s) started in HYP mode.
    [    0.126861] CPU: Virtualization extensions available.
    [    0.127288] devtmpfs: initialized
    [    0.150115] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [    0.150268] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.150299] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
    [    0.154754] pinctrl core: initialized pinctrl subsystem
    [    0.155395] DMI not present or invalid.
    [    0.155822] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.157623] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.158569] thermal_sys: Registered thermal governor 'step_wise'
    [    0.158599] cpuidle: using governor menu
    [    0.184906] platform ocp: Fixed dependency cycle(s) with /ocp/interconnect@4a000000/segment@0/target-module@8000/cm_core@0/clock@e00/clock@20
    [    0.184967] platform ocp: Fixed dependency cycle(s) with /ocp/interconnect@4a000000/segment@0/target-module@8000/cm_core@0/clock@700/clock@20
    [    0.188568] platform display: Fixed dependency cycle(s) with /ocp/target-module@58000000/dss@0
    [    0.190093] No ATAGs?
    [    0.190155] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [    0.190185] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [    0.208587] reg-fixed-voltage fixedregulator-main_12v0: GPIO lookup for consumer (null)
    [    0.208587] reg-fixed-voltage fixedregulator-main_12v0: using device tree for GPIO lookup
    [    0.208587] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/fixedregulator-main_12v0[0]'
    [    0.208618] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-main_12v0[0]'
    [    0.208648] reg-fixed-voltage fixedregulator-main_12v0: using lookup tables for GPIO lookup
    [    0.208648] reg-fixed-voltage fixedregulator-main_12v0: No GPIO consumer (null) found
    [    0.208892] reg-fixed-voltage fixedregulator-evm_5v0: GPIO lookup for consumer (null)
    [    0.208892] reg-fixed-voltage fixedregulator-evm_5v0: using device tree for GPIO lookup
    [    0.208892] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/fixedregulator-evm_5v0[0]'
    [    0.208923] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-evm_5v0[0]'
    [    0.208923] reg-fixed-voltage fixedregulator-evm_5v0: using lookup tables for GPIO lookup
    [    0.208953] reg-fixed-voltage fixedregulator-evm_5v0: No GPIO consumer (null) found
    [    0.209533] iommu: Default domain type: Translated 
    [    0.209533] iommu: DMA domain TLB invalidation policy: strict mode 
    [    0.210876] SCSI subsystem initialized
    [    0.211029] libata version 3.00 loaded.
    [    0.211212] usbcore: registered new interface driver usbfs
    [    0.211242] usbcore: registered new interface driver hub
    [    0.211273] usbcore: registered new device driver usb
    [    0.211669] mc: Linux media interface: v0.10
    [    0.211700] pps_core: LinuxPPS API ver. 1 registered
    [    0.211730] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.211730] PTP clock support registered
    [    0.211853] EDAC MC: Ver: 3.0.0
    [    0.213684] clocksource: Switched to clocksource 32k_counter
    [    0.221405] NET: Registered PF_INET protocol family
    [    0.221588] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.234191] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
    [    0.234222] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.234222] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
    [    0.234283] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
    [    0.234527] TCP: Hash tables configured (established 8192 bind 8192)
    [    0.234588] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
    [    0.234619] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
    [    0.234741] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.235168] RPC: Registered named UNIX socket transport module.
    [    0.235168] RPC: Registered udp transport module.
    [    0.235168] RPC: Registered tcp transport module.
    [    0.235168] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.235168] PCI: CLS 0 bytes, default 64
    [    0.235565] armv7-pmu pmu: hw perfevents: no interrupt-affinity property, guessing.
    [    0.235717] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [    0.236572] Initialise system trusted keyrings
    [    0.236755] workingset: timestamp_bits=30 max_order=20 bucket_order=0
    [    0.242065] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.242675] NFS: Registering the id_resolver key type
    [    0.242706] Key type id_resolver registered
    [    0.242706] Key type id_legacy registered
    [    0.242767] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.242797] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.242828] ntfs: driver 2.1.32 [Flags: R/O].
    [    0.243286] Key type asymmetric registered
    [    0.243286] Asymmetric key parser 'x509' registered
    [    0.243408] bounce: pool size: 64 pages
    [    0.243499] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
    [    0.243499] io scheduler mq-deadline registered
    [    0.243530] io scheduler kyber registered
    [    0.246673] omap_prm: probe of 4ae06500.prm failed with error -22
    [    0.292480] Serial: 8250/16550 driver, 5 ports, IRQ sharing enabled
    [    0.294464] STMicroelectronics ASC driver initialized
    [    0.295074] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4913, Function: panel_simple_init ****************************
    [    0.296447] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4918, Function: panel_simple_init ****************************
    [    0.296447] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4921, Function: panel_simple_init ****************************
    [    0.296478] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4924, Function: panel_simple_init ****************************
    [    0.296478] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4929, Function: panel_simple_init ****************************
    [    0.303436] brd: module loaded
    [    0.308135] loop: module loaded
    [    0.311309] mdio_bus fixed-0: GPIO lookup for consumer reset
    [    0.311340] mdio_bus fixed-0: using lookup tables for GPIO lookup
    [    0.311340] mdio_bus fixed-0: No GPIO consumer reset found
    [    0.312530] CAN device driver interface
    [    0.312896] e1000e: Intel(R) PRO/1000 Network Driver
    [    0.312927] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
    [    0.312957] igb: Intel(R) Gigabit Ethernet Network Driver
    [    0.312957] igb: Copyright (c) 2007-2014 Intel Corporation.
    [    0.313842] pegasus: Pegasus/Pegasus II USB Ethernet driver
    [    0.313873] usbcore: registered new interface driver pegasus
    [    0.313903] usbcore: registered new interface driver asix
    [    0.313934] usbcore: registered new interface driver ax88179_178a
    [    0.313964] usbcore: registered new interface driver cdc_ether
    [    0.313995] usbcore: registered new interface driver smsc75xx
    [    0.314025] usbcore: registered new interface driver smsc95xx
    [    0.314056] usbcore: registered new interface driver net1080
    [    0.314086] usbcore: registered new interface driver cdc_subset
    [    0.314117] usbcore: registered new interface driver zaurus
    [    0.314147] usbcore: registered new interface driver cdc_ncm
    [    0.314880] usbcore: registered new interface driver usb-storage
    [    0.315734] i2c_dev: i2c /dev entries driver
    [    0.318145] sdhci: Secure Digital Host Controller Interface driver
    [    0.318145] sdhci: Copyright(c) Pierre Ossman
    [    0.318328] Synopsys Designware Multimedia Card Interface Driver
    [    0.318542] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.319122] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.319458] usbcore: registered new interface driver usbhid
    [    0.319458] usbhid: USB HID core driver
    [    0.321990] NET: Registered PF_INET6 protocol family
    [    0.322875] Segment Routing with IPv6
    [    0.322937] In-situ OAM (IOAM) with IPv6
    [    0.322998] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    0.323486] NET: Registered PF_PACKET protocol family
    [    0.323486] can: controller area network core
    [    0.323547] NET: Registered PF_CAN protocol family
    [    0.323547] can: raw protocol
    [    0.323547] can: broadcast manager protocol
    [    0.323547] can: netlink gateway - max_hops=1
    [    0.323730] Key type dns_resolver registered
    [    0.323791] ThumbEE CPU extension supported.
    [    0.323822] Registering SWP/SWPB emulation handler
    [    0.324218] omap_voltage_late_init: Voltage driver support not added
    [    0.324218] Power Management for TI OMAP4+ devices.
    [    0.324981] Loading compiled-in X.509 certificates
    [    0.358520] platform 4a000000.interconnect: Fixed dependency cycle(s) with /ocp/interconnect@4a000000/segment@0/target-module@8000/cm_core@0/clock@d00/clock@20
    [    0.364532] pinctrl-single 4a003400.pinmux: 282 pins, size 1128
    [    0.386627] omap-dma-engine 4a056000.dma-controller: OMAP DMA engine driver (LinkedList1/2/3 supported)
    [    0.402618] gpio gpiochip0: (gpio-0-31): not an immutable chip, please consider fixing it!
    [    0.402770] gpio gpiochip0: (gpio-0-31): added GPIO chardev (254:0)
    [    0.402862] gpio gpiochip0: registered GPIOs 0 to 31 on gpio-0-31
    [    0.402893] OMAP GPIO hardware version 0.1
    [    0.405120] ti-sysc: probe of 4ae18000.target-module failed with error -16
    [    0.412170] printk: console [ttyS2] disabled
    [    0.412200] omap8250 48020000.serial: GPIO lookup for consumer rs485-term
    [    0.412200] omap8250 48020000.serial: using device tree for GPIO lookup
    [    0.412231] of_get_named_gpiod_flags: can't parse 'rs485-term-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@20000/serial@0[0]'
    [    0.412292] of_get_named_gpiod_flags: can't parse 'rs485-term-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@20000/serial@0[0]'
    [    0.412322] omap8250 48020000.serial: using lookup tables for GPIO lookup
    [    0.412322] omap8250 48020000.serial: No GPIO consumer rs485-term found
    [    0.412384] 48020000.serial: ttyS2 at MMIO 0x48020000 (irq = 100, base_baud = 3000000) is a 8250
    [    1.728668] printk: console [ttyS2] enabled
    [    1.740753] gpio gpiochip1: (gpio-32-63): not an immutable chip, please consider fixing it!
    [    1.749298] gpio gpiochip1: (gpio-32-63): added GPIO chardev (254:1)
    [    1.749389] gpio gpiochip1: registered GPIOs 32 to 63 on gpio-32-63
    [    1.750579] gpio gpiochip2: (gpio-64-95): not an immutable chip, please consider fixing it!
    [    1.759155] gpio gpiochip2: (gpio-64-95): added GPIO chardev (254:2)
    [    1.759216] gpio gpiochip2: registered GPIOs 64 to 95 on gpio-64-95
    [    1.760467] gpio gpiochip3: (gpio-96-127): not an immutable chip, please consider fixing it!
    [    1.769104] gpio gpiochip3: (gpio-96-127): added GPIO chardev (254:3)
    [    1.769165] gpio gpiochip3: registered GPIOs 96 to 127 on gpio-96-127
    [    1.770324] gpio gpiochip4: (gpio-128-159): not an immutable chip, please consider fixing it!
    [    1.779052] gpio gpiochip4: (gpio-128-159): added GPIO chardev (254:4)
    [    1.779113] gpio gpiochip4: registered GPIOs 128 to 159 on gpio-128-159
    [    1.780273] gpio gpiochip5: (gpio-160-191): not an immutable chip, please consider fixing it!
    [    1.789001] gpio gpiochip5: (gpio-160-191): added GPIO chardev (254:5)
    [    1.789062] gpio gpiochip5: registered GPIOs 160 to 191 on gpio-160-191
    [    1.790496] gpio gpiochip6: (gpio-192-223): not an immutable chip, please consider fixing it!
    [    1.799224] gpio gpiochip6: (gpio-192-223): added GPIO chardev (254:6)
    [    1.799285] gpio gpiochip6: registered GPIOs 192 to 223 on gpio-192-223
    [    1.800567] gpio gpiochip7: (gpio-224-255): not an immutable chip, please consider fixing it!
    [    1.809265] gpio gpiochip7: (gpio-224-255): added GPIO chardev (254:7)
    [    1.809326] gpio gpiochip7: registered GPIOs 224 to 255 on gpio-224-255
    [    1.811218] i2c i2c-2: GPIO lookup for consumer scl
    [    1.811248] i2c i2c-2: using device tree for GPIO lookup
    [    1.811248] of_get_named_gpiod_flags: can't parse 'scl-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0[0]'
    [    1.811309] of_get_named_gpiod_flags: can't parse 'scl-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0[0]'
    [    1.811340] i2c i2c-2: using lookup tables for GPIO lookup
    [    1.811340] i2c i2c-2: No GPIO consumer scl found
    [    1.811370] i2c i2c-2: GPIO lookup for consumer sda
    [    1.811370] i2c i2c-2: using device tree for GPIO lookup
    [    1.811370] of_get_named_gpiod_flags: can't parse 'sda-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0[0]'
    [    1.811401] of_get_named_gpiod_flags: can't parse 'sda-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0[0]'
    [    1.811462] i2c i2c-2: using lookup tables for GPIO lookup
    [    1.811462] i2c i2c-2: No GPIO consumer sda found
    [    1.811920] i2c 2-003c: Fixed dependency cycle(s) with /ocp/interconnect@48800000/target-module@190000/vip@0
    [    1.822052] omap_i2c 48060000.i2c: bus 2 rev0.12 at 400 kHz
    [    1.831420] omap8250 4806a000.serial: GPIO lookup for consumer rs485-term
    [    1.831451] omap8250 4806a000.serial: using device tree for GPIO lookup
    [    1.831451] of_get_named_gpiod_flags: can't parse 'rs485-term-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@6a000/serial@0[0]'
    [    1.831512] of_get_named_gpiod_flags: can't parse 'rs485-term-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@6a000/serial@0[0]'
    [    1.831542] omap8250 4806a000.serial: using lookup tables for GPIO lookup
    [    1.831542] omap8250 4806a000.serial: No GPIO consumer rs485-term found
    [    1.831573] 4806a000.serial: ttyS0 at MMIO 0x4806a000 (irq = 114, base_baud = 3000000) is a 8250
    [    1.843994] i2c i2c-0: GPIO lookup for consumer scl
    [    1.843994] i2c i2c-0: using device tree for GPIO lookup
    [    1.844024] of_get_named_gpiod_flags: can't parse 'scl-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0[0]'
    [    1.844055] of_get_named_gpiod_flags: can't parse 'scl-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0[0]'
    [    1.844085] i2c i2c-0: using lookup tables for GPIO lookup
    [    1.844116] i2c i2c-0: No GPIO consumer scl found
    [    1.844116] i2c i2c-0: GPIO lookup for consumer sda
    [    1.844116] i2c i2c-0: using device tree for GPIO lookup
    [    1.844146] of_get_named_gpiod_flags: can't parse 'sda-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0[0]'
    [    1.844177] of_get_named_gpiod_flags: can't parse 'sda-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0[0]'
    [    1.844207] i2c i2c-0: using lookup tables for GPIO lookup
    [    1.844207] i2c i2c-0: No GPIO consumer sda found
    [    1.844665] palmas 0-0058: Irq flag is 0x00000008
    [    1.877044] palmas 0-0058: Muxing GPIO 2b, PWM 0, LED 0
    [    1.908081] gpiochip_find_base: found new base at 504
    [    1.908233] gpio gpiochip8: (48070000.i2c:tps659038@58:tps659038_gpio): added GPIO chardev (254:8)
    [    1.908325] gpio gpiochip8: registered GPIOs 504 to 511 on 48070000.i2c:tps659038@58:tps659038_gpio
    [    1.909545] at24 0-0050: supply vcc not found, using dummy regulator
    [    1.916290] at24 0-0050: GPIO lookup for consumer wp
    [    1.916290] at24 0-0050: using device tree for GPIO lookup
    [    1.916320] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/eeprom@50[0]'
    [    1.916351] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/eeprom@50[0]'
    [    1.916412] at24 0-0050: using lookup tables for GPIO lookup
    [    1.916412] at24 0-0050: No GPIO consumer wp found
    [    1.916503] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
    [    1.923492] omap_i2c 48070000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.931365] i2c i2c-1: GPIO lookup for consumer scl
    [    1.931365] i2c i2c-1: using device tree for GPIO lookup
    [    1.931396] of_get_named_gpiod_flags: can't parse 'scl-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@72000/i2c@0[0]'
    [    1.931427] of_get_named_gpiod_flags: can't parse 'scl-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@72000/i2c@0[0]'
    [    1.931457] i2c i2c-1: using lookup tables for GPIO lookup
    [    1.931457] i2c i2c-1: No GPIO consumer scl found
    [    1.931488] i2c i2c-1: GPIO lookup for consumer sda
    [    1.931488] i2c i2c-1: using device tree for GPIO lookup
    [    1.931518] of_get_named_gpiod_flags: can't parse 'sda-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@72000/i2c@0[0]'
    [    1.931549] of_get_named_gpiod_flags: can't parse 'sda-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@72000/i2c@0[0]'
    [    1.931579] i2c i2c-1: using lookup tables for GPIO lookup
    [    1.931579] i2c i2c-1: No GPIO consumer sda found
    [    1.932098] omap_i2c 48072000.i2c: bus 1 rev0.12 at 400 kHz
    [    1.940521] i2c i2c-4: GPIO lookup for consumer scl
    [    1.940521] i2c i2c-4: using device tree for GPIO lookup
    [    1.940551] of_get_named_gpiod_flags: can't parse 'scl-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0[0]'
    [    1.940582] of_get_named_gpiod_flags: can't parse 'scl-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0[0]'
    [    1.940612] i2c i2c-4: using lookup tables for GPIO lookup
    [    1.940612] i2c i2c-4: No GPIO consumer scl found
    [    1.940643] i2c i2c-4: GPIO lookup for consumer sda
    [    1.940643] i2c i2c-4: using device tree for GPIO lookup
    [    1.940673] of_get_named_gpiod_flags: can't parse 'sda-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0[0]'
    [    1.940704] of_get_named_gpiod_flags: can't parse 'sda-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0[0]'
    [    1.940734] i2c i2c-4: using lookup tables for GPIO lookup
    [    1.940734] i2c i2c-4: No GPIO consumer sda found
    [    1.941009] omap_i2c 4807c000.i2c: bus 4 rev0.12 at 400 kHz
    [    1.941345] edt_ft5x06 4-0038: supply vcc not found, using dummy regulator
    [    1.951141] omap_rng 48090000.rng: Random Number Generator ver. 20
    [    1.953674] edt_ft5x06 4-0038: supply iovcc not found, using dummy regulator
    [    1.959869] random: crng init done
    [    1.967102] edt_ft5x06 4-0038: GPIO lookup for consumer reset
    [    1.970306] edt_ft5x06 4-0038: using device tree for GPIO lookup
    [    1.970306] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0/edt-ft5x06@38[0]'
    [    1.970367] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0/edt-ft5x06@38[0]'
    [    1.970428] edt_ft5x06 4-0038: using lookup tables for GPIO lookup
    [    1.970428] edt_ft5x06 4-0038: No GPIO consumer reset found
    [    1.970428] edt_ft5x06 4-0038: GPIO lookup for consumer wake
    [    1.970428] edt_ft5x06 4-0038: using device tree for GPIO lookup
    [    1.970458] of_get_named_gpiod_flags: can't parse 'wake-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0/edt-ft5x06@38[0]'
    [    1.970520] of_get_named_gpiod_flags: can't parse 'wake-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@7c000/i2c@0/edt-ft5x06@38[0]'
    [    1.970581] edt_ft5x06 4-0038: using lookup tables for GPIO lookup
    [    1.970581] edt_ft5x06 4-0038: No GPIO consumer wake found
    [    1.994781] mdio_bus 48485000.mdio: GPIO lookup for consumer reset
    [    1.994781] mdio_bus 48485000.mdio: using device tree for GPIO lookup
    [    1.994812] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000[0]'
    [    1.994842] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000[0]'
    [    1.994903] mdio_bus 48485000.mdio: using lookup tables for GPIO lookup
    [    1.994903] mdio_bus 48485000.mdio: No GPIO consumer reset found
    [    2.005828] input: 4-0038 generic ft5x06 (8d) as /devices/platform/ocp/48000000.interconnect/48000000.interconnect:segment@0/4807c000.target-module/4807c000.i2c/i2c-4/4-0038/input/input0
    [    2.063720] davinci_mdio 48485000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    2.072235] mdio_bus 48485000.mdio:00: GPIO lookup for consumer reset
    [    2.072265] mdio_bus 48485000.mdio:00: using device tree for GPIO lookup
    [    2.072265] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000/ethernet-phy@0[0]'
    [    2.072326] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000/ethernet-phy@0[0]'
    [    2.072387] mdio_bus 48485000.mdio:00: using lookup tables for GPIO lookup
    [    2.072387] mdio_bus 48485000.mdio:00: No GPIO consumer reset found
    [    2.073272] mdio_bus 48485000.mdio:01: GPIO lookup for consumer reset
    [    2.073272] mdio_bus 48485000.mdio:01: using device tree for GPIO lookup
    [    2.073303] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000/ethernet-phy@1[0]'
    [    2.073333] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/interconnect@48400000/segment@0/target-module@84000/switch@0/mdio@1000/ethernet-phy@1[0]'
    [    2.073394] mdio_bus 48485000.mdio:01: using lookup tables for GPIO lookup
    [    2.073394] mdio_bus 48485000.mdio:01: No GPIO consumer reset found
    [    2.073547] davinci_mdio 48485000.mdio: phy[0]: device 48485000.mdio:00, driver unknown
    [    2.081634] davinci_mdio 48485000.mdio: phy[1]: device 48485000.mdio:01, driver unknown
    [    2.090301] cpsw-switch 48484000.switch: initialized cpsw ale version 1.4
    [    2.097167] cpsw-switch 48484000.switch: ALE Table size 1024
    [    2.102905] cpsw-switch 48484000.switch: cpts: overflow check period 500 (jiffies)
    [    2.110534] cpsw-switch 48484000.switch: CPTS: ref_clk_freq:266000000 calc_mult:4036623398 calc_shift:30 error:-1 nsec/sec
    [    2.121673] cpsw-switch 48484000.switch: Detected MACID = d0:03:eb:6c:3f:16
    [    2.128723] cpsw-switch 48484000.switch: Detected MACID = d0:03:eb:6c:3f:17
    [    2.137481] cpsw-switch 48484000.switch: initialized (regs 0x0000000048484000, pool size 256) hw_ver:0019010F 1.15 (0)
    [    2.159149] ti-sysc: probe of 4882c000.target-module failed with error -16
    [    2.167449] ti-sysc: probe of 4882e000.target-module failed with error -16
    [    2.178375] omap-mailbox 48840000.mailbox: omap mailbox rev 0x400
    [    2.185607] omap-mailbox 48842000.mailbox: omap mailbox rev 0x400
    [    2.200195] i2c 2-003c: Fixed dependency cycle(s) with /ocp/interconnect@48800000/target-module@190000/vip@0
    [    2.210144] platform 48990000.vip: Fixed dependency cycle(s) with /ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/ov5640@3c
    [    2.226531] dra7-pcie 51000000.pcie: GPIO lookup for consumer (null)
    [    2.226531] dra7-pcie 51000000.pcie: using device tree for GPIO lookup
    [    2.226562] of_get_named_gpiod_flags: parsed 'gpios' property of node '/ocp/target-module@51000000/pcie@51000000[0]' - status (0)
    [    2.226623] gpio gpiochip3: Persistence not supported for GPIO 8
    [    2.226898] dra7-pcie 51000000.pcie: host bridge /ocp/target-module@51000000/pcie@51000000 ranges:
    [    2.235992] dra7-pcie 51000000.pcie:       IO 0x0020003000..0x0020012fff -> 0x0000000000
    [    2.244140] dra7-pcie 51000000.pcie:      MEM 0x0020013000..0x002fffffff -> 0x0020013000
    [    2.252502] dra7-pcie 51000000.pcie: iATU unroll: disabled
    [    2.258056] dra7-pcie 51000000.pcie: iATU regions: 16 ob, 4 ib, align 4K, limit 4G
    [    2.365814] dra7-pcie 51000000.pcie: PCIe Gen.2 x1 link up
    [    2.371429] dra7-pcie 51000000.pcie: PCI host bridge to bus 0000:00
    [    2.377777] pci_bus 0000:00: root bus resource [bus 00-ff]
    [    2.383300] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
    [    2.389526] pci_bus 0000:00: root bus resource [mem 0x20013000-0x2fffffff]
    [    2.396453] pci 0000:00:00.0: [104c:8888] type 01 class 0x060400
    [    2.402526] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
    [    2.408843] pci 0000:00:00.0: reg 0x14: [mem 0x00000000-0x0000ffff]
    [    2.415191] pci 0000:00:00.0: supports D1
    [    2.419250] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    2.432159] PCI: bus0: Fast back to back transfers disabled
    [    2.437957] pci 0000:01:00.0: [8086:2526] type 00 class 0x028000
    [    2.444091] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00003fff 64bit]
    [    2.451263] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
    [    2.643859] PCI: bus1: Fast back to back transfers disabled
    [    2.649475] pci 0000:00:00.0: BAR 0: assigned [mem 0x20100000-0x201fffff]
    [    2.656341] pci 0000:00:00.0: BAR 8: assigned [mem 0x20200000-0x202fffff]
    [    2.663146] pci 0000:00:00.0: BAR 1: assigned [mem 0x20020000-0x2002ffff]
    [    2.670013] pci 0000:01:00.0: BAR 0: assigned [mem 0x20200000-0x20203fff 64bit]
    [    2.677398] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
    [    2.682647] pci 0000:00:00.0:   bridge window [mem 0x20200000-0x202fffff]
    [    2.689849] pcieport 0000:00:00.0: PME: Signaling with IRQ 137
    [    2.701782] edma 43300000.dma: memcpy is disabled
    [    2.709838] edma 43300000.dma: TI EDMA DMA engine driver
    [    2.721527] omap-iommu 40d01000.mmu: 40d01000.mmu registered
    [    2.729309] omap-iommu 40d02000.mmu: 40d02000.mmu registered
    [    2.735992] platform 40800000.dsp: Adding to iommu group 0
    [    2.742980] platform 58820000.ipu: Adding to iommu group 1
    [    2.748657] omap-iommu 58882000.mmu: 58882000.mmu registered
    [    2.756530] platform 55020000.ipu: Adding to iommu group 2
    [    2.762084] omap-iommu 55082000.mmu: 55082000.mmu registered
    [    2.774200] platform display: Fixed dependency cycle(s) with /ocp/target-module@58000000/dss@0
    [    2.782958] platform 58000000.dss: Fixed dependency cycle(s) with /display
    [    2.798767] omap-iommu 41501000.mmu: 41501000.mmu registered
    [    2.806030] omap-iommu 41502000.mmu: 41502000.mmu registered
    [    2.812866] platform 41000000.dsp: Adding to iommu group 3
    [    2.820892] ti-sysc 4ae06000.target-module: Failed to create device link (0x180) with ocp
    [    2.830871] gpio-clk clk_ov5640: GPIO lookup for consumer enable
    [    2.830871] gpio-clk clk_ov5640: using device tree for GPIO lookup
    [    2.830932] of_get_named_gpiod_flags: parsed 'enable-gpios' property of node '/clk_ov5640[0]' - status (0)
    [    2.830932] gpio gpiochip6: Persistence not supported for GPIO 18
    [    2.834808] reg-fixed-voltage fixedregulator-vdd_3v3: GPIO lookup for consumer (null)
    [    2.834838] reg-fixed-voltage fixedregulator-vdd_3v3: using device tree for GPIO lookup
    [    2.834869] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/fixedregulator-vdd_3v3[0]'
    [    2.834899] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-vdd_3v3[0]'
    [    2.834930] reg-fixed-voltage fixedregulator-vdd_3v3: using lookup tables for GPIO lookup
    [    2.834930] reg-fixed-voltage fixedregulator-vdd_3v3: No GPIO consumer (null) found
    [    2.835357] reg-fixed-voltage fixedregulator-aic_dvdd: GPIO lookup for consumer (null)
    [    2.835357] reg-fixed-voltage fixedregulator-aic_dvdd: using device tree for GPIO lookup
    [    2.835388] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/fixedregulator-aic_dvdd[0]'
    [    2.835388] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-aic_dvdd[0]'
    [    2.835418] reg-fixed-voltage fixedregulator-aic_dvdd: using lookup tables for GPIO lookup
    [    2.835418] reg-fixed-voltage fixedregulator-aic_dvdd: No GPIO consumer (null) found
    [    2.835662] reg-fixed-voltage fixedregulator-vtt: GPIO lookup for consumer (null)
    [    2.835662] reg-fixed-voltage fixedregulator-vtt: using device tree for GPIO lookup
    [    2.835662] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/fixedregulator-vtt[0]'
    [    2.835693] of_get_named_gpiod_flags: parsed 'gpio' property of node '/fixedregulator-vtt[0]' - status (0)
    [    2.835723] gpio gpiochip1: Persistence not supported for GPIO 11
    [    2.865722] rtc-ds1307 2-006f: registered as rtc0
    [    2.870758] rtc-ds1307 2-006f: setting system clock to 2025-09-24T03:37:16 UTC (1758685036)
    [    2.879180] rtc-ds1307 2-006f: GPIO lookup for consumer wp
    [    2.879180] rtc-ds1307 2-006f: using device tree for GPIO lookup
    [    2.879211] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/rtc@6f[0]'
    [    2.879241] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/rtc@6f[0]'
    [    2.879272] rtc-ds1307 2-006f: using lookup tables for GPIO lookup
    [    2.879302] rtc-ds1307 2-006f: No GPIO consumer wp found
    [    2.882110] palmas-rtc 48070000.i2c:tps659038@58:tps659038_rtc: registered as rtc1
    [    2.891601] sdhci-omap 4809c000.mmc: GPIO lookup for consumer cd
    [    2.891601] sdhci-omap 4809c000.mmc: using device tree for GPIO lookup
    [    2.891632] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@9c000/mmc@0[0]' - status (0)
    [    2.891693] gpio gpiochip7: Persistence not supported for GPIO 27
    [    2.891723] omap_gpio 4805d000.gpio: Could not set line 27 debounce to 200000 microseconds (-22)
    [    2.892761] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 1147, Function: gpio_keys_init ****************************
    [    2.901153] sdhci-omap 480b4000.mmc: GPIO lookup for consumer wp
    [    2.913574] sdhci-omap 4809c000.mmc: Got CD GPIO
    [    2.913604] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 870, Function: gpio_keys_probe ****************************
    [    2.918243] sdhci-omap 480b4000.mmc: using device tree for GPIO lookup
    [    2.931182] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 788, Function: gpio_keys_get_devtree_pdata ****************************
    [    2.931213] sdhci-omap 4809c000.mmc: GPIO lookup for consumer wp
    [    2.945190] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@b4000/mmc@0[0]'
    [    2.945220] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 523, Function: gpio_keys_setup_key ****************************
    [    2.945220] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio-keys/button-user1[0]' - status (0)
    [    2.958526] gpio gpiochip0: Persistence not supported for GPIO 14
    [    2.958557] sdhci-omap 4809c000.mmc: using device tree for GPIO lookup
    [    2.958587] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@9c000/mmc@0[0]'
    [    2.958618] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 523, Function: gpio_keys_setup_key ****************************
    [    2.971923] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio-keys/button-user2[0]' - status (0)
    [    2.971954] gpio gpiochip3: Persistence not supported for GPIO 6
    [    2.971984] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@b4000/mmc@0[0]'
    [    2.972015] sdhci-omap 480b4000.mmc: using lookup tables for GPIO lookup
    [    2.972045] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 523, Function: gpio_keys_setup_key ****************************
    [    2.972045] sdhci-omap 480b4000.mmc: No GPIO consumer wp found
    [    2.972290] sdhci-omap 480b4000.mmc: supply pbias not found, using dummy regulator
    [    2.985382] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio-keys/button-user3[0]' - status (0)
    [    2.992950] gpio gpiochip6: Persistence not supported for GPIO 1
    [    2.992980] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@9c000/mmc@0[0]'
    [    2.993011] sdhci-omap 4809c000.mmc: using lookup tables for GPIO lookup
    [    2.993011] sdhci-omap 4809c000.mmc: No GPIO consumer wp found
    [    2.993133] input: gpio-keys as /devices/platform/gpio-keys/input/input1
    [    2.999908] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 751, Function: gpio_keys_open ****************************
    [    3.012786] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 737, Function: gpio_keys_report_state ****************************
    [    3.012786] sdhci-omap 4809c000.mmc: no pinctrl state for ddr_3_3v mode
    [    3.026367] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 376, Function: gpio_keys_gpio_report_event ****************************
    [    3.047058] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 376, Function: gpio_keys_gpio_report_event ****************************
    [    3.061096] VM********************* File: drivers/input/keyboard/gpio_keys.c, Line: 376, Function: gpio_keys_gpio_report_event ****************************
    [    3.076690] clk: Disabling unused clocks
    [    3.085723] l3init-clkctrl:0030:0: failed to disable
    [    3.103729] mmc1: SDHCI controller on 480b4000.mmc [480b4000.mmc] using ADMA
    [    3.104003] mmc0: SDHCI controller on 4809c000.mmc [4809c000.mmc] using ADMA
    [    3.118316] Waiting for root device PARTUUID=5c496148-02...
    [    3.152252] mmc0: new high speed SDHC card at address 5048
    [    3.158264] mmcblk0: mmc0:5048 SD32G 29.7 GiB 
    [    3.165527]  mmcblk0: p1 p2
    [    3.213104] EXT4-fs (mmcblk0p2): recovery complete
    [    3.217987] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: disabled.
    [    3.226989] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    3.240417] devtmpfs: mounted
    [    3.244476] Freeing unused kernel image (initmem) memory: 2048K
    [    3.250579] Run /sbin/init as init process
    [    3.254730]   with arguments:
    [    3.254730]     /sbin/init
    [    3.254730]   with environment:
    [    3.254730]     HOME=/
    [    3.254730]     TERM=linux
    [    3.330505] mmc1: new DDR MMC card at address 0001
    [    3.335906] mmcblk1: mmc1:0001 032GB4 29.1 GiB 
    [    3.342285]  mmcblk1: p1 p2
    [    3.345550] mmcblk1boot0: mmc1:0001 032GB4 8.00 MiB 
    [    3.351501] mmcblk1boot1: mmc1:0001 032GB4 8.00 MiB 
    [    3.357574] mmcblk1rpmb: mmc1:0001 032GB4 4.00 MiB, chardev (242:0)
    [    3.646820] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    3.678710] systemd[1]: Detected architecture arm.
    [    3.715270] systemd[1]: Hostname set to <am57xx-evm>.
    [    3.898803] systemd-sysv-generator[121]: SysV service '/etc/init.d/gdbserverproxy' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    3.923645] systemd-sysv-generator[121]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.288299] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    4.353942] systemd[1]: /etc/systemd/system/sys-clock-drift.service:10: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    4.376312] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    4.457153] systemd[1]: Queued start job for default target Graphical Interface.
    [    4.466583] systemd[1]: Created slice Slice /system/getty.
    [    4.504760] systemd[1]: Created slice Slice /system/modprobe.
    [    4.545379] systemd[1]: Created slice Slice /system/serial-getty.
    [    4.584197] systemd[1]: Created slice User and Session Slice.
    [    4.624511] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [    4.664001] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    4.704803] systemd[1]: Reached target Path Units.
    [    4.743896] systemd[1]: Reached target Remote File Systems.
    [    4.784179] systemd[1]: Reached target Slice Units.
    [    4.823913] systemd[1]: Reached target Swaps.
    [    4.866394] systemd[1]: Listening on RPCbind Server Activation Socket.
    [    4.904052] systemd[1]: Reached target RPC Port Mapper.
    [    4.952423] systemd[1]: Listening on Process Core Dump Socket.
    [    4.994079] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [    5.083160] systemd[1]: Journal Audit Socket was skipped because of a failed condition check (ConditionSecurity=audit).
    [    5.094635] systemd[1]: Listening on Journal Socket (/dev/log).
    [    5.134307] systemd[1]: Listening on Journal Socket.
    [    5.164337] systemd[1]: Listening on Network Service Netlink Socket.
    [    5.204772] systemd[1]: Listening on udev Control Socket.
    [    5.244171] systemd[1]: Listening on udev Kernel Socket.
    [    5.284240] systemd[1]: Listening on User Database Manager Socket.
    [    5.324645] systemd[1]: Huge Pages File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/mm/hugepages).
    [    5.414154] systemd[1]: Mounting POSIX Message Queue File System...
    [    5.457122] systemd[1]: Mounting Kernel Debug File System...
    [    5.506469] systemd[1]: Mounting Kernel Trace File System...
    [    5.544799] systemd[1]: Mounting Temporary Directory /tmp...
    [    5.577819] systemd[1]: Starting Create List of Static Device Nodes...
    [    5.617309] systemd[1]: Starting Load Kernel Module configfs...
    [    5.694305] systemd[1]: Starting Load Kernel Module drm...
    [    5.726654] systemd[1]: Starting Load Kernel Module fuse...
    [    5.768585] systemd[1]: Starting Start psplash boot splash screen...
    [    5.807617] systemd[1]: Starting RPC Bind...
    [    5.854217] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    5.867584] systemd[1]: systemd-journald.service: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    5.880554] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
    [    5.944366] systemd[1]: Starting Journal Service...
    [    5.988067] systemd[1]: Starting Load Kernel Modules...
    [    6.026550] systemd[1]: Starting Generate network units from Kernel command line...
    [    6.066070] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    6.095581] EXT4-fs (mmcblk0p2): re-mounted. Quota mode: disabled.
    [    6.106292] systemd[1]: Starting Coldplug All udev Devices...
    [    6.150146] systemd[1]: Started RPC Bind.
    [    6.194213] systemd[1]: Started Journal Service.
    [    6.779113] systemd-journald[134]: Received client request to flush runtime journal.
    [    7.686431] omap-sham 4b101000.sham: hw accel on OMAP rev 4.3
    [    7.687225] omap-rproc 58820000.ipu: assigned reserved memory node ipu1-memory@9d000000
    [    7.715545] omap-sham 4b101000.sham: will run requests pump with realtime priority
    [    7.716705] remoteproc remoteproc0: 58820000.ipu is available
    [    7.736022] omap-rproc 55020000.ipu: assigned reserved memory node ipu2-memory@95800000
    [    7.761566] remoteproc remoteproc1: 55020000.ipu is available
    [    7.784973] omap-rproc 40800000.dsp: assigned reserved memory node dsp1-memory@99000000
    [    7.811645] omap-sham 42701000.sham: hw accel on OMAP rev 4.3
    [    7.868133] omap-sham 42701000.sham: will run requests pump with realtime priority
    [    7.895385] remoteproc remoteproc2: 40800000.dsp is available
    [    7.902893] omap-rproc 41000000.dsp: assigned reserved memory node dsp2-memory@9f000000
    [    7.918121] remoteproc remoteproc3: 41000000.dsp is available
    [    8.038055] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer id
    [    8.038055] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
    [    8.038085] of_get_named_gpiod_flags: can't parse 'id-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tps659038@58/tps659038_usb[0]'
    [    8.038116] of_get_named_gpiod_flags: can't parse 'id-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tps659038@58/tps659038_usb[0]'
    [    8.038146] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using lookup tables for GPIO lookup
    [    8.038146] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: No GPIO consumer id found
    [    8.038177] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer vbus
    [    8.038177] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
    [    8.038177] of_get_named_gpiod_flags: can't parse 'vbus-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tps659038@58/tps659038_usb[0]'
    [    8.038238] of_get_named_gpiod_flags: parsed 'vbus-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tps659038@58/tps659038_usb[0]' - status (0)
    [    8.038299] gpio gpiochip5: Persistence not supported for GPIO 21
    [    8.261138] remoteproc remoteproc0: powering up 58820000.ipu
    [    8.268524] remoteproc remoteproc0: Booting fw image dra7-ipu1-fw.xem4, size 4855436
    [    8.284484] remoteproc remoteproc1: powering up 55020000.ipu
    [    8.290191] remoteproc remoteproc1: Booting fw image dra7-ipu2-fw.xem4, size 3747228
    [    8.293792] omap-iommu 58882000.mmu: no fck found
    [    8.302703] omap-iommu 58882000.mmu: pwrdm_constraint failed to be set, status = -19
    [    8.307281] omap-iommu 55082000.mmu: 55082000.mmu: version 2.1
    [    8.310516] omap-iommu 58882000.mmu: 58882000.mmu: version 2.1
    [    8.324951] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node ipu1-memory@9d000000
    [    8.346160] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    8.363800] rproc-virtio rproc-virtio.2.auto: registered virtio0 (type 7)
    [    8.370635] remoteproc remoteproc0: remote processor 58820000.ipu is now up
    [    8.418060] virtio_rpmsg_bus virtio0: creating channel rpmsg-client-sample addr 0x32
    [    8.434020] virtio_rpmsg_bus virtio0: creating channel rpmsg-client-sample addr 0x33
    [    8.441955] virtio_rpmsg_bus virtio0: creating channel rpmsg-omx addr 0x3c
    [    8.464538] pwm-backlight backlight: GPIO lookup for consumer enable
    [    8.464538] pwm-backlight backlight: using device tree for GPIO lookup
    [    8.464538] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/backlight[0]'
    [    8.464569] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/backlight[0]'
    [    8.464599] pwm-backlight backlight: using lookup tables for GPIO lookup
    [    8.464599] pwm-backlight backlight: No GPIO consumer enable found
    [    8.464660] pwm-backlight backlight: supply power not found, using dummy regulator
    [    8.472473] pwm-backlight backlight: invalid default brightness level: 8, using 7
    [    8.482391] videodev: Linux video capture interface: v2.00
    [    8.506835] virtio_rpmsg_bus virtio0: creating channel rpmsg-rpc addr 0x65
    [    8.582458] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 4571, Function: panel_simple_platform_probe ****************************
    [    8.603851] omap_rtc 48838000.rtc: registered as rtc2
    [    8.608947] omap_rtc 48838000.rtc: GPIO lookup for consumer wp
    [    8.608947] omap_rtc 48838000.rtc: using device tree for GPIO lookup
    [    8.608947] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/interconnect@48800000/segment@0/target-module@38000/rtc@0[0]'
    [    8.608978] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/interconnect@48800000/segment@0/target-module@38000/rtc@0[0]'
    [    8.609008] omap_rtc 48838000.rtc: using lookup tables for GPIO lookup
    [    8.609039] omap_rtc 48838000.rtc: No GPIO consumer wp found
    [    8.650268] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 591, Function: panel_simple_probe ****************************
    [    8.678466] panel-simple display: supply power not found, using dummy regulator
    [    8.678833] omap-des 480a5000.des: OMAP DES hw accel rev: 2.2
    [    8.686370] panel-simple display: GPIO lookup for consumer enable
    [    8.691619] panel-simple display: using device tree for GPIO lookup
    [    8.691650] of_get_named_gpiod_flags: parsed 'enable-gpios' property of node '/display[0]' - status (0)
    [    8.691680] gpio gpiochip6: Persistence not supported for GPIO 12
    [    8.691711] panel-simple display: Specify missing connector_type
    [    8.723602] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [    8.732574] omap-des 480a5000.des: will run requests pump with realtime priority
    [    8.783081] rproc-virtio rproc-virtio.1.auto: assigned reserved memory node ipu2-memory@95800000
    [    8.839416] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    8.845703] remoteproc remoteproc2: powering up 40800000.dsp
    [    8.847503] rproc-virtio rproc-virtio.1.auto: registered virtio1 (type 7)
    [    8.853851] remoteproc remoteproc2: Booting fw image dra7-dsp1-fw.xe66, size 5535952
    [    8.863616] remoteproc remoteproc1: remote processor 55020000.ipu is now up
    [    8.866973] remoteproc remoteproc3: powering up 41000000.dsp
    [    8.880584] virtio_rpmsg_bus virtio1: creating channel rpmsg-rpc addr 0x65
    [    8.883483] omap-iommu 40d01000.mmu: 40d01000.mmu: version 3.0
    [    8.890777] virtio_rpmsg_bus virtio1: creating channel rpmsg-rpc addr 0x66
    [    8.893463] omap-iommu 40d02000.mmu: 40d02000.mmu: version 3.0
    [    8.915405] ahci-dwc 4a140000.sata: supply ahci not found, using dummy regulator
    [    8.922119] remoteproc remoteproc3: Booting fw image dra7-dsp2-fw.xe66, size 5536080
    [    8.928222] ahci-dwc 4a140000.sata: supply phy not found, using dummy regulator
    [    8.931060] omap-iommu 41501000.mmu: 41501000.mmu: version 3.0
    [    8.938598] ahci-dwc 4a140000.sata: supply target not found, using dummy regulator
    [    8.943939] omap-iommu 41502000.mmu: 41502000.mmu: version 3.0
    [    8.952056] ahci-dwc 4a140000.sata: forcing port_map 0x0 -> 0x1
    [    8.963684] ahci-dwc 4a140000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
    [    8.972778] ahci-dwc 4a140000.sata: flags: 64bit ncq sntf pm led clo only pmp pio slum part ccc apst 
    [    8.988708] scsi host0: ahci-dwc
    [    8.992584] ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a1410ff] port 0x100 irq 163
    [    9.005798] omap-aes 4b500000.aes: OMAP AES hw accel rev: 3.3
    [    9.018615] rproc-virtio rproc-virtio.3.auto: assigned reserved memory node dsp1-memory@99000000
    [    9.030853] pinctrl-single 4a003400.pinmux: mux offset out of range: 0xffffe244 (0x468)
    [    9.039215] pinctrl-single 4a003400.pinmux: could not add functions for camera-gpio 4294959684x
    [    9.046478] omap-aes 4b500000.aes: will run requests pump with realtime priority
    [    9.048522] ov5640 2-003c: GPIO lookup for consumer powerdown
    [    9.055480] ov5640 2-003c: using device tree for GPIO lookup
    [    9.055541] of_get_named_gpiod_flags: parsed 'powerdown-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/ov5640@3c[0]' - status (0)
    [    9.055603] gpio gpiochip6: Persistence not supported for GPIO 17
    [    9.055633] ov5640 2-003c: GPIO lookup for consumer reset
    [    9.055633] ov5640 2-003c: using device tree for GPIO lookup
    [    9.055633] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/ov5640@3c[0]'
    [    9.057678] omap-aes 4b700000.aes: OMAP AES hw accel rev: 3.3
    [    9.057708] virtio_rpmsg_bus virtio2: rpmsg host is online
    [    9.057739] rproc-virtio rproc-virtio.3.auto: registered virtio2 (type 7)
    [    9.068481] virtio_rpmsg_bus virtio2: creating channel rpmsg-client-sample addr 0x32
    [    9.083709] remoteproc remoteproc2: remote processor 40800000.dsp is now up
    [    9.088439] virtio_rpmsg_bus virtio2: creating channel rpmsg-client-sample addr 0x33
    [    9.091644] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/interconnect@48000000/segment@0/target-module@60000/i2c@0/ov5640@3c[0]'
    [    9.098602] ov5640 2-003c: using lookup tables for GPIO lookup
    [    9.098632] ov5640 2-003c: No GPIO consumer reset found
    [    9.098693] ov5640 2-003c: supply DOVDD not found, using dummy regulator
    [    9.100708] omap-aes 4b700000.aes: will run requests pump with realtime priority
    [    9.108520] ov5640 2-003c: supply AVDD not found, using dummy regulator
    [    9.115295] virtio_rpmsg_bus virtio2: creating channel rpmsg-omx addr 0x3c
    [    9.121826] ov5640 2-003c: supply DVDD not found, using dummy regulator
    [    9.128021] virtio_rpmsg_bus virtio2: creating channel rpmsg-rpc addr 0x65
    [    9.146362] rproc-virtio rproc-virtio.4.auto: assigned reserved memory node dsp2-memory@9f000000
    [    9.157257] virtio_rpmsg_bus virtio3: rpmsg host is online
    [    9.158569] virtio_rpmsg_bus virtio3: creating channel rpmsg-client-sample addr 0x32
    [    9.163024] rproc-virtio rproc-virtio.4.auto: registered virtio3 (type 7)
    [    9.172637] virtio_rpmsg_bus virtio3: creating channel rpmsg-client-sample addr 0x33
    [    9.177520] remoteproc remoteproc3: remote processor 41000000.dsp is now up
    [    9.185760] virtio_rpmsg_bus virtio3: creating channel rpmsg-omx addr 0x3c
    [    9.192321] i2c reg: 0x3008, value: 0x42
    [    9.200408] i2c reg: 0x3103, value: 0x11
    [    9.204254] virtio_rpmsg_bus virtio3: creating channel rpmsg-rpc addr 0x65
    [    9.218627] i2c reg: 0x3103, value: 0x3
    [    9.223358] i2c reg: 0x3630, value: 0x36
    [    9.228485] i2c reg: 0x3631, value: 0xe
    [    9.235809] i2c reg: 0x3632, value: 0xe2
    [    9.239837] i2c reg: 0x3633, value: 0x12
    [    9.243988] i2c reg: 0x3621, value: 0xe0
    [    9.248168] i2c reg: 0x3704, value: 0xa0
    [    9.254882] i2c reg: 0x3703, value: 0x5a
    [    9.259094] i2c reg: 0x3715, value: 0x78
    [    9.266357] i2c reg: 0x3717, value: 0x1
    [    9.270507] i2c reg: 0x370b, value: 0x60
    [    9.277282] i2c reg: 0x3705, value: 0x1a
    [    9.304168] i2c reg: 0x3905, value: 0x2
    [    9.324310] ata1: SATA link down (SStatus 0 SControl 300)
    [    9.337188] i2c reg: 0x3906, value: 0x10
    [    9.339385] i2c reg: 0x3901, value: 0xa
    [    9.361877] i2c reg: 0x3731, value: 0x12
    [    9.402099] vpe 489d0000.vpe: loading firmware vpdma-1b8.bin
    [    9.413818] vip 48990000.vip: loading firmware vpdma-1b8.bin
    [    9.424530] DSS: OMAP DSS rev 6.1
    [    9.428588] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tlv320aic3104@18[0]'
    [    9.428649] of_get_named_gpiod_flags: can't parse 'gpio-reset' property of node '/ocp/interconnect@48000000/segment@0/target-module@70000/i2c@0/tlv320aic3104@18[0]'
    [    9.429565] i2c reg: 0x3600, value: 0x8
    [    9.432098] i2c reg: 0x3601, value: 0x33
    [    9.443756] vip 48990000.vip: VPDMA firmware loaded
    [    9.449768] asoc-simple-card sound0: GPIO lookup for consumer simple-audio-card,hp-det
    [    9.452697] asoc-simple-card sound0: using device tree for GPIO lookup
    [    9.452728] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpios' property of node '/sound0[0]'
    [    9.452758] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/sound0[0]'
    [    9.452758] asoc-simple-card sound0: using lookup tables for GPIO lookup
    [    9.452758] asoc-simple-card sound0: No GPIO consumer simple-audio-card,hp-det found
    [    9.452789] asoc-simple-card sound0: GPIO lookup for consumer simple-audio-card,mic-det
    [    9.452819] asoc-simple-card sound0: using device tree for GPIO lookup
    [    9.452850] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpios' property of node '/sound0[0]'
    [    9.452880] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/sound0[0]'
    [    9.452880] asoc-simple-card sound0: using lookup tables for GPIO lookup
    [    9.452880] asoc-simple-card sound0: No GPIO consumer simple-audio-card,mic-det found
    [    9.453826] vpe 489d0000.vpe: Device registered as /dev/video0
    [    9.489166] omapdss_dss 58000000.dss: bound 58001000.dispc (ops dispc_component_ops [omapdrm])
    [    9.499145] i2c reg: 0x302d, value: 0x60
    [    9.499298] i2c reg: 0x3620, value: 0x52
    [    9.546539] i2c reg: 0x371b, value: 0x20
    [    9.595947] i2c reg: 0x471c, value: 0x50
    [    9.628601] dmm 4e000000.dmm: workaround for errata i878 in use
    [    9.648345] i2c reg: 0x3a13, value: 0x43
    [    9.648529] i2c reg: 0x3a18, value: 0x0
    [    9.700164] i2c reg: 0x3a19, value: 0xf8
    [    9.734619] dmm 4e000000.dmm: initialized all PAT entries
    [    9.760284] i2c reg: 0x3635, value: 0x13
    [    9.764373] i2c reg: 0x3636, value: 0x3
    [    9.807434] i2c reg: 0x3634, value: 0x40
    [    9.813781] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 476, Function: panel_simple_get_orientation ****************************
    [    9.846252] i2c reg: 0x3622, value: 0x1
    [    9.847076] i2c reg: 0x3c01, value: 0xa4
    [    9.861114] i2c reg: 0x3c04, value: 0x28
    [    9.875457] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 181, Function: to_panel_simple ****************************
    [    9.915466] i2c reg: 0x3c05, value: 0x98
    [    9.916046] i2c reg: 0x3c06, value: 0x0
    [    9.979766] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 426, Function: panel_simple_get_modes ****************************
    [    9.998199] i2c reg: 0x3c07, value: 0x8
    [    9.998382] i2c reg: 0x3c08, value: 0x0
    [   10.033355] i2c reg: 0x3c09, value: 0x1c
    [   10.088653] i2c reg: 0x3c0a, value: 0x9c
    [   10.137115] i2c reg: 0x3c0b, value: 0x40
    [   10.137725] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 181, Function: to_panel_simple ****************************
    [   10.201019] i2c reg: 0x3820, value: 0x41
    [   10.201171] i2c reg: 0x3821, value: 0x7
    [   10.234069] i2c reg: 0x3814, value: 0x31
    [   10.272186] i2c reg: 0x3815, value: 0x31
    [   10.304168] i2c reg: 0x3618, value: 0x0
    [   10.344177] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 253, Function: panel_simple_get_non_edid_modes ****************************
    [   10.365112] i2c reg: 0x3612, value: 0x29
    [   10.365264] i2c reg: 0x3708, value: 0x64
    [   10.383392] i2c reg: 0x3709, value: 0x52
    [   10.436096] i2c reg: 0x370c, value: 0x3
    [   10.491485] i2c reg: 0x3a02, value: 0x3
    [   10.520202] i2c reg: 0x3a03, value: 0xd8
    [   10.552062] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 221, Function: panel_simple_get_display_modes ****************************
    [   10.573120] i2c reg: 0x3a08, value: 0x1
    [   10.573669] i2c reg: 0x3a09, value: 0x27
    [   10.622375] i2c reg: 0x3a0a, value: 0x0
    [   10.691040] i2c reg: 0x3a0b, value: 0xf6
    [   10.746276] i2c reg: 0x3a0e, value: 0x3
    [   10.749267] [drm] Enabling DMM ywrap scrolling
    [   10.770233] i2c reg: 0x3a0d, value: 0x4
    [   10.771087] i2c reg: 0x3a14, value: 0x3
    [   10.825317] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 388, Function: panel_simple_prepare ****************************
    [   10.825317] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 181, Function: to_panel_simple ****************************
    [   10.825347] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 364, Function: panel_simple_resume ****************************
    [   10.825347] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 299, Function: panel_simple_wait ****************************
    [   10.838531] i2c reg: 0x3a15, value: 0xd8
    [   10.841827] i2c reg: 0x4001, value: 0x2
    [   10.843749] i2c reg: 0x4004, value: 0x2
    [   10.843902] i2c reg: 0x3000, value: 0x0
    [   10.845520] i2c reg: 0x3002, value: 0x1c
    [   10.846099] i2c reg: 0x3004, value: 0xff
    [   10.846832] i2c reg: 0x3006, value: 0xc3
    [   10.848052] i2c reg: 0x302e, value: 0x8
    [   10.848999] i2c reg: 0x4300, value: 0x3f
    [   10.849822] i2c reg: 0x501f, value: 0x0
    [   10.851074] i2c reg: 0x440e, value: 0x0
    [   10.852813] i2c reg: 0x4837, value: 0xa
    [   10.852966] i2c reg: 0x5000, value: 0xa7
    [   10.853118] i2c reg: 0x5001, value: 0xa3
    [   10.853240] i2c reg: 0x5180, value: 0xff
    [   10.853393] i2c reg: 0x5181, value: 0xf2
    [   10.855010] i2c reg: 0x5182, value: 0x0
    [   10.855163] i2c reg: 0x5183, value: 0x14
    [   10.859313] i2c reg: 0x5184, value: 0x25
    [   10.860504] i2c reg: 0x5185, value: 0x24
    [   10.864013] i2c reg: 0x5186, value: 0x9
    [   10.864898] i2c reg: 0x5187, value: 0x9
    [   10.865020] i2c reg: 0x5188, value: 0x9
    [   10.865203] i2c reg: 0x5189, value: 0x88
    [   10.865356] i2c reg: 0x518a, value: 0x54
    [   10.865509] i2c reg: 0x518b, value: 0xee
    [   10.865661] i2c reg: 0x518c, value: 0xb2
    [   10.865783] i2c reg: 0x518d, value: 0x50
    [   10.865997] i2c reg: 0x518e, value: 0x34
    [   10.867126] i2c reg: 0x518f, value: 0x6b
    [   10.867279] i2c reg: 0x5190, value: 0x46
    [   10.869354] i2c reg: 0x5191, value: 0xf8
    [   10.869506] i2c reg: 0x5192, value: 0x4
    [   10.869628] i2c reg: 0x5193, value: 0x70
    [   10.869781] i2c reg: 0x5194, value: 0xf0
    [   10.869903] i2c reg: 0x5195, value: 0xf0
    [   10.870056] i2c reg: 0x5196, value: 0x3
    [   10.870178] i2c reg: 0x5197, value: 0x1
    [   10.870330] i2c reg: 0x5198, value: 0x4
    [   10.870452] i2c reg: 0x5199, value: 0x6c
    [   10.870605] i2c reg: 0x519a, value: 0x4
    [   10.871246] remoteproc remoteproc4: 4b234000.pru is available
    [   10.871948] remoteproc remoteproc5: 4b238000.pru is available
    [   10.872619] i2c reg: 0x519b, value: 0x0
    [   10.873870] remoteproc remoteproc6: 4b2b4000.pru is available
    [   10.874298] remoteproc remoteproc7: 4b2b8000.pru is available
    [   10.874511] i2c reg: 0x519c, value: 0x9
    [   10.874664] i2c reg: 0x519d, value: 0x2b
    [   10.874816] i2c reg: 0x519e, value: 0x38
    [   10.874969] i2c reg: 0x5381, value: 0x1e
    [   10.875091] i2c reg: 0x5382, value: 0x5b
    [   10.875244] i2c reg: 0x5383, value: 0x8
    [   10.875396] i2c reg: 0x5384, value: 0xa
    [   10.875579] i2c reg: 0x5385, value: 0x7e
    [   10.875701] i2c reg: 0x5386, value: 0x88
    [   10.875854] i2c reg: 0x5387, value: 0x7c
    [   10.875976] i2c reg: 0x5388, value: 0x6c
    [   10.876129] i2c reg: 0x5389, value: 0x10
    [   10.876281] i2c reg: 0x538a, value: 0x1
    [   10.876403] i2c reg: 0x538b, value: 0x98
    [   10.876922] i2c reg: 0x5300, value: 0x8
    [   10.878295] i2c reg: 0x5301, value: 0x30
    [   10.878723] i2c reg: 0x5302, value: 0x10
    [   10.879272] i2c reg: 0x5303, value: 0x0
    [   10.879974] i2c reg: 0x5304, value: 0x8
    [   10.880126] i2c reg: 0x5305, value: 0x30
    [   10.880279] i2c reg: 0x5306, value: 0x8
    [   10.880401] i2c reg: 0x5307, value: 0x16
    [   10.880554] i2c reg: 0x5309, value: 0x8
    [   10.880676] i2c reg: 0x530a, value: 0x30
    [   10.880828] i2c reg: 0x530b, value: 0x4
    [   10.880950] i2c reg: 0x530c, value: 0x6
    [   10.881103] i2c reg: 0x5480, value: 0x1
    [   10.881256] i2c reg: 0x5481, value: 0x8
    [   10.881408] i2c reg: 0x5482, value: 0x14
    [   10.881530] i2c reg: 0x5483, value: 0x28
    [   10.881683] i2c reg: 0x5484, value: 0x51
    [   10.883514] i2c reg: 0x5485, value: 0x65
    [   10.887786] i2c reg: 0x5486, value: 0x71
    [   10.887939] i2c reg: 0x5487, value: 0x7d
    [   10.888092] i2c reg: 0x5488, value: 0x87
    [   10.888214] i2c reg: 0x5489, value: 0x91
    [   10.888916] i2c reg: 0x548a, value: 0x9a
    [   10.889038] i2c reg: 0x548b, value: 0xaa
    [   10.889190] i2c reg: 0x548c, value: 0xb8
    [   10.889343] i2c reg: 0x548d, value: 0xcd
    [   10.889465] i2c reg: 0x548e, value: 0xdd
    [   10.889617] i2c reg: 0x548f, value: 0xea
    [   10.890014] i2c reg: 0x5490, value: 0x1d
    [   10.891113] i2c reg: 0x5580, value: 0x2
    [   10.891296] i2c reg: 0x5583, value: 0x40
    [   10.891448] i2c reg: 0x5584, value: 0x10
    [   10.891571] i2c reg: 0x5589, value: 0x10
    [   10.891723] i2c reg: 0x558a, value: 0x0
    [   10.891876] i2c reg: 0x558b, value: 0xf8
    [   10.891998] i2c reg: 0x5800, value: 0x23
    [   10.892242] i2c reg: 0x5801, value: 0x14
    [   10.892364] i2c reg: 0x5802, value: 0xf
    [   10.892517] i2c reg: 0x5803, value: 0xf
    [   10.893310] i2c reg: 0x5804, value: 0x12
    [   10.893463] i2c reg: 0x5805, value: 0x26
    [   10.893585] i2c reg: 0x5806, value: 0xc
    [   10.893768] i2c reg: 0x5807, value: 0x8
    [   10.893920] i2c reg: 0x5808, value: 0x5
    [   10.894073] i2c reg: 0x5809, value: 0x5
    [   10.894195] i2c reg: 0x580a, value: 0x8
    [   10.894348] i2c reg: 0x580b, value: 0xd
    [   10.894470] i2c reg: 0x580c, value: 0x8
    [   10.894622] i2c reg: 0x580d, value: 0x3
    [   10.894744] i2c reg: 0x580e, value: 0x0
    [   10.894897] i2c reg: 0x580f, value: 0x0
    [   10.895019] i2c reg: 0x5810, value: 0x3
    [   10.895172] i2c reg: 0x5811, value: 0x9
    [   10.898803] i2c reg: 0x5812, value: 0x7
    [   10.898956] i2c reg: 0x5813, value: 0x3
    [   10.899078] i2c reg: 0x5814, value: 0x0
    [   10.899871] i2c reg: 0x5815, value: 0x1
    [   10.900054] i2c reg: 0x5816, value: 0x3
    [   10.900939] i2c reg: 0x5817, value: 0x8
    [   10.902008] i2c reg: 0x5818, value: 0xd
    [   10.902160] i2c reg: 0x5819, value: 0x8
    [   10.902282] i2c reg: 0x581a, value: 0x5
    [   10.902435] i2c reg: 0x581b, value: 0x6
    [   10.902648] i2c reg: 0x581c, value: 0x8
    [   10.903076] i2c reg: 0x581d, value: 0xe
    [   10.903839] i2c reg: 0x581e, value: 0x29
    [   10.903991] i2c reg: 0x581f, value: 0x17
    [   10.904174] i2c reg: 0x5820, value: 0x11
    [   10.904327] i2c reg: 0x5821, value: 0x11
    [   10.904449] i2c reg: 0x5822, value: 0x15
    [   10.904602] i2c reg: 0x5823, value: 0x28
    [   10.904754] i2c reg: 0x5824, value: 0x46
    [   10.904876] i2c reg: 0x5825, value: 0x26
    [   10.905029] i2c reg: 0x5826, value: 0x8
    [   10.905181] i2c reg: 0x5827, value: 0x26
    [   10.905303] i2c reg: 0x5828, value: 0x64
    [   10.905456] i2c reg: 0x5829, value: 0x26
    [   10.905609] i2c reg: 0x582a, value: 0x24
    [   10.905731] i2c reg: 0x582b, value: 0x22
    [   10.905883] i2c reg: 0x582c, value: 0x24
    [   10.906036] i2c reg: 0x582d, value: 0x24
    [   10.906158] i2c reg: 0x582e, value: 0x6
    [   10.906341] i2c reg: 0x582f, value: 0x22
    [   10.906494] i2c reg: 0x5830, value: 0x40
    [   10.906616] i2c reg: 0x5831, value: 0x42
    [   10.906768] i2c reg: 0x5832, value: 0x24
    [   10.906921] i2c reg: 0x5833, value: 0x26
    [   10.907043] i2c reg: 0x5834, value: 0x24
    [   10.907196] i2c reg: 0x5835, value: 0x22
    [   10.907348] i2c reg: 0x5836, value: 0x22
    [   10.907501] i2c reg: 0x5837, value: 0x26
    [   10.907623] i2c reg: 0x5838, value: 0x44
    [   10.907989] i2c reg: 0x5839, value: 0x24
    [   10.908142] i2c reg: 0x583a, value: 0x26
    [   10.908264] i2c reg: 0x583b, value: 0x28
    [   10.908416] i2c reg: 0x583c, value: 0x42
    [   10.908538] i2c reg: 0x583d, value: 0xce
    [   10.908691] i2c reg: 0x5025, value: 0x0
    [   10.908843] i2c reg: 0x3a0f, value: 0x30
    [   10.908966] i2c reg: 0x3a10, value: 0x28
    [   10.909118] i2c reg: 0x3a1b, value: 0x30
    [   10.909240] i2c reg: 0x3a1e, value: 0x26
    [   10.909393] i2c reg: 0x3a11, value: 0x60
    [   10.909576] i2c reg: 0x3a1f, value: 0x14
    [   10.909729] i2c reg: 0x3c00, value: 0x4
    [   10.954956] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 409, Function: panel_simple_enable ****************************
    [   10.954956] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 181, Function: to_panel_simple ****************************
    [   11.038391] Console: switching to colour frame buffer device 128x37
    [   11.213073] i2c reg: 0x3108, value: 0x1
    [   11.213409] i2c reg: 0x3503, value: 0x2
    [   11.214172] i2c reg: 0x3503, value: 0x3
    [   11.214508] i2c reg: 0x3034, value: 0x18
    [   11.216522] i2c reg: 0x3035, value: 0x20
    [   11.216888] i2c reg: 0x3036, value: 0x7b
    [   11.217224] i2c reg: 0x3037, value: 0x13
    [   11.217559] i2c reg: 0x3108, value: 0x1
    [   11.217742] i2c reg: 0x3c07, value: 0x8
    [   11.217895] i2c reg: 0x3c09, value: 0x1c
    [   11.218048] i2c reg: 0x3c0a, value: 0x9c
    [   11.218231] i2c reg: 0x3c0b, value: 0x40
    [   11.218353] i2c reg: 0x3814, value: 0x31
    [   11.218505] i2c reg: 0x3815, value: 0x31
    [   11.218749] i2c reg: 0x3618, value: 0x0
    [   11.218902] i2c reg: 0x3612, value: 0x29
    [   11.219055] i2c reg: 0x3708, value: 0x64
    [   11.219177] i2c reg: 0x3709, value: 0x52
    [   11.219329] i2c reg: 0x370c, value: 0x3
    [   11.219451] i2c reg: 0x3a02, value: 0x3
    [   11.219604] i2c reg: 0x3a03, value: 0xd8
    [   11.219757] i2c reg: 0x3a08, value: 0x1
    [   11.220062] i2c reg: 0x3a09, value: 0x27
    [   11.220214] i2c reg: 0x3a0a, value: 0x0
    [   11.220397] i2c reg: 0x3a0b, value: 0xf6
    [   11.220947] i2c reg: 0x3a0e, value: 0x3
    [   11.225006] i2c reg: 0x3a0d, value: 0x4
    [   11.225189] i2c reg: 0x3a14, value: 0x3
    [   11.225341] i2c reg: 0x3a15, value: 0xd8
    [   11.225463] i2c reg: 0x4001, value: 0x2
    [   11.225616] i2c reg: 0x4004, value: 0x2
    [   11.225921] i2c reg: 0x4407, value: 0x4
    [   11.226104] i2c reg: 0x460b, value: 0x35
    [   11.226257] i2c reg: 0x460c, value: 0x22
    [   11.226379] i2c reg: 0x3824, value: 0x2
    [   11.226501] i2c reg: 0x5001, value: 0xa3
    [   11.226654] i2c reg: 0x3800, value: 0x0
    [   11.226806] i2c reg: 0x3801, value: 0x0
    [   11.226959] i2c reg: 0x3802, value: 0x0
    [   11.227081] i2c reg: 0x3803, value: 0x4
    [   11.227233] i2c reg: 0x3804, value: 0xa
    [   11.227722] i2c reg: 0x3805, value: 0x3f
    [   11.227935] i2c reg: 0x3806, value: 0x7
    [   11.231658] i2c reg: 0x3807, value: 0x9b
    [   11.235778] i2c reg: 0x3810, value: 0x0
    [   11.239898] i2c reg: 0x3811, value: 0x10
    [   11.243682] omapdrm omapdrm.0: [drm] fb0: omapdrmdrmfb frame buffer device
    [   12.032653] i2c reg: 0x3812, value: 0x0
    [   12.032806] i2c reg: 0x3813, value: 0x6
    [   12.040008] i2c reg: 0x3808, value: 0x2
    [   12.047302] i2c reg: 0x3809, value: 0x80
    [   12.056640] i2c reg: 0x380a, value: 0x1
    [   12.061004] i2c reg: 0x380b, value: 0xe0
    [   12.066558] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0
    [   12.081542] i2c reg: 0x380c, value: 0x7
    [   12.081848] i2c reg: 0x380d, value: 0x68
    [   12.086090] i2c reg: 0x380e, value: 0x4
    [   12.090332] i2c reg: 0x380f, value: 0x38
    [   12.099578] i2c reg: 0x3503, value: 0x1
    [   12.104095] i2c reg: 0x3503, value: 0x0
    [   12.141143] i2c reg: 0x3821, value: 0x7
    [   12.147491] i2c reg: 0x3820, value: 0x41
    [   12.153778] i2c reg: 0x3a0f, value: 0x38
    [   12.159484] i2c reg: 0x3a10, value: 0x2f
    [   12.166931] i2c reg: 0x3a1b, value: 0x38
    [   12.171081] i2c reg: 0x3a1e, value: 0x2f
    [   12.175231] i2c reg: 0x3a11, value: 0x70
    [   12.179351] i2c reg: 0x3a1f, value: 0x17
    [   12.186096] i2c reg: 0x3a0a, value: 0x1
    [   12.190277] i2c reg: 0x3a0b, value: 0xe
    [   12.194488] i2c reg: 0x3a0d, value: 0x3
    [   12.216644] i2c reg: 0x3a08, value: 0x1
    [   12.225708] i2c reg: 0x3a09, value: 0x44
    [   12.236846] i2c reg: 0x3a0e, value: 0x3
    [   12.244201] i2c reg: 0x4814, value: 0x2a
    [   12.252441] i2c reg: 0x4300, value: 0x3f
    [   12.261932] i2c reg: 0x501f, value: 0x0
    [   12.269989] i2c reg: 0x3821, value: 0x7
    [   12.280578] i2c reg: 0x3002, value: 0x1c
    [   12.285034] i2c reg: 0x3006, value: 0xc3
    [   12.289367] i2c reg: 0x4730, value: 0x0
    [   12.293548] i2c reg: 0x4740, value: 0x22
    [   12.297851] i2c reg: 0x300e, value: 0x18
    [   12.302124] i2c reg: 0x3017, value: 0x7f
    [   12.306396] i2c reg: 0x3018, value: 0xfc
    [   12.311126] vin3a: Port A: Using subdev ov5640 2-003c for capture
    [   12.321441] **** vip: create_stream: V4L2_MBUS_PARALLEL ****
    [   12.327362] **** vip: alloc_stream function: Starts  ****
    [   12.332946] **** vip: alloc_stream: kzalloc done ****
    [   12.338256] **** vip: alloc_stream: vpdma_hwlist_alloc done ****
    [   12.344970] **** vip: alloc_stream: queue initializations done ****
    [   12.351440] **** vip: alloc_stream: queues alloced done ****
    [   12.357574] ***** vip: alloc_stream: video dev alloc done ****
    [   12.363952] **** vip: alloc_stream: video dev registered ****
    [   12.373321] vin3a-0: device registered as video1
    [   12.378906] **** vip: create_stream: alloc_stream called ****
    [   14.846710] Bluetooth: Core ver 2.22
    [   14.878753] NET: Registered PF_BLUETOOTH protocol family
    [   14.901611] Bluetooth: HCI device and connection manager initialized
    [   14.928375] Bluetooth: HCI socket layer initialized
    [   14.933288] Bluetooth: L2CAP socket layer initialized
    [   14.950561] Bluetooth: SCO socket layer initialized
    [   15.132629] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [   15.211761] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: disabled.
    [   15.454681] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [   15.461914] cfg80211: Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
    [   15.489318] Initializing XFRM netlink socket
    [   15.625640] cpsw-switch 48484000.switch: starting ndev. mode: dual_mac
    [   15.690887] Generic PHY 48485000.mdio:01: attached PHY driver (mii_bus:phy_addr=48485000.mdio:01, irq=POLL)
    [   15.824340] cpsw-switch 48484000.switch: starting ndev. mode: dual_mac
    [   15.857421] Generic PHY 48485000.mdio:00: attached PHY driver (mii_bus:phy_addr=48485000.mdio:00, irq=POLL)
    [   15.911163] cpsw-switch 48484000.switch eth0: Link is Up - 100Mbps/Full - flow control off
    [   15.911315] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    [   18.958160] systemd-journald[134]: Time jumped backwards, rotating.
    [   23.135223] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 426, Function: panel_simple_get_modes ****************************
    [   23.173736] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 181, Function: to_panel_simple ****************************
    [   23.193725] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 253, Function: panel_simple_get_non_edid_modes ****************************
    [   23.233978] VM********************* File: drivers/gpu/drm/panel/panel-simple.c, Line: 221, Function: panel_simple_get_display_modes ****************************
    [   33.133911] ldousb: disabling

    And specifically these are the i2c reg values grepped from dmesg above.

    [    9.192321] i2c reg: 0x3008, value: 0x42
    [    9.200408] i2c reg: 0x3103, value: 0x11
    [    9.218627] i2c reg: 0x3103, value: 0x3
    [    9.223358] i2c reg: 0x3630, value: 0x36
    [    9.228485] i2c reg: 0x3631, value: 0xe
    [    9.235809] i2c reg: 0x3632, value: 0xe2
    [    9.239837] i2c reg: 0x3633, value: 0x12
    [    9.243988] i2c reg: 0x3621, value: 0xe0
    [    9.248168] i2c reg: 0x3704, value: 0xa0
    [    9.254882] i2c reg: 0x3703, value: 0x5a
    [    9.259094] i2c reg: 0x3715, value: 0x78
    [    9.266357] i2c reg: 0x3717, value: 0x1
    [    9.270507] i2c reg: 0x370b, value: 0x60
    [    9.277282] i2c reg: 0x3705, value: 0x1a
    [    9.304168] i2c reg: 0x3905, value: 0x2
    [    9.337188] i2c reg: 0x3906, value: 0x10
    [    9.339385] i2c reg: 0x3901, value: 0xa
    [    9.361877] i2c reg: 0x3731, value: 0x12
    [    9.429565] i2c reg: 0x3600, value: 0x8
    [    9.432098] i2c reg: 0x3601, value: 0x33
    [    9.499145] i2c reg: 0x302d, value: 0x60
    [    9.499298] i2c reg: 0x3620, value: 0x52
    [    9.546539] i2c reg: 0x371b, value: 0x20
    [    9.595947] i2c reg: 0x471c, value: 0x50
    [    9.648345] i2c reg: 0x3a13, value: 0x43
    [    9.648529] i2c reg: 0x3a18, value: 0x0
    [    9.700164] i2c reg: 0x3a19, value: 0xf8
    [    9.760284] i2c reg: 0x3635, value: 0x13
    [    9.764373] i2c reg: 0x3636, value: 0x3
    [    9.807434] i2c reg: 0x3634, value: 0x40
    [    9.846252] i2c reg: 0x3622, value: 0x1
    [    9.847076] i2c reg: 0x3c01, value: 0xa4
    [    9.861114] i2c reg: 0x3c04, value: 0x28
    [    9.915466] i2c reg: 0x3c05, value: 0x98
    [    9.916046] i2c reg: 0x3c06, value: 0x0
    [    9.998199] i2c reg: 0x3c07, value: 0x8
    [    9.998382] i2c reg: 0x3c08, value: 0x0
    [   10.033355] i2c reg: 0x3c09, value: 0x1c
    [   10.088653] i2c reg: 0x3c0a, value: 0x9c
    [   10.137115] i2c reg: 0x3c0b, value: 0x40
    [   10.201019] i2c reg: 0x3820, value: 0x41
    [   10.201171] i2c reg: 0x3821, value: 0x7
    [   10.234069] i2c reg: 0x3814, value: 0x31
    [   10.272186] i2c reg: 0x3815, value: 0x31
    [   10.304168] i2c reg: 0x3618, value: 0x0
    [   10.365112] i2c reg: 0x3612, value: 0x29
    [   10.365264] i2c reg: 0x3708, value: 0x64
    [   10.383392] i2c reg: 0x3709, value: 0x52
    [   10.436096] i2c reg: 0x370c, value: 0x3
    [   10.491485] i2c reg: 0x3a02, value: 0x3
    [   10.520202] i2c reg: 0x3a03, value: 0xd8
    [   10.573120] i2c reg: 0x3a08, value: 0x1
    [   10.573669] i2c reg: 0x3a09, value: 0x27
    [   10.622375] i2c reg: 0x3a0a, value: 0x0
    [   10.691040] i2c reg: 0x3a0b, value: 0xf6
    [   10.746276] i2c reg: 0x3a0e, value: 0x3
    [   10.770233] i2c reg: 0x3a0d, value: 0x4
    [   10.771087] i2c reg: 0x3a14, value: 0x3
    [   10.838531] i2c reg: 0x3a15, value: 0xd8
    [   10.841827] i2c reg: 0x4001, value: 0x2
    [   10.843749] i2c reg: 0x4004, value: 0x2
    [   10.843902] i2c reg: 0x3000, value: 0x0
    [   10.845520] i2c reg: 0x3002, value: 0x1c
    [   10.846099] i2c reg: 0x3004, value: 0xff
    [   10.846832] i2c reg: 0x3006, value: 0xc3
    [   10.848052] i2c reg: 0x302e, value: 0x8
    [   10.848999] i2c reg: 0x4300, value: 0x3f
    [   10.849822] i2c reg: 0x501f, value: 0x0
    [   10.851074] i2c reg: 0x440e, value: 0x0
    [   10.852813] i2c reg: 0x4837, value: 0xa
    [   10.852966] i2c reg: 0x5000, value: 0xa7
    [   10.853118] i2c reg: 0x5001, value: 0xa3
    [   10.853240] i2c reg: 0x5180, value: 0xff
    [   10.853393] i2c reg: 0x5181, value: 0xf2
    [   10.855010] i2c reg: 0x5182, value: 0x0
    [   10.855163] i2c reg: 0x5183, value: 0x14
    [   10.859313] i2c reg: 0x5184, value: 0x25
    [   10.860504] i2c reg: 0x5185, value: 0x24
    [   10.864013] i2c reg: 0x5186, value: 0x9
    [   10.864898] i2c reg: 0x5187, value: 0x9
    [   10.865020] i2c reg: 0x5188, value: 0x9
    [   10.865203] i2c reg: 0x5189, value: 0x88
    [   10.865356] i2c reg: 0x518a, value: 0x54
    [   10.865509] i2c reg: 0x518b, value: 0xee
    [   10.865661] i2c reg: 0x518c, value: 0xb2
    [   10.865783] i2c reg: 0x518d, value: 0x50
    [   10.865997] i2c reg: 0x518e, value: 0x34
    [   10.867126] i2c reg: 0x518f, value: 0x6b
    [   10.867279] i2c reg: 0x5190, value: 0x46
    [   10.869354] i2c reg: 0x5191, value: 0xf8
    [   10.869506] i2c reg: 0x5192, value: 0x4
    [   10.869628] i2c reg: 0x5193, value: 0x70
    [   10.869781] i2c reg: 0x5194, value: 0xf0
    [   10.869903] i2c reg: 0x5195, value: 0xf0
    [   10.870056] i2c reg: 0x5196, value: 0x3
    [   10.870178] i2c reg: 0x5197, value: 0x1
    [   10.870330] i2c reg: 0x5198, value: 0x4
    [   10.870452] i2c reg: 0x5199, value: 0x6c
    [   10.870605] i2c reg: 0x519a, value: 0x4
    [   10.872619] i2c reg: 0x519b, value: 0x0
    [   10.874511] i2c reg: 0x519c, value: 0x9
    [   10.874664] i2c reg: 0x519d, value: 0x2b
    [   10.874816] i2c reg: 0x519e, value: 0x38
    [   10.874969] i2c reg: 0x5381, value: 0x1e
    [   10.875091] i2c reg: 0x5382, value: 0x5b
    [   10.875244] i2c reg: 0x5383, value: 0x8
    [   10.875396] i2c reg: 0x5384, value: 0xa
    [   10.875579] i2c reg: 0x5385, value: 0x7e
    [   10.875701] i2c reg: 0x5386, value: 0x88
    [   10.875854] i2c reg: 0x5387, value: 0x7c
    [   10.875976] i2c reg: 0x5388, value: 0x6c
    [   10.876129] i2c reg: 0x5389, value: 0x10
    [   10.876281] i2c reg: 0x538a, value: 0x1
    [   10.876403] i2c reg: 0x538b, value: 0x98
    [   10.876922] i2c reg: 0x5300, value: 0x8
    [   10.878295] i2c reg: 0x5301, value: 0x30
    [   10.878723] i2c reg: 0x5302, value: 0x10
    [   10.879272] i2c reg: 0x5303, value: 0x0
    [   10.879974] i2c reg: 0x5304, value: 0x8
    [   10.880126] i2c reg: 0x5305, value: 0x30
    [   10.880279] i2c reg: 0x5306, value: 0x8
    [   10.880401] i2c reg: 0x5307, value: 0x16
    [   10.880554] i2c reg: 0x5309, value: 0x8
    [   10.880676] i2c reg: 0x530a, value: 0x30
    [   10.880828] i2c reg: 0x530b, value: 0x4
    [   10.880950] i2c reg: 0x530c, value: 0x6
    [   10.881103] i2c reg: 0x5480, value: 0x1
    [   10.881256] i2c reg: 0x5481, value: 0x8
    [   10.881408] i2c reg: 0x5482, value: 0x14
    [   10.881530] i2c reg: 0x5483, value: 0x28
    [   10.881683] i2c reg: 0x5484, value: 0x51
    [   10.883514] i2c reg: 0x5485, value: 0x65
    [   10.887786] i2c reg: 0x5486, value: 0x71
    [   10.887939] i2c reg: 0x5487, value: 0x7d
    [   10.888092] i2c reg: 0x5488, value: 0x87
    [   10.888214] i2c reg: 0x5489, value: 0x91
    [   10.888916] i2c reg: 0x548a, value: 0x9a
    [   10.889038] i2c reg: 0x548b, value: 0xaa
    [   10.889190] i2c reg: 0x548c, value: 0xb8
    [   10.889343] i2c reg: 0x548d, value: 0xcd
    [   10.889465] i2c reg: 0x548e, value: 0xdd
    [   10.889617] i2c reg: 0x548f, value: 0xea
    [   10.890014] i2c reg: 0x5490, value: 0x1d
    [   10.891113] i2c reg: 0x5580, value: 0x2
    [   10.891296] i2c reg: 0x5583, value: 0x40
    [   10.891448] i2c reg: 0x5584, value: 0x10
    [   10.891571] i2c reg: 0x5589, value: 0x10
    [   10.891723] i2c reg: 0x558a, value: 0x0
    [   10.891876] i2c reg: 0x558b, value: 0xf8
    [   10.891998] i2c reg: 0x5800, value: 0x23
    [   10.892242] i2c reg: 0x5801, value: 0x14
    [   10.892364] i2c reg: 0x5802, value: 0xf
    [   10.892517] i2c reg: 0x5803, value: 0xf
    [   10.893310] i2c reg: 0x5804, value: 0x12
    [   10.893463] i2c reg: 0x5805, value: 0x26
    [   10.893585] i2c reg: 0x5806, value: 0xc
    [   10.893768] i2c reg: 0x5807, value: 0x8
    [   10.893920] i2c reg: 0x5808, value: 0x5
    [   10.894073] i2c reg: 0x5809, value: 0x5
    [   10.894195] i2c reg: 0x580a, value: 0x8
    [   10.894348] i2c reg: 0x580b, value: 0xd
    [   10.894470] i2c reg: 0x580c, value: 0x8
    [   10.894622] i2c reg: 0x580d, value: 0x3
    [   10.894744] i2c reg: 0x580e, value: 0x0
    [   10.894897] i2c reg: 0x580f, value: 0x0
    [   10.895019] i2c reg: 0x5810, value: 0x3
    [   10.895172] i2c reg: 0x5811, value: 0x9
    [   10.898803] i2c reg: 0x5812, value: 0x7
    [   10.898956] i2c reg: 0x5813, value: 0x3
    [   10.899078] i2c reg: 0x5814, value: 0x0
    [   10.899871] i2c reg: 0x5815, value: 0x1
    [   10.900054] i2c reg: 0x5816, value: 0x3
    [   10.900939] i2c reg: 0x5817, value: 0x8
    [   10.902008] i2c reg: 0x5818, value: 0xd
    [   10.902160] i2c reg: 0x5819, value: 0x8
    [   10.902282] i2c reg: 0x581a, value: 0x5
    [   10.902435] i2c reg: 0x581b, value: 0x6
    [   10.902648] i2c reg: 0x581c, value: 0x8
    [   10.903076] i2c reg: 0x581d, value: 0xe
    [   10.903839] i2c reg: 0x581e, value: 0x29
    [   10.903991] i2c reg: 0x581f, value: 0x17
    [   10.904174] i2c reg: 0x5820, value: 0x11
    [   10.904327] i2c reg: 0x5821, value: 0x11
    [   10.904449] i2c reg: 0x5822, value: 0x15
    [   10.904602] i2c reg: 0x5823, value: 0x28
    [   10.904754] i2c reg: 0x5824, value: 0x46
    [   10.904876] i2c reg: 0x5825, value: 0x26
    [   10.905029] i2c reg: 0x5826, value: 0x8
    [   10.905181] i2c reg: 0x5827, value: 0x26
    [   10.905303] i2c reg: 0x5828, value: 0x64
    [   10.905456] i2c reg: 0x5829, value: 0x26
    [   10.905609] i2c reg: 0x582a, value: 0x24
    [   10.905731] i2c reg: 0x582b, value: 0x22
    [   10.905883] i2c reg: 0x582c, value: 0x24
    [   10.906036] i2c reg: 0x582d, value: 0x24
    [   10.906158] i2c reg: 0x582e, value: 0x6
    [   10.906341] i2c reg: 0x582f, value: 0x22
    [   10.906494] i2c reg: 0x5830, value: 0x40
    [   10.906616] i2c reg: 0x5831, value: 0x42
    [   10.906768] i2c reg: 0x5832, value: 0x24
    [   10.906921] i2c reg: 0x5833, value: 0x26
    [   10.907043] i2c reg: 0x5834, value: 0x24
    [   10.907196] i2c reg: 0x5835, value: 0x22
    [   10.907348] i2c reg: 0x5836, value: 0x22
    [   10.907501] i2c reg: 0x5837, value: 0x26
    [   10.907623] i2c reg: 0x5838, value: 0x44
    [   10.907989] i2c reg: 0x5839, value: 0x24
    [   10.908142] i2c reg: 0x583a, value: 0x26
    [   10.908264] i2c reg: 0x583b, value: 0x28
    [   10.908416] i2c reg: 0x583c, value: 0x42
    [   10.908538] i2c reg: 0x583d, value: 0xce
    [   10.908691] i2c reg: 0x5025, value: 0x0
    [   10.908843] i2c reg: 0x3a0f, value: 0x30
    [   10.908966] i2c reg: 0x3a10, value: 0x28
    [   10.909118] i2c reg: 0x3a1b, value: 0x30
    [   10.909240] i2c reg: 0x3a1e, value: 0x26
    [   10.909393] i2c reg: 0x3a11, value: 0x60
    [   10.909576] i2c reg: 0x3a1f, value: 0x14
    [   10.909729] i2c reg: 0x3c00, value: 0x4
    [   11.213073] i2c reg: 0x3108, value: 0x1
    [   11.213409] i2c reg: 0x3503, value: 0x2
    [   11.214172] i2c reg: 0x3503, value: 0x3
    [   11.214508] i2c reg: 0x3034, value: 0x18
    [   11.216522] i2c reg: 0x3035, value: 0x20
    [   11.216888] i2c reg: 0x3036, value: 0x7b
    [   11.217224] i2c reg: 0x3037, value: 0x13
    [   11.217559] i2c reg: 0x3108, value: 0x1
    [   11.217742] i2c reg: 0x3c07, value: 0x8
    [   11.217895] i2c reg: 0x3c09, value: 0x1c
    [   11.218048] i2c reg: 0x3c0a, value: 0x9c
    [   11.218231] i2c reg: 0x3c0b, value: 0x40
    [   11.218353] i2c reg: 0x3814, value: 0x31
    [   11.218505] i2c reg: 0x3815, value: 0x31
    [   11.218749] i2c reg: 0x3618, value: 0x0
    [   11.218902] i2c reg: 0x3612, value: 0x29
    [   11.219055] i2c reg: 0x3708, value: 0x64
    [   11.219177] i2c reg: 0x3709, value: 0x52
    [   11.219329] i2c reg: 0x370c, value: 0x3
    [   11.219451] i2c reg: 0x3a02, value: 0x3
    [   11.219604] i2c reg: 0x3a03, value: 0xd8
    [   11.219757] i2c reg: 0x3a08, value: 0x1
    [   11.220062] i2c reg: 0x3a09, value: 0x27
    [   11.220214] i2c reg: 0x3a0a, value: 0x0
    [   11.220397] i2c reg: 0x3a0b, value: 0xf6
    [   11.220947] i2c reg: 0x3a0e, value: 0x3
    [   11.225006] i2c reg: 0x3a0d, value: 0x4
    [   11.225189] i2c reg: 0x3a14, value: 0x3
    [   11.225341] i2c reg: 0x3a15, value: 0xd8
    [   11.225463] i2c reg: 0x4001, value: 0x2
    [   11.225616] i2c reg: 0x4004, value: 0x2
    [   11.225921] i2c reg: 0x4407, value: 0x4
    [   11.226104] i2c reg: 0x460b, value: 0x35
    [   11.226257] i2c reg: 0x460c, value: 0x22
    [   11.226379] i2c reg: 0x3824, value: 0x2
    [   11.226501] i2c reg: 0x5001, value: 0xa3
    [   11.226654] i2c reg: 0x3800, value: 0x0
    [   11.226806] i2c reg: 0x3801, value: 0x0
    [   11.226959] i2c reg: 0x3802, value: 0x0
    [   11.227081] i2c reg: 0x3803, value: 0x4
    [   11.227233] i2c reg: 0x3804, value: 0xa
    [   11.227722] i2c reg: 0x3805, value: 0x3f
    [   11.227935] i2c reg: 0x3806, value: 0x7
    [   11.231658] i2c reg: 0x3807, value: 0x9b
    [   11.235778] i2c reg: 0x3810, value: 0x0
    [   11.239898] i2c reg: 0x3811, value: 0x10
    [   12.032653] i2c reg: 0x3812, value: 0x0
    [   12.032806] i2c reg: 0x3813, value: 0x6
    [   12.040008] i2c reg: 0x3808, value: 0x2
    [   12.047302] i2c reg: 0x3809, value: 0x80
    [   12.056640] i2c reg: 0x380a, value: 0x1
    [   12.061004] i2c reg: 0x380b, value: 0xe0
    [   12.081542] i2c reg: 0x380c, value: 0x7
    [   12.081848] i2c reg: 0x380d, value: 0x68
    [   12.086090] i2c reg: 0x380e, value: 0x4
    [   12.090332] i2c reg: 0x380f, value: 0x38
    [   12.099578] i2c reg: 0x3503, value: 0x1
    [   12.104095] i2c reg: 0x3503, value: 0x0
    [   12.141143] i2c reg: 0x3821, value: 0x7
    [   12.147491] i2c reg: 0x3820, value: 0x41
    [   12.153778] i2c reg: 0x3a0f, value: 0x38
    [   12.159484] i2c reg: 0x3a10, value: 0x2f
    [   12.166931] i2c reg: 0x3a1b, value: 0x38
    [   12.171081] i2c reg: 0x3a1e, value: 0x2f
    [   12.175231] i2c reg: 0x3a11, value: 0x70
    [   12.179351] i2c reg: 0x3a1f, value: 0x17
    [   12.186096] i2c reg: 0x3a0a, value: 0x1
    [   12.190277] i2c reg: 0x3a0b, value: 0xe
    [   12.194488] i2c reg: 0x3a0d, value: 0x3
    [   12.216644] i2c reg: 0x3a08, value: 0x1
    [   12.225708] i2c reg: 0x3a09, value: 0x44
    [   12.236846] i2c reg: 0x3a0e, value: 0x3
    [   12.244201] i2c reg: 0x4814, value: 0x2a
    [   12.252441] i2c reg: 0x4300, value: 0x3f
    [   12.261932] i2c reg: 0x501f, value: 0x0
    [   12.269989] i2c reg: 0x3821, value: 0x7
    [   12.280578] i2c reg: 0x3002, value: 0x1c
    [   12.285034] i2c reg: 0x3006, value: 0xc3
    [   12.289367] i2c reg: 0x4730, value: 0x0
    [   12.293548] i2c reg: 0x4740, value: 0x22
    [   12.297851] i2c reg: 0x300e, value: 0x18
    [   12.302124] i2c reg: 0x3017, value: 0x7f
    [   12.306396] i2c reg: 0x3018, value: 0xfc
    

    Hope the issue will be caught red-handed and rectified now !

    -Vishal

  • Hi Vishal,

    Can you send the 6.03 messages as well? I'd like to compare the two.

    Best,
    Jared

  • Jared,

    I told you 6.03 SDK didn't give me any prints upon boot when I put the printk in ov5640_write_reg function.

    -Vishal

  • Hi Vishal,

    I need to be able to see the I2C values sent on 6.03 to compare. Does dev_info or placing the prints in another I2C reg function work?

    Best,
    Jared

  • Jared,

    You tell me please!

    There are so many functions where I can put the prints. Tell me the function name. I will revert then!

    -Vishal

  • Hi Vishal,

    Can you send the changes you added?

    Does the following patch work?

    From a2f4f925b46c9019810d797c1a58a1ab4fa694b6 Mon Sep 17 00:00:00 2001
    From: Jared McArthur <j-mcarthur@ti.com>
    Date: Thu, 25 Sep 2025 13:59:38 -0500
    Subject: [PATCH 1/1] media: ov5640: Add print to i2c reg write
    
    Signed-off-by: Jared McArthur <j-mcarthur@ti.com>
    ---
     drivers/media/i2c/ov5640.c | 2 ++
     1 file changed, 2 insertions(+)
    
    diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
    index e9667f50ee8c..b71f2fafd3f5 100644
    --- a/drivers/media/i2c/ov5640.c
    +++ b/drivers/media/i2c/ov5640.c
    @@ -628,6 +628,8 @@ static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
     		return ret;
     	}
     
    +	dev_info(&client->dev, "i2c reg: 0x%x, value: 0x%x\n", reg, val);
    +
     	return 0;
     }
     
    -- 
    2.34.1

    Best,
    Jared

  • Jared. 

    Can you send the changes you added?

    I already told you I added a printk function in both 9.03 and 6.03 SDK in my previous replies.

    Does the following patch work?

    I will send you output of this in 9.03 SDK as in 6.03 SDK the function doesn’t get called on boot. Although I am not sure it will get compiled. 
     
    Will update you soon!

    -Vishal

  • Hi Vishal,

    I already told you I added a printk function in both 9.03 and 6.03 SDK in my previous replies.

    I just would like to see the code itself.

    I will send you output of this in 9.03 SDK as in 6.03 SDK the function doesn’t get called on boot. Although I am not sure it will get compiled. 

    What does this mean? Is the probe function not called for the ov5640 on boot? Is it not compiled as a module?

    Best,
    Jared

  • Jared,

    Currently this is the code for ov5640_write_reg function in both 9.03 and 6.03 SDK's camera driver.

    static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
    {
            printk("i2c reg: 0x%x, value: 0x%x", reg, val);
            struct i2c_client *client = sensor->i2c_client;
            struct i2c_msg msg;
            u8 buf[3];
            int ret;
    
            buf[0] = reg >> 8;
            buf[1] = reg & 0xff;
            buf[2] = val;
    
            msg.addr = client->addr;
            msg.flags = client->flags;
            msg.buf = buf;
            msg.len = sizeof(buf);
    
            ret = i2c_transfer(client->adapter, &msg, 1);
            if (ret < 0) {
                    dev_err(&client->dev, "%s: error: reg=%x, val=%x\n",
                            __func__, reg, val);
                    return ret;
            }
    
            return 0;
    }
    

    What does this mean? Is the probe function not called for the ov5640 on boot? Is it not compiled as a module?

    Sorry, I thought there was an undefined variable in your patch, which is why I said the code wouldn’t compile. Of course, the probe function gets called. Ignore what I said earlier. 

    Here is the updated code after your patch for both the SDKs.

    I haven't added back the "ti,vip-channels = <1>;" line in DTS.

    I have also commented the printk that I had added.

    static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
    {
            //printk("i2c reg: 0x%x, value: 0x%x", reg, val);
            struct i2c_client *client = sensor->i2c_client;
            struct i2c_msg msg;
            u8 buf[3];
            int ret;
    
            buf[0] = reg >> 8;
            buf[1] = reg & 0xff;
            buf[2] = val;
    
            msg.addr = client->addr;
            msg.flags = client->flags;
            msg.buf = buf;
            msg.len = sizeof(buf);
    
            ret = i2c_transfer(client->adapter, &msg, 1);
            if (ret < 0) {
                    dev_err(&client->dev, "%s: error: reg=%x, val=%x\n",
                            __func__, reg, val);
                    return ret;
            }
    
            dev_info(&client->dev, "i2c reg: 0x%x, value: 0x%x\n", reg, val);
    
            return 0;
    }

    Here is the dmesg output containing your prints for 9.03 SDK:-

    root@am57xx-evm:~# dmesg | grep "i2c reg"                                                                                                                                                    
    [    8.879516] ov5640 2-003c: i2c reg: 0x3008, value: 0x42
    [    8.921997] ov5640 2-003c: i2c reg: 0x3103, value: 0x11
    [    8.922271] ov5640 2-003c: i2c reg: 0x3103, value: 0x3
    [    8.928710] ov5640 2-003c: i2c reg: 0x3630, value: 0x36
    [    8.932128] ov5640 2-003c: i2c reg: 0x3631, value: 0xe
    [    8.932281] ov5640 2-003c: i2c reg: 0x3632, value: 0xe2
    [    8.938079] ov5640 2-003c: i2c reg: 0x3633, value: 0x12
    [    8.938232] ov5640 2-003c: i2c reg: 0x3621, value: 0xe0
    [    8.938385] ov5640 2-003c: i2c reg: 0x3704, value: 0xa0
    [    8.938537] ov5640 2-003c: i2c reg: 0x3703, value: 0x5a
    [    8.938659] ov5640 2-003c: i2c reg: 0x3715, value: 0x78
    [    8.938812] ov5640 2-003c: i2c reg: 0x3717, value: 0x1
    [    8.938934] ov5640 2-003c: i2c reg: 0x370b, value: 0x60
    [    8.939086] ov5640 2-003c: i2c reg: 0x3705, value: 0x1a
    [    8.939208] ov5640 2-003c: i2c reg: 0x3905, value: 0x2
    [    8.939361] ov5640 2-003c: i2c reg: 0x3906, value: 0x10
    [    8.939514] ov5640 2-003c: i2c reg: 0x3901, value: 0xa
    [    8.939636] ov5640 2-003c: i2c reg: 0x3731, value: 0x12
    [    8.939758] ov5640 2-003c: i2c reg: 0x3600, value: 0x8
    [    8.939910] ov5640 2-003c: i2c reg: 0x3601, value: 0x33
    [    8.940032] ov5640 2-003c: i2c reg: 0x302d, value: 0x60
    [    8.940521] ov5640 2-003c: i2c reg: 0x3620, value: 0x52
    [    8.940673] ov5640 2-003c: i2c reg: 0x371b, value: 0x20
    [    8.940795] ov5640 2-003c: i2c reg: 0x471c, value: 0x50
    [    8.940917] ov5640 2-003c: i2c reg: 0x3a13, value: 0x43
    [    8.941192] ov5640 2-003c: i2c reg: 0x3a18, value: 0x0
    [    8.941345] ov5640 2-003c: i2c reg: 0x3a19, value: 0xf8
    [    8.941467] ov5640 2-003c: i2c reg: 0x3635, value: 0x13
    [    8.941619] ov5640 2-003c: i2c reg: 0x3636, value: 0x3
    [    8.941741] ov5640 2-003c: i2c reg: 0x3634, value: 0x40
    [    8.941864] ov5640 2-003c: i2c reg: 0x3622, value: 0x1
    [    8.942016] ov5640 2-003c: i2c reg: 0x3c01, value: 0xa4
    [    8.942138] ov5640 2-003c: i2c reg: 0x3c04, value: 0x28
    [    8.942291] ov5640 2-003c: i2c reg: 0x3c05, value: 0x98
    [    8.942443] ov5640 2-003c: i2c reg: 0x3c06, value: 0x0
    [    8.942596] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [    8.942718] ov5640 2-003c: i2c reg: 0x3c08, value: 0x0
    [    8.942871] ov5640 2-003c: i2c reg: 0x3c09, value: 0x1c
    [    8.943023] ov5640 2-003c: i2c reg: 0x3c0a, value: 0x9c
    [    8.943145] ov5640 2-003c: i2c reg: 0x3c0b, value: 0x40
    [    8.943298] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [    8.943420] ov5640 2-003c: i2c reg: 0x3821, value: 0x7
    [    8.943572] ov5640 2-003c: i2c reg: 0x3814, value: 0x31
    [    8.943695] ov5640 2-003c: i2c reg: 0x3815, value: 0x31
    [    8.943847] ov5640 2-003c: i2c reg: 0x3618, value: 0x0
    [    8.943969] ov5640 2-003c: i2c reg: 0x3612, value: 0x29
    [    8.944091] ov5640 2-003c: i2c reg: 0x3708, value: 0x64
    [    8.944244] ov5640 2-003c: i2c reg: 0x3709, value: 0x52
    [    8.944366] ov5640 2-003c: i2c reg: 0x370c, value: 0x3
    [    8.944488] ov5640 2-003c: i2c reg: 0x3a02, value: 0x3
    [    8.944610] ov5640 2-003c: i2c reg: 0x3a03, value: 0xd8
    [    8.945343] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [    8.945465] ov5640 2-003c: i2c reg: 0x3a09, value: 0x27
    [    8.945617] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x0
    [    8.950897] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xf6
    [    8.951049] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [    8.951171] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x4
    [    8.951293] ov5640 2-003c: i2c reg: 0x3a14, value: 0x3
    [    8.956909] ov5640 2-003c: i2c reg: 0x3a15, value: 0xd8
    [    8.964782] ov5640 2-003c: i2c reg: 0x4001, value: 0x2
    [    9.059051] ov5640 2-003c: i2c reg: 0x4004, value: 0x2
    [    9.302093] ov5640 2-003c: i2c reg: 0x3000, value: 0x0
    [    9.584777] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [    9.638427] ov5640 2-003c: i2c reg: 0x3004, value: 0xff
    [    9.673156] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [    9.718139] ov5640 2-003c: i2c reg: 0x302e, value: 0x8
    [    9.826599] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [    9.878326] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [    9.946075] ov5640 2-003c: i2c reg: 0x440e, value: 0x0
    [   10.006500] ov5640 2-003c: i2c reg: 0x4837, value: 0xa
    [   10.057708] ov5640 2-003c: i2c reg: 0x5000, value: 0xa7
    [   10.122283] ov5640 2-003c: i2c reg: 0x5001, value: 0xa3
    [   10.164703] ov5640 2-003c: i2c reg: 0x5180, value: 0xff
    [   10.238800] ov5640 2-003c: i2c reg: 0x5181, value: 0xf2
    [   10.252563] ov5640 2-003c: i2c reg: 0x5182, value: 0x0
    [   10.259094] ov5640 2-003c: i2c reg: 0x5183, value: 0x14
    [   10.328369] ov5640 2-003c: i2c reg: 0x5184, value: 0x25
    [   10.370269] ov5640 2-003c: i2c reg: 0x5185, value: 0x24
    [   10.375335] ov5640 2-003c: i2c reg: 0x5186, value: 0x9
    [   10.376800] ov5640 2-003c: i2c reg: 0x5187, value: 0x9
    [   10.378051] ov5640 2-003c: i2c reg: 0x5188, value: 0x9
    [   10.378997] ov5640 2-003c: i2c reg: 0x5189, value: 0x88
    [   10.379943] ov5640 2-003c: i2c reg: 0x518a, value: 0x54
    [   10.380096] ov5640 2-003c: i2c reg: 0x518b, value: 0xee
    [   10.380249] ov5640 2-003c: i2c reg: 0x518c, value: 0xb2
    [   10.381225] ov5640 2-003c: i2c reg: 0x518d, value: 0x50
    [   10.381347] ov5640 2-003c: i2c reg: 0x518e, value: 0x34
    [   10.381500] ov5640 2-003c: i2c reg: 0x518f, value: 0x6b
    [   10.384429] ov5640 2-003c: i2c reg: 0x5190, value: 0x46
    [   10.385620] ov5640 2-003c: i2c reg: 0x5191, value: 0xf8
    [   10.386047] ov5640 2-003c: i2c reg: 0x5192, value: 0x4
    [   10.386199] ov5640 2-003c: i2c reg: 0x5193, value: 0x70
    [   10.386352] ov5640 2-003c: i2c reg: 0x5194, value: 0xf0
    [   10.387725] ov5640 2-003c: i2c reg: 0x5195, value: 0xf0
    [   10.387847] ov5640 2-003c: i2c reg: 0x5196, value: 0x3
    [   10.388000] ov5640 2-003c: i2c reg: 0x5197, value: 0x1
    [   10.388122] ov5640 2-003c: i2c reg: 0x5198, value: 0x4
    [   10.388305] ov5640 2-003c: i2c reg: 0x5199, value: 0x6c
    [   10.388427] ov5640 2-003c: i2c reg: 0x519a, value: 0x4
    [   10.388580] ov5640 2-003c: i2c reg: 0x519b, value: 0x0
    [   10.388702] ov5640 2-003c: i2c reg: 0x519c, value: 0x9
    [   10.388854] ov5640 2-003c: i2c reg: 0x519d, value: 0x2b
    [   10.388977] ov5640 2-003c: i2c reg: 0x519e, value: 0x38
    [   10.389129] ov5640 2-003c: i2c reg: 0x5381, value: 0x1e
    [   10.389312] ov5640 2-003c: i2c reg: 0x5382, value: 0x5b
    [   10.390289] ov5640 2-003c: i2c reg: 0x5383, value: 0x8
    [   10.390533] ov5640 2-003c: i2c reg: 0x5384, value: 0xa
    [   10.391479] ov5640 2-003c: i2c reg: 0x5385, value: 0x7e
    [   10.392211] ov5640 2-003c: i2c reg: 0x5386, value: 0x88
    [   10.393127] ov5640 2-003c: i2c reg: 0x5387, value: 0x7c
    [   10.394256] ov5640 2-003c: i2c reg: 0x5388, value: 0x6c
    [   10.394409] ov5640 2-003c: i2c reg: 0x5389, value: 0x10
    [   10.394531] ov5640 2-003c: i2c reg: 0x538a, value: 0x1
    [   10.394744] ov5640 2-003c: i2c reg: 0x538b, value: 0x98
    [   10.394866] ov5640 2-003c: i2c reg: 0x5300, value: 0x8
    [   10.395019] ov5640 2-003c: i2c reg: 0x5301, value: 0x30
    [   10.395141] ov5640 2-003c: i2c reg: 0x5302, value: 0x10
    [   10.395294] ov5640 2-003c: i2c reg: 0x5303, value: 0x0
    [   10.395446] ov5640 2-003c: i2c reg: 0x5304, value: 0x8
    [   10.395599] ov5640 2-003c: i2c reg: 0x5305, value: 0x30
    [   10.395721] ov5640 2-003c: i2c reg: 0x5306, value: 0x8
    [   10.395874] ov5640 2-003c: i2c reg: 0x5307, value: 0x16
    [   10.395996] ov5640 2-003c: i2c reg: 0x5309, value: 0x8
    [   10.396118] ov5640 2-003c: i2c reg: 0x530a, value: 0x30
    [   10.396270] ov5640 2-003c: i2c reg: 0x530b, value: 0x4
    [   10.396423] ov5640 2-003c: i2c reg: 0x530c, value: 0x6
    [   10.396545] ov5640 2-003c: i2c reg: 0x5480, value: 0x1
    [   10.396697] ov5640 2-003c: i2c reg: 0x5481, value: 0x8
    [   10.396820] ov5640 2-003c: i2c reg: 0x5482, value: 0x14
    [   10.396972] ov5640 2-003c: i2c reg: 0x5483, value: 0x28
    [   10.397125] ov5640 2-003c: i2c reg: 0x5484, value: 0x51
    [   10.397247] ov5640 2-003c: i2c reg: 0x5485, value: 0x65
    [   10.397399] ov5640 2-003c: i2c reg: 0x5486, value: 0x71
    [   10.397552] ov5640 2-003c: i2c reg: 0x5487, value: 0x7d
    [   10.397674] ov5640 2-003c: i2c reg: 0x5488, value: 0x87
    [   10.397827] ov5640 2-003c: i2c reg: 0x5489, value: 0x91
    [   10.397949] ov5640 2-003c: i2c reg: 0x548a, value: 0x9a
    [   10.398071] ov5640 2-003c: i2c reg: 0x548b, value: 0xaa
    [   10.398254] ov5640 2-003c: i2c reg: 0x548c, value: 0xb8
    [   10.399719] ov5640 2-003c: i2c reg: 0x548d, value: 0xcd
    [   10.399871] ov5640 2-003c: i2c reg: 0x548e, value: 0xdd
    [   10.399993] ov5640 2-003c: i2c reg: 0x548f, value: 0xea
    [   10.400115] ov5640 2-003c: i2c reg: 0x5490, value: 0x1d
    [   10.400299] ov5640 2-003c: i2c reg: 0x5580, value: 0x2
    [   10.400451] ov5640 2-003c: i2c reg: 0x5583, value: 0x40
    [   10.400604] ov5640 2-003c: i2c reg: 0x5584, value: 0x10
    [   10.400756] ov5640 2-003c: i2c reg: 0x5589, value: 0x10
    [   10.400878] ov5640 2-003c: i2c reg: 0x558a, value: 0x0
    [   10.401031] ov5640 2-003c: i2c reg: 0x558b, value: 0xf8
    [   10.401184] ov5640 2-003c: i2c reg: 0x5800, value: 0x23
    [   10.403320] ov5640 2-003c: i2c reg: 0x5801, value: 0x14
    [   10.404815] ov5640 2-003c: i2c reg: 0x5802, value: 0xf
    [   10.406219] ov5640 2-003c: i2c reg: 0x5803, value: 0xf
    [   10.406707] ov5640 2-003c: i2c reg: 0x5804, value: 0x12
    [   10.408081] ov5640 2-003c: i2c reg: 0x5805, value: 0x26
    [   10.409179] ov5640 2-003c: i2c reg: 0x5806, value: 0xc
    [   10.409362] ov5640 2-003c: i2c reg: 0x5807, value: 0x8
    [   10.410430] ov5640 2-003c: i2c reg: 0x5808, value: 0x5
    [   10.410644] ov5640 2-003c: i2c reg: 0x5809, value: 0x5
    [   10.411010] ov5640 2-003c: i2c reg: 0x580a, value: 0x8
    [   10.411346] ov5640 2-003c: i2c reg: 0x580b, value: 0xd
    [   10.411560] ov5640 2-003c: i2c reg: 0x580c, value: 0x8
    [   10.412658] ov5640 2-003c: i2c reg: 0x580d, value: 0x3
    [   10.414123] ov5640 2-003c: i2c reg: 0x580e, value: 0x0
    [   10.414489] ov5640 2-003c: i2c reg: 0x580f, value: 0x0
    [   10.415557] ov5640 2-003c: i2c reg: 0x5810, value: 0x3
    [   10.416534] ov5640 2-003c: i2c reg: 0x5811, value: 0x9
    [   10.416656] ov5640 2-003c: i2c reg: 0x5812, value: 0x7
    [   10.416809] ov5640 2-003c: i2c reg: 0x5813, value: 0x3
    [   10.416931] ov5640 2-003c: i2c reg: 0x5814, value: 0x0
    [   10.417083] ov5640 2-003c: i2c reg: 0x5815, value: 0x1
    [   10.417205] ov5640 2-003c: i2c reg: 0x5816, value: 0x3
    [   10.417327] ov5640 2-003c: i2c reg: 0x5817, value: 0x8
    [   10.417480] ov5640 2-003c: i2c reg: 0x5818, value: 0xd
    [   10.417602] ov5640 2-003c: i2c reg: 0x5819, value: 0x8
    [   10.417724] ov5640 2-003c: i2c reg: 0x581a, value: 0x5
    [   10.417877] ov5640 2-003c: i2c reg: 0x581b, value: 0x6
    [   10.417999] ov5640 2-003c: i2c reg: 0x581c, value: 0x8
    [   10.418121] ov5640 2-003c: i2c reg: 0x581d, value: 0xe
    [   10.418273] ov5640 2-003c: i2c reg: 0x581e, value: 0x29
    [   10.418395] ov5640 2-003c: i2c reg: 0x581f, value: 0x17
    [   10.418548] ov5640 2-003c: i2c reg: 0x5820, value: 0x11
    [   10.418670] ov5640 2-003c: i2c reg: 0x5821, value: 0x11
    [   10.418792] ov5640 2-003c: i2c reg: 0x5822, value: 0x15
    [   10.418945] ov5640 2-003c: i2c reg: 0x5823, value: 0x28
    [   10.419067] ov5640 2-003c: i2c reg: 0x5824, value: 0x46
    [   10.419189] ov5640 2-003c: i2c reg: 0x5825, value: 0x26
    [   10.419342] ov5640 2-003c: i2c reg: 0x5826, value: 0x8
    [   10.419464] ov5640 2-003c: i2c reg: 0x5827, value: 0x26
    [   10.419616] ov5640 2-003c: i2c reg: 0x5828, value: 0x64
    [   10.419738] ov5640 2-003c: i2c reg: 0x5829, value: 0x26
    [   10.419891] ov5640 2-003c: i2c reg: 0x582a, value: 0x24
    [   10.420013] ov5640 2-003c: i2c reg: 0x582b, value: 0x22
    [   10.420166] ov5640 2-003c: i2c reg: 0x582c, value: 0x24
    [   10.420288] ov5640 2-003c: i2c reg: 0x582d, value: 0x24
    [   10.420410] ov5640 2-003c: i2c reg: 0x582e, value: 0x6
    [   10.420562] ov5640 2-003c: i2c reg: 0x582f, value: 0x22
    [   10.420745] ov5640 2-003c: i2c reg: 0x5830, value: 0x40
    [   10.420898] ov5640 2-003c: i2c reg: 0x5831, value: 0x42
    [   10.421051] ov5640 2-003c: i2c reg: 0x5832, value: 0x24
    [   10.421203] ov5640 2-003c: i2c reg: 0x5833, value: 0x26
    [   10.421356] ov5640 2-003c: i2c reg: 0x5834, value: 0x24
    [   10.421478] ov5640 2-003c: i2c reg: 0x5835, value: 0x22
    [   10.421630] ov5640 2-003c: i2c reg: 0x5836, value: 0x22
    [   10.421752] ov5640 2-003c: i2c reg: 0x5837, value: 0x26
    [   10.421905] ov5640 2-003c: i2c reg: 0x5838, value: 0x44
    [   10.422027] ov5640 2-003c: i2c reg: 0x5839, value: 0x24
    [   10.422180] ov5640 2-003c: i2c reg: 0x583a, value: 0x26
    [   10.422576] ov5640 2-003c: i2c reg: 0x583b, value: 0x28
    [   10.422760] ov5640 2-003c: i2c reg: 0x583c, value: 0x42
    [   10.422882] ov5640 2-003c: i2c reg: 0x583d, value: 0xce
    [   10.423034] ov5640 2-003c: i2c reg: 0x5025, value: 0x0
    [   10.423187] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x30
    [   10.423339] ov5640 2-003c: i2c reg: 0x3a10, value: 0x28
    [   10.423461] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x30
    [   10.423675] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x26
    [   10.423889] ov5640 2-003c: i2c reg: 0x3a11, value: 0x60
    [   10.424041] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x14
    [   10.424163] ov5640 2-003c: i2c reg: 0x3c00, value: 0x4
    [   10.728118] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [   10.736541] ov5640 2-003c: i2c reg: 0x3503, value: 0x2
    [   10.736846] ov5640 2-003c: i2c reg: 0x3503, value: 0x3
    [   10.737182] ov5640 2-003c: i2c reg: 0x3034, value: 0x18
    [   10.737518] ov5640 2-003c: i2c reg: 0x3035, value: 0x20
    [   10.737884] ov5640 2-003c: i2c reg: 0x3036, value: 0x7b
    [   10.738220] ov5640 2-003c: i2c reg: 0x3037, value: 0x13
    [   10.738555] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [   10.738708] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [   10.738830] ov5640 2-003c: i2c reg: 0x3c09, value: 0x1c
    [   10.739013] ov5640 2-003c: i2c reg: 0x3c0a, value: 0x9c
    [   10.739135] ov5640 2-003c: i2c reg: 0x3c0b, value: 0x40
    [   10.739318] ov5640 2-003c: i2c reg: 0x3814, value: 0x31
    [   10.739562] ov5640 2-003c: i2c reg: 0x3815, value: 0x31
    [   10.739837] ov5640 2-003c: i2c reg: 0x3618, value: 0x0
    [   10.740142] ov5640 2-003c: i2c reg: 0x3612, value: 0x29
    [   10.740447] ov5640 2-003c: i2c reg: 0x3708, value: 0x64
    [   10.740661] ov5640 2-003c: i2c reg: 0x3709, value: 0x52
    [   10.740875] ov5640 2-003c: i2c reg: 0x370c, value: 0x3
    [   10.741271] ov5640 2-003c: i2c reg: 0x3a02, value: 0x3
    [   10.741455] ov5640 2-003c: i2c reg: 0x3a03, value: 0xd8
    [   10.741607] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [   10.741729] ov5640 2-003c: i2c reg: 0x3a09, value: 0x27
    [   10.741851] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x0
    [   10.742004] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xf6
    [   10.742156] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [   10.742279] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x4
    [   10.742462] ov5640 2-003c: i2c reg: 0x3a14, value: 0x3
    [   10.742614] ov5640 2-003c: i2c reg: 0x3a15, value: 0xd8
    [   10.742767] ov5640 2-003c: i2c reg: 0x4001, value: 0x2
    [   10.742889] ov5640 2-003c: i2c reg: 0x4004, value: 0x2
    [   10.743041] ov5640 2-003c: i2c reg: 0x4407, value: 0x4
    [   10.743164] ov5640 2-003c: i2c reg: 0x460b, value: 0x35
    [   10.743316] ov5640 2-003c: i2c reg: 0x460c, value: 0x22
    [   10.743499] ov5640 2-003c: i2c reg: 0x3824, value: 0x2
    [   10.743621] ov5640 2-003c: i2c reg: 0x5001, value: 0xa3
    [   10.744018] ov5640 2-003c: i2c reg: 0x3800, value: 0x0
    [   10.753173] ov5640 2-003c: i2c reg: 0x3801, value: 0x0
    [   10.772033] ov5640 2-003c: i2c reg: 0x3802, value: 0x0
    [   11.764617] ov5640 2-003c: i2c reg: 0x3803, value: 0x4
    [   11.773284] ov5640 2-003c: i2c reg: 0x3804, value: 0xa
    [   11.793182] ov5640 2-003c: i2c reg: 0x3805, value: 0x3f
    [   11.801391] ov5640 2-003c: i2c reg: 0x3806, value: 0x7
    [   11.827392] ov5640 2-003c: i2c reg: 0x3807, value: 0x9b
    [   11.894622] ov5640 2-003c: i2c reg: 0x3810, value: 0x0
    [   11.903869] ov5640 2-003c: i2c reg: 0x3811, value: 0x10
    [   11.931091] ov5640 2-003c: i2c reg: 0x3812, value: 0x0
    [   11.936431] ov5640 2-003c: i2c reg: 0x3813, value: 0x6
    [   11.941894] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [   11.947387] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [   11.952789] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [   11.960998] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [   11.966522] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [   11.971893] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [   11.977416] ov5640 2-003c: i2c reg: 0x380e, value: 0x4
    [   11.982788] ov5640 2-003c: i2c reg: 0x380f, value: 0x38
    [   11.988403] ov5640 2-003c: i2c reg: 0x3503, value: 0x1
    [   11.994049] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [   11.999755] ov5640 2-003c: i2c reg: 0x3821, value: 0x7
    [   12.005432] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [   12.010925] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x38
    [   12.018951] ov5640 2-003c: i2c reg: 0x3a10, value: 0x2f
    [   12.042236] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x38
    [   12.060302] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x2f
    [   12.069549] ov5640 2-003c: i2c reg: 0x3a11, value: 0x70
    [   12.075195] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x17
    [   12.082580] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x1
    [   12.087982] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xe
    [   12.093292] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x3
    [   12.098754] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [   12.104095] ov5640 2-003c: i2c reg: 0x3a09, value: 0x44
    [   12.109527] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [   12.115203] ov5640 2-003c: i2c reg: 0x4814, value: 0x2a
    [   12.120666] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [   12.126159] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [   12.131713] ov5640 2-003c: i2c reg: 0x3821, value: 0x7
    [   12.137359] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [   12.143035] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [   12.149230] ov5640 2-003c: i2c reg: 0x4730, value: 0x0
    [   12.154693] ov5640 2-003c: i2c reg: 0x4740, value: 0x22
    [   12.161254] ov5640 2-003c: i2c reg: 0x300e, value: 0x18
    [   12.168792] ov5640 2-003c: i2c reg: 0x3017, value: 0x7f
    [   12.177368] ov5640 2-003c: i2c reg: 0x3018, value: 0xfc
    

    While for 6.03 SDK the camera driver's function ov5640_write_reg didn't get called on boot so no dmesg logs.

    May be some other function is getting called at boot. I can attach the source code for ov5640.c for both the SDKs. 

    6.03 's ov5640.c source code has been modified as per our requirements,

    -Vishal

  • Hi Vishal,

    I've looked over the 6.03 driver (ti-linux-4.19.y). The only 3 places an i2c_transfer happen are in ov5640_init_slave_id, ov5640_write_reg, and ov5640_read_reg. ov5640_write_reg has to be called within the initialization of the camera.

    Are you reinstalling the driver after rebuilding it on the 6.03 image?

    Best,
    Jared

  • Jared,

    Are you reinstalling the driver after rebuilding it on the 6.03 image?

    Yes, I copied the newly compiled ov5640.ko to my board using scp and rebooted. When I open the camera feed, the ov5640_write_reg function does get called — I can confirm this from the debug prints.

    However, it doesn’t seem to be called during boot.

    That’s why I asked if you needed the source code of our modified camera driver from the 6.03 SDK. It’s possible that its initialization flow got affected after our changes.

    -Vishal

  • Hi Vishal,

    Please send your modified camera driver.

    If it isn't called during boot, this means the probe function isn't running. How is this possible?

    Best,
    Jared

  • Hi Jared, 

    My reply got delayed. I was not well, yet again.

    If it isn't called during boot, this means the probe function isn't running. How is this possible?

    If the probe function was not running then how come the camera is working fine in 6.03 SDK. I think the flow of initialization is different in 6.03 as compared to 9.03. 

    Anyway, PFA the ov4640.c file for 6.03 SDK.

    6472.ov5640.c

    You can take take the diff from the 6.03 SDK's original ov5640.c driver.

     

    -Vishal

  • Hi Jared, 

    My reply got delayed. I was not well, yet again.

    If it isn't called during boot, this means the probe function isn't running. How is this possible?

    If the probe function was not running then how come the camera is working fine in 6.03 SDK. I think the flow of initialization is different in 6.03 as compared to 9.03. 

    Anyway, PFA the ov5640.c file for 6.03 SDK.

    3247.ov5640.c

    You can take take the diff from the 6.03 SDK's original ov5640.c driver.

     Please note that after uploading the driver file, its name got modified as 3247.ov5640.c.

    -Vishal

  • Hi Vishal,

    It looks like the registers are set during the stream on/off functions.

    Can you run the camera (and start the stream), then send the dmesg logs of the I2C writes?

    It would also be helpful if you add a dev_info for when the sensor starts and stops streaming. 

    Best,
    Jared

  • Jared,

    It looks like the registers are set during the stream on/off functions.

    Yeah but could you figure out the reason for why the registers are not set during boot? Is it the default design in 6.03 SDK's ov5640 driver ? Was just curious so asked.

    Can you run the camera (and start the stream), then send the dmesg logs of the I2C writes?

    Ok I will send you.

    It would also be helpful if you add a dev_info for when the sensor starts and stops streaming. 

    I guess this is the function for when the stream starts.  Where exactly do you want me to put the dev_info statement inside it ?

    Also tell exact statement for dev_info command that is to be run. 

    static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
    {
            //printk(KERN_ALERT  "\nCDOT: Inside %s %d \n", __FUNCTION__,__LINE__);
            struct ov5640_dev *sensor = to_ov5640_dev(sd);
            int ret = 0;
    
            mutex_lock(&sensor->lock);
    
            if (sensor->streaming == !enable) {
                    if (enable && sensor->pending_mode_change) {
                            ret = ov5640_set_mode(sensor);
                            if (ret)
                                    goto out;
                    }
    
                    if (enable && sensor->pending_fmt_change) {
                            ret = ov5640_set_framefmt(sensor, &sensor->fmt);
                            if (ret)
                                    goto out;
                            sensor->pending_fmt_change = false;
                    }
    
                    if (sensor->ep.bus_type == V4L2_MBUS_CSI2)
                            ret = ov5640_set_stream_mipi(sensor, enable);
                    else
                            ret = ov5640_set_stream_dvp(sensor, enable);
    
                    if (!ret)
                            sensor->streaming = enable;
    
                    //CDOT - Changes Start 
                    ret = ov5640_load_regs(sensor, &ov5640_mode_init_data);
                    if(sensor->current_mode->hact == 640 && sensor->current_mode->vact == 480)
                    {
                            printk("Resolution set to 640 x 480\n");
                            ret = ov5640_load_regs(sensor, &ov5640_mode_data[OV5640_MODE_VGA_640_480]);
                    }
                    else if(sensor->current_mode->hact == 1280 && sensor->current_mode->vact == 720)
                    {
                            printk("Resolution set to 1280 x 720\n");
                            ret = ov5640_load_regs(sensor, &ov5640_mode_data[OV5640_MODE_720P_1280_720]);
                    }
                    //CDOT - Changes End
                    else if(sensor->current_mode->hact == 1920 && sensor->current_mode->vact == 1080)
                    {
                            printk("Resolution set to 1920 x 1080\n");
                            ret = ov5640_load_regs(sensor, &ov5640_mode_data[OV5640_MODE_1080P_1920_1080]);   //VM_AK Changes
                    }
                    else if(sensor->current_mode->hact == 2592 && sensor->current_mode->vact == 1944)
                            ret = ov5640_load_regs(sensor, &ov5640_mode_data[OV5640_MODE_QSXGA_2592_1944]);   //VM_AK Changes
                    else if(sensor->current_mode->hact == 1024 && sensor->current_mode->vact == 768)
                            ret = ov5640_load_regs(sensor, &ov5640_mode_data[OV5640_MODE_XGA_1024_768]);   //VM_AK Changes
            }
    out:
            mutex_unlock(&sensor->lock);
            return ret;
    }
    

    I can't see any function for stopping the stream. Please tell the name of the specific function involved in stream stopping along with exact dev_info command to be put inside it. 

    -Vishal

  • Hi Vishal,

    Yeah but could you figure out the reason for why the registers are not set during boot? Is it the default design in 6.03 SDK's ov5640 driver ? Was just curious so asked.

    It's just the way the driver is written.

    I guess this is the function for when the stream starts.  Where exactly do you want me to put the dev_info statement inside it ?

    Keep the dev_info in the ov5640_write_reg function. The ov5640_write_reg function will be called by ov5640_s_stream.

    I can't see any function for stopping the stream. Please tell the name of the specific function involved in stream stopping along with exact dev_info command to be put inside it. 

    The ov5640_s_stream function both starts and stops the streaming of the sensor depending on the value of enable. You just need to put something like:

    dev_info(sensor->i2c_client->dev, "stream enable: %d\n", enable);

    before

    mutex_lock(&sensor->lock);

    Best,
    Jared

  • Jared,

    Here is the output of dmesg command when I ran the command below for roughly 5 seconds after which I pressed Ctrl-C :-

    /usr/bin/dmabuftest -s 54:1024x600 -d /dev/video1 -c ""640x480"@"YUYV""
    Opening Display..
    using 1 connectors, 1024x600 display, multiplanar: 1
    Setting mode 1024x600 on connector 54, crtc 55
    Opening V4L2..
    Exported buffer fd = 6
    
    Exported buffer fd = 8
    
    Exported buffer fd = 10
    
    Exported buffer fd = 12
    
    Exported buffer fd = 14
    
    Exported buffer fd = 16
    
    ^C
    

    root@am57xx-evm:~# dmesg
    [  275.540037] ov5640 2-003c: i2c reg: 0x3103, value: 0x11
    [  275.545408] ov5640 2-003c: i2c reg: 0x3008, value: 0x82
    [  275.555940] ov5640 2-003c: i2c reg: 0x3008, value: 0x42
    [  275.561498] ov5640 2-003c: i2c reg: 0x3103, value: 0x3
    [  275.566787] ov5640 2-003c: i2c reg: 0x3017, value: 0xff
    [  275.572192] ov5640 2-003c: i2c reg: 0x3018, value: 0xff
    [  275.577558] ov5640 2-003c: i2c reg: 0x3034, value: 0x1a
    [  275.583114] ov5640 2-003c: i2c reg: 0x3037, value: 0x13
    [  275.588482] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [  275.593787] ov5640 2-003c: i2c reg: 0x3630, value: 0x36
    [  275.599306] ov5640 2-003c: i2c reg: 0x3631, value: 0xe
    [  275.604586] ov5640 2-003c: i2c reg: 0x3632, value: 0xe2
    [  275.609977] ov5640 2-003c: i2c reg: 0x3633, value: 0x12
    [  275.615351] ov5640 2-003c: i2c reg: 0x3621, value: 0xe0
    [  275.620855] ov5640 2-003c: i2c reg: 0x3704, value: 0xa0
    [  275.626243] ov5640 2-003c: i2c reg: 0x3703, value: 0x5a
    [  275.631640] ov5640 2-003c: i2c reg: 0x3715, value: 0x78
    [  275.637006] ov5640 2-003c: i2c reg: 0x3717, value: 0x1
    [  275.642446] ov5640 2-003c: i2c reg: 0x370b, value: 0x60
    [  275.647820] ov5640 2-003c: i2c reg: 0x3705, value: 0x1a
    [  275.653209] ov5640 2-003c: i2c reg: 0x3905, value: 0x2
    [  275.658487] ov5640 2-003c: i2c reg: 0x3906, value: 0x10
    [  275.663992] ov5640 2-003c: i2c reg: 0x3901, value: 0xa
    [  275.669300] ov5640 2-003c: i2c reg: 0x3731, value: 0x12
    [  275.674667] ov5640 2-003c: i2c reg: 0x3600, value: 0x8
    [  275.679981] ov5640 2-003c: i2c reg: 0x3601, value: 0x33
    [  275.685479] ov5640 2-003c: i2c reg: 0x302d, value: 0x60
    [  275.690883] ov5640 2-003c: i2c reg: 0x3620, value: 0x52
    [  275.696250] ov5640 2-003c: i2c reg: 0x371b, value: 0x20
    [  275.701775] ov5640 2-003c: i2c reg: 0x471c, value: 0x50
    [  275.707142] ov5640 2-003c: i2c reg: 0x3a13, value: 0x43
    [  275.712546] ov5640 2-003c: i2c reg: 0x3a18, value: 0x0
    [  275.717833] ov5640 2-003c: i2c reg: 0x3a19, value: 0xf8
    [  275.723337] ov5640 2-003c: i2c reg: 0x3635, value: 0x13
    [  275.728703] ov5640 2-003c: i2c reg: 0x3636, value: 0x3
    [  275.734700] ov5640 2-003c: i2c reg: 0x3634, value: 0x40
    [  275.741640] ov5640 2-003c: i2c reg: 0x3622, value: 0x1
    [  275.746925] ov5640 2-003c: i2c reg: 0x3c01, value: 0x34
    [  275.753399] ov5640 2-003c: i2c reg: 0x3c04, value: 0x28
    [  275.759251] ov5640 2-003c: i2c reg: 0x3c05, value: 0x98
    [  275.764684] ov5640 2-003c: i2c reg: 0x3c06, value: 0x0
    [  275.770956] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  275.776295] ov5640 2-003c: i2c reg: 0x3c08, value: 0x0
    [  275.782642] ov5640 2-003c: i2c reg: 0x3c09, value: 0x1c
    [  275.788074] ov5640 2-003c: i2c reg: 0x3c0a, value: 0x9c
    [  275.793472] ov5640 2-003c: i2c reg: 0x3c0b, value: 0x40
    [  275.798925] ov5640 2-003c: i2c reg: 0x3810, value: 0x0
    [  275.804204] ov5640 2-003c: i2c reg: 0x3811, value: 0x10
    [  275.809643] ov5640 2-003c: i2c reg: 0x3812, value: 0x0
    [  275.814923] ov5640 2-003c: i2c reg: 0x3708, value: 0x64
    [  275.820408] ov5640 2-003c: i2c reg: 0x4001, value: 0x2
    [  275.825687] ov5640 2-003c: i2c reg: 0x4005, value: 0x1a
    [  275.831128] ov5640 2-003c: i2c reg: 0x3000, value: 0x0
    [  275.836408] ov5640 2-003c: i2c reg: 0x3004, value: 0xff
    [  275.841938] ov5640 2-003c: i2c reg: 0x300e, value: 0x58
    [  275.847325] ov5640 2-003c: i2c reg: 0x302e, value: 0x0
    [  275.852687] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [  275.858072] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [  275.863439] ov5640 2-003c: i2c reg: 0x5000, value: 0xa7
    [  275.868832] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x38
    [  275.874255] ov5640 2-003c: i2c reg: 0x3a10, value: 0x30
    [  275.879657] ov5640 2-003c: i2c reg: 0x3a11, value: 0x61
    [  275.885082] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x38
    [  275.890470] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x30
    [  275.895878] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x10
    [  275.901278] ov5640 2-003c: i2c reg: 0x5800, value: 0x23
    [  275.906703] ov5640 2-003c: i2c reg: 0x5801, value: 0x14
    [  275.912089] ov5640 2-003c: i2c reg: 0x5802, value: 0xf
    [  275.917410] ov5640 2-003c: i2c reg: 0x5803, value: 0xf
    [  275.922722] ov5640 2-003c: i2c reg: 0x5804, value: 0x12
    [  275.928129] ov5640 2-003c: i2c reg: 0x5805, value: 0x26
    [  275.934118] ov5640 2-003c: i2c reg: 0x5806, value: 0xc
    [  275.940000] ov5640 2-003c: i2c reg: 0x5807, value: 0x8
    [  275.945282] ov5640 2-003c: i2c reg: 0x5808, value: 0x5
    [  275.951683] ov5640 2-003c: i2c reg: 0x5809, value: 0x5
    [  275.956967] ov5640 2-003c: i2c reg: 0x580a, value: 0x8
    [  275.962402] ov5640 2-003c: i2c reg: 0x580b, value: 0xd
    [  275.967682] ov5640 2-003c: i2c reg: 0x580c, value: 0x8
    [  275.973117] ov5640 2-003c: i2c reg: 0x580d, value: 0x3
    [  275.978396] ov5640 2-003c: i2c reg: 0x580e, value: 0x0
    [  275.984181] ov5640 2-003c: i2c reg: 0x580f, value: 0x0
    [  275.989496] ov5640 2-003c: i2c reg: 0x5810, value: 0x3
    [  275.994904] ov5640 2-003c: i2c reg: 0x5811, value: 0x9
    [  276.000377] ov5640 2-003c: i2c reg: 0x5812, value: 0x7
    [  276.006047] ov5640 2-003c: i2c reg: 0x5813, value: 0x3
    [  276.011681] ov5640 2-003c: i2c reg: 0x5814, value: 0x0
    [  276.017010] ov5640 2-003c: i2c reg: 0x5815, value: 0x1
    [  276.022318] ov5640 2-003c: i2c reg: 0x5816, value: 0x3
    [  276.027641] ov5640 2-003c: i2c reg: 0x5817, value: 0x8
    [  276.033049] ov5640 2-003c: i2c reg: 0x5818, value: 0xd
    [  276.038374] ov5640 2-003c: i2c reg: 0x5819, value: 0x8
    [  276.043672] ov5640 2-003c: i2c reg: 0x581a, value: 0x5
    [  276.049012] ov5640 2-003c: i2c reg: 0x581b, value: 0x6
    [  276.054382] ov5640 2-003c: i2c reg: 0x581c, value: 0x8
    [  276.059726] ov5640 2-003c: i2c reg: 0x581d, value: 0xe
    [  276.065004] ov5640 2-003c: i2c reg: 0x581e, value: 0x29
    [  276.070419] ov5640 2-003c: i2c reg: 0x581f, value: 0x17
    [  276.075873] ov5640 2-003c: i2c reg: 0x5820, value: 0x11
    [  276.081329] ov5640 2-003c: i2c reg: 0x5821, value: 0x11
    [  276.086694] ov5640 2-003c: i2c reg: 0x5822, value: 0x15
    [  276.092192] ov5640 2-003c: i2c reg: 0x5823, value: 0x28
    [  276.097559] ov5640 2-003c: i2c reg: 0x5824, value: 0x46
    [  276.103095] ov5640 2-003c: i2c reg: 0x5825, value: 0x26
    [  276.108460] ov5640 2-003c: i2c reg: 0x5826, value: 0x8
    [  276.113877] ov5640 2-003c: i2c reg: 0x5827, value: 0x26
    [  276.119278] ov5640 2-003c: i2c reg: 0x5828, value: 0x64
    [  276.124677] ov5640 2-003c: i2c reg: 0x5829, value: 0x26
    [  276.130064] ov5640 2-003c: i2c reg: 0x582a, value: 0x24
    [  276.135547] ov5640 2-003c: i2c reg: 0x582b, value: 0x22
    [  276.140949] ov5640 2-003c: i2c reg: 0x582c, value: 0x24
    [  276.146348] ov5640 2-003c: i2c reg: 0x582d, value: 0x24
    [  276.151733] ov5640 2-003c: i2c reg: 0x582e, value: 0x6
    [  276.157125] ov5640 2-003c: i2c reg: 0x582f, value: 0x22
    [  276.162526] ov5640 2-003c: i2c reg: 0x5830, value: 0x40
    [  276.167924] ov5640 2-003c: i2c reg: 0x5831, value: 0x42
    [  276.173309] ov5640 2-003c: i2c reg: 0x5832, value: 0x24
    [  276.178790] ov5640 2-003c: i2c reg: 0x5833, value: 0x26
    [  276.184156] ov5640 2-003c: i2c reg: 0x5834, value: 0x24
    [  276.189569] ov5640 2-003c: i2c reg: 0x5835, value: 0x22
    [  276.195026] ov5640 2-003c: i2c reg: 0x5836, value: 0x22
    [  276.200451] ov5640 2-003c: i2c reg: 0x5837, value: 0x26
    [  276.205827] ov5640 2-003c: i2c reg: 0x5838, value: 0x44
    [  276.211253] ov5640 2-003c: i2c reg: 0x5839, value: 0x24
    [  276.216757] ov5640 2-003c: i2c reg: 0x583a, value: 0x26
    [  276.222217] ov5640 2-003c: i2c reg: 0x583b, value: 0x28
    [  276.227589] ov5640 2-003c: i2c reg: 0x583c, value: 0x42
    [  276.233023] ov5640 2-003c: i2c reg: 0x583d, value: 0xce
    [  276.238522] ov5640 2-003c: i2c reg: 0x5180, value: 0xff
    [  276.243963] ov5640 2-003c: i2c reg: 0x5181, value: 0xf2
    [  276.249353] ov5640 2-003c: i2c reg: 0x5182, value: 0x0
    [  276.254762] ov5640 2-003c: i2c reg: 0x5183, value: 0x14
    [  276.260627] ov5640 2-003c: i2c reg: 0x5184, value: 0x25
    [  276.266032] ov5640 2-003c: i2c reg: 0x5185, value: 0x24
    [  276.271421] ov5640 2-003c: i2c reg: 0x5186, value: 0x9
    [  276.277194] ov5640 2-003c: i2c reg: 0x5187, value: 0x9
    [  276.282853] ov5640 2-003c: i2c reg: 0x5188, value: 0x9
    [  276.288171] ov5640 2-003c: i2c reg: 0x5189, value: 0x75
    [  276.293590] ov5640 2-003c: i2c reg: 0x518a, value: 0x54
    [  276.299030] ov5640 2-003c: i2c reg: 0x518b, value: 0xe0
    [  276.304396] ov5640 2-003c: i2c reg: 0x518c, value: 0xb2
    [  276.309814] ov5640 2-003c: i2c reg: 0x518d, value: 0x42
    [  276.315183] ov5640 2-003c: i2c reg: 0x518e, value: 0x3d
    [  276.320648] ov5640 2-003c: i2c reg: 0x518f, value: 0x56
    [  276.326036] ov5640 2-003c: i2c reg: 0x5190, value: 0x46
    [  276.331462] ov5640 2-003c: i2c reg: 0x5191, value: 0xf8
    [  276.336849] ov5640 2-003c: i2c reg: 0x5192, value: 0x4
    [  276.342197] ov5640 2-003c: i2c reg: 0x5193, value: 0x70
    [  276.347580] ov5640 2-003c: i2c reg: 0x5194, value: 0xf0
    [  276.353004] ov5640 2-003c: i2c reg: 0x5195, value: 0xf0
    [  276.358368] ov5640 2-003c: i2c reg: 0x5196, value: 0x3
    [  276.363703] ov5640 2-003c: i2c reg: 0x5197, value: 0x1
    [  276.369000] ov5640 2-003c: i2c reg: 0x5198, value: 0x4
    [  276.374312] ov5640 2-003c: i2c reg: 0x5199, value: 0x12
    [  276.379714] ov5640 2-003c: i2c reg: 0x519a, value: 0x4
    [  276.385084] ov5640 2-003c: i2c reg: 0x519b, value: 0x0
    [  276.390383] ov5640 2-003c: i2c reg: 0x519c, value: 0x6
    [  276.395694] ov5640 2-003c: i2c reg: 0x519d, value: 0x82
    [  276.401113] ov5640 2-003c: i2c reg: 0x519e, value: 0x38
    [  276.406512] ov5640 2-003c: i2c reg: 0x5480, value: 0x1
    [  276.411810] ov5640 2-003c: i2c reg: 0x5481, value: 0x8
    [  276.417123] ov5640 2-003c: i2c reg: 0x5482, value: 0x14
    [  276.422523] ov5640 2-003c: i2c reg: 0x5483, value: 0x28
    [  276.427922] ov5640 2-003c: i2c reg: 0x5484, value: 0x51
    [  276.433310] ov5640 2-003c: i2c reg: 0x5485, value: 0x65
    [  276.438707] ov5640 2-003c: i2c reg: 0x5486, value: 0x71
    [  276.444108] ov5640 2-003c: i2c reg: 0x5487, value: 0x7d
    [  276.449521] ov5640 2-003c: i2c reg: 0x5488, value: 0x87
    [  276.454886] ov5640 2-003c: i2c reg: 0x5489, value: 0x91
    [  276.460806] ov5640 2-003c: i2c reg: 0x548a, value: 0x9a
    [  276.466172] ov5640 2-003c: i2c reg: 0x548b, value: 0xaa
    [  276.471586] ov5640 2-003c: i2c reg: 0x548c, value: 0xb8
    [  276.476950] ov5640 2-003c: i2c reg: 0x548d, value: 0xcd
    [  276.482373] ov5640 2-003c: i2c reg: 0x548e, value: 0xdd
    [  276.487740] ov5640 2-003c: i2c reg: 0x548f, value: 0xea
    [  276.493153] ov5640 2-003c: i2c reg: 0x5490, value: 0x1d
    [  276.498519] ov5640 2-003c: i2c reg: 0x5381, value: 0x1c
    [  276.503957] ov5640 2-003c: i2c reg: 0x5382, value: 0x5a
    [  276.509341] ov5640 2-003c: i2c reg: 0x5383, value: 0x6
    [  276.514653] ov5640 2-003c: i2c reg: 0x5384, value: 0x24
    [  276.520053] ov5640 2-003c: i2c reg: 0x5385, value: 0x8f
    [  276.525451] ov5640 2-003c: i2c reg: 0x5386, value: 0xb3
    [  276.530837] ov5640 2-003c: i2c reg: 0x5387, value: 0xb6
    [  276.536236] ov5640 2-003c: i2c reg: 0x5388, value: 0xb3
    [  276.541636] ov5640 2-003c: i2c reg: 0x5389, value: 0x3
    [  276.547146] ov5640 2-003c: i2c reg: 0x538b, value: 0x98
    [  276.552882] ov5640 2-003c: i2c reg: 0x538a, value: 0x1
    [  276.558200] ov5640 2-003c: i2c reg: 0x5580, value: 0x6
    [  276.563520] ov5640 2-003c: i2c reg: 0x5583, value: 0x40
    [  276.568956] ov5640 2-003c: i2c reg: 0x5584, value: 0x10
    [  276.574321] ov5640 2-003c: i2c reg: 0x5589, value: 0x10
    [  276.579748] ov5640 2-003c: i2c reg: 0x558a, value: 0x0
    [  276.585027] ov5640 2-003c: i2c reg: 0x558b, value: 0xf8
    [  276.590452] ov5640 2-003c: i2c reg: 0x501d, value: 0x40
    [  276.595817] ov5640 2-003c: i2c reg: 0x5300, value: 0x8
    [  276.601145] ov5640 2-003c: i2c reg: 0x5301, value: 0x30
    [  276.606510] ov5640 2-003c: i2c reg: 0x5302, value: 0x10
    [  276.611933] ov5640 2-003c: i2c reg: 0x5303, value: 0x0
    [  276.617211] ov5640 2-003c: i2c reg: 0x5304, value: 0x8
    [  276.622537] ov5640 2-003c: i2c reg: 0x5305, value: 0x30
    [  276.627903] ov5640 2-003c: i2c reg: 0x5306, value: 0x8
    [  276.633242] ov5640 2-003c: i2c reg: 0x5307, value: 0x16
    [  276.638609] ov5640 2-003c: i2c reg: 0x5309, value: 0x8
    [  276.643934] ov5640 2-003c: i2c reg: 0x530a, value: 0x30
    [  276.649347] ov5640 2-003c: i2c reg: 0x530b, value: 0x4
    [  276.654659] ov5640 2-003c: i2c reg: 0x530c, value: 0x6
    [  276.659971] ov5640 2-003c: i2c reg: 0x5025, value: 0x0
    [  276.665282] ov5640 2-003c: i2c reg: 0x3008, value: 0x2
    [  276.670580] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  276.675891] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  276.681291] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  276.686602] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  276.691989] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  276.697300] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  276.702704] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  276.708016] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  276.713597] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [  276.719087] ov5640 2-003c: i2c reg: 0x3503, value: 0x2
    [  276.724523] ov5640 2-003c: i2c reg: 0x3503, value: 0x3
    [  276.730050] ov5640 2-003c: i2c reg: 0x3034, value: 0x18
    [  276.735572] ov5640 2-003c: i2c reg: 0x3035, value: 0x10
    [  276.741148] ov5640 2-003c: i2c reg: 0x3036, value: 0x38
    [  276.746671] ov5640 2-003c: i2c reg: 0x3037, value: 0x13
    [  276.752242] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [  276.757520] ov5640 2-003c: i2c reg: 0x3035, value: 0x11
    [  276.763054] ov5640 2-003c: i2c reg: 0x3036, value: 0x46
    [  276.768419] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  276.773748] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [  276.779133] ov5640 2-003c: i2c reg: 0x3821, value: 0x8
    [  276.784444] ov5640 2-003c: i2c reg: 0x3814, value: 0x31
    [  276.789829] ov5640 2-003c: i2c reg: 0x3815, value: 0x31
    [  276.795227] ov5640 2-003c: i2c reg: 0x3800, value: 0x0
    [  276.800544] ov5640 2-003c: i2c reg: 0x3801, value: 0x0
    [  276.805860] ov5640 2-003c: i2c reg: 0x3802, value: 0x0
    [  276.811157] ov5640 2-003c: i2c reg: 0x3803, value: 0x4
    [  276.816735] ov5640 2-003c: i2c reg: 0x3804, value: 0xa
    [  276.822232] ov5640 2-003c: i2c reg: 0x3805, value: 0x3f
    [  276.827638] ov5640 2-003c: i2c reg: 0x3806, value: 0x7
    [  276.832940] ov5640 2-003c: i2c reg: 0x3807, value: 0x9b
    [  276.838338] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  276.843639] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  276.849051] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  276.854329] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  276.859748] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  276.865027] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  276.870441] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  276.875720] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  276.881172] ov5640 2-003c: i2c reg: 0x3813, value: 0x6
    [  276.886470] ov5640 2-003c: i2c reg: 0x3618, value: 0x0
    [  276.891808] ov5640 2-003c: i2c reg: 0x3612, value: 0x29
    [  276.897193] ov5640 2-003c: i2c reg: 0x3709, value: 0x52
    [  276.902619] ov5640 2-003c: i2c reg: 0x370c, value: 0x3
    [  276.907915] ov5640 2-003c: i2c reg: 0x3a02, value: 0x17
    [  276.913340] ov5640 2-003c: i2c reg: 0x3a03, value: 0x10
    [  276.918706] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [  276.924050] ov5640 2-003c: i2c reg: 0x3a09, value: 0x27
    [  276.929434] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x0
    [  276.934745] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xf6
    [  276.940132] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [  276.945443] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x4
    [  276.950741] ov5640 2-003c: i2c reg: 0x3a14, value: 0x17
    [  276.956138] ov5640 2-003c: i2c reg: 0x3a15, value: 0x10
    [  276.961541] ov5640 2-003c: i2c reg: 0x4004, value: 0x2
    [  276.966853] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [  276.972262] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [  276.977660] ov5640 2-003c: i2c reg: 0x4713, value: 0x3
    [  276.982960] ov5640 2-003c: i2c reg: 0x4407, value: 0x4
    [  276.988270] ov5640 2-003c: i2c reg: 0x460b, value: 0x35
    [  276.993657] ov5640 2-003c: i2c reg: 0x460c, value: 0x22
    [  276.999070] ov5640 2-003c: i2c reg: 0x4837, value: 0x22
    [  277.004436] ov5640 2-003c: i2c reg: 0x3824, value: 0x2
    [  277.009764] ov5640 2-003c: i2c reg: 0x5001, value: 0xa3
    [  277.015130] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  277.020806] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  277.026083] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  277.031498] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  277.036775] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  277.042232] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  277.047512] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  277.052927] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  277.058206] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  277.063778] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  277.069233] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  277.074701] ov5640 2-003c: i2c reg: 0x3821, value: 0x9
    [  277.080160] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [  277.085863] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x38
    [  277.091446] ov5640 2-003c: i2c reg: 0x3a10, value: 0x2f
    [  277.096850] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x38
    [  277.102240] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x2f
    [  277.108176] ov5640 2-003c: i2c reg: 0x3a11, value: 0x70
    [  277.113570] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x17
    [  277.120704] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x1
    [  277.125983] ov5640 2-003c: i2c reg: 0x3a0b, value: 0x33
    [  277.131420] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x3
    [  277.136699] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [  277.142029] ov5640 2-003c: i2c reg: 0x3a09, value: 0x71
    [  277.147394] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x2
    [  277.152905] ov5640 2-003c: i2c reg: 0x4814, value: 0x2a
    [  277.169701] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [  277.176142] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [  277.182617] ov5640 2-003c: i2c reg: 0x3821, value: 0x9
    [  277.188109] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [  277.193796] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [  277.199957] ov5640 2-003c: i2c reg: 0x3406, value: 0x0
    [  277.205401] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  277.210868] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  277.216149] ov5640 2-003c: i2c reg: 0x5384, value: 0x10
    [  277.221566] ov5640 2-003c: i2c reg: 0x5385, value: 0x3d
    [  277.226932] ov5640 2-003c: i2c reg: 0x5386, value: 0x4d
    [  277.232321] ov5640 2-003c: i2c reg: 0x5387, value: 0x4e
    [  277.237690] ov5640 2-003c: i2c reg: 0x5388, value: 0x4d
    [  277.243087] ov5640 2-003c: i2c reg: 0x5389, value: 0x1
    [  277.248524] ov5640 2-003c: i2c reg: 0x5580, value: 0x6
    [  277.253824] ov5640 2-003c: i2c reg: 0x5585, value: 0x10
    [  277.259219] ov5640 2-003c: i2c reg: 0x5586, value: 0x10
    [  277.264694] ov5640 2-003c: i2c reg: 0x5587, value: 0x40
    [  277.270084] ov5640 2-003c: i2c reg: 0x5588, value: 0x9
    [  277.275521] ov5640 2-003c: i2c reg: 0x503d, value: 0x0
    [  277.280979] ov5640 2-003c: i2c reg: 0x3821, value: 0x9
    [  277.286414] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [  277.291964] ov5640 2-003c: i2c reg: 0x3c01, value: 0xb4
    [  277.297565] ov5640 2-003c: i2c reg: 0x3c00, value: 0x4
    [  277.303013] ov5640 2-003c: stream enable: 1
    [  277.307332] ov5640 2-003c: i2c reg: 0x4740, value: 0x3
    [  277.312630] ov5640 2-003c: i2c reg: 0x300e, value: 0x18
    [  277.317996] ov5640 2-003c: i2c reg: 0x3017, value: 0x7f
    [  277.323379] ov5640 2-003c: i2c reg: 0x3018, value: 0xfc
    [  277.328744] ov5640 2-003c: i2c reg: 0x3103, value: 0x11
    [  277.334128] ov5640 2-003c: i2c reg: 0x3008, value: 0x82
    [  277.344644] ov5640 2-003c: i2c reg: 0x3008, value: 0x42
    [  277.350033] ov5640 2-003c: i2c reg: 0x3103, value: 0x3
    [  277.355651] ov5640 2-003c: i2c reg: 0x3017, value: 0xff
    [  277.361282] ov5640 2-003c: i2c reg: 0x3018, value: 0xff
    [  277.366673] ov5640 2-003c: i2c reg: 0x3034, value: 0x1a
    [  277.372080] ov5640 2-003c: i2c reg: 0x3037, value: 0x13
    [  277.377463] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [  277.382775] ov5640 2-003c: i2c reg: 0x3630, value: 0x36
    [  277.388158] ov5640 2-003c: i2c reg: 0x3631, value: 0xe
    [  277.393472] ov5640 2-003c: i2c reg: 0x3632, value: 0xe2
    [  277.398923] ov5640 2-003c: i2c reg: 0x3633, value: 0x12
    [  277.404287] ov5640 2-003c: i2c reg: 0x3621, value: 0xe0
    [  277.409674] ov5640 2-003c: i2c reg: 0x3704, value: 0xa0
    [  277.415039] ov5640 2-003c: i2c reg: 0x3703, value: 0x5a
    [  277.420424] ov5640 2-003c: i2c reg: 0x3715, value: 0x78
    [  277.425789] ov5640 2-003c: i2c reg: 0x3717, value: 0x1
    [  277.431087] ov5640 2-003c: i2c reg: 0x370b, value: 0x60
    [  277.436453] ov5640 2-003c: i2c reg: 0x3705, value: 0x1a
    [  277.441837] ov5640 2-003c: i2c reg: 0x3905, value: 0x2
    [  277.447115] ov5640 2-003c: i2c reg: 0x3906, value: 0x10
    [  277.452501] ov5640 2-003c: i2c reg: 0x3901, value: 0xa
    [  277.457778] ov5640 2-003c: i2c reg: 0x3731, value: 0x12
    [  277.463160] ov5640 2-003c: i2c reg: 0x3600, value: 0x8
    [  277.468438] ov5640 2-003c: i2c reg: 0x3601, value: 0x33
    [  277.473826] ov5640 2-003c: i2c reg: 0x302d, value: 0x60
    [  277.479207] ov5640 2-003c: i2c reg: 0x3620, value: 0x52
    [  277.484571] ov5640 2-003c: i2c reg: 0x371b, value: 0x20
    [  277.489957] ov5640 2-003c: i2c reg: 0x471c, value: 0x50
    [  277.495322] ov5640 2-003c: i2c reg: 0x3a13, value: 0x43
    [  277.500909] ov5640 2-003c: i2c reg: 0x3a18, value: 0x0
    [  277.506187] ov5640 2-003c: i2c reg: 0x3a19, value: 0xf8
    [  277.511574] ov5640 2-003c: i2c reg: 0x3635, value: 0x13
    [  277.516939] ov5640 2-003c: i2c reg: 0x3636, value: 0x3
    [  277.522235] ov5640 2-003c: i2c reg: 0x3634, value: 0x40
    [  277.527601] ov5640 2-003c: i2c reg: 0x3622, value: 0x1
    [  277.532899] ov5640 2-003c: i2c reg: 0x3c01, value: 0x34
    [  277.538264] ov5640 2-003c: i2c reg: 0x3c04, value: 0x28
    [  277.543646] ov5640 2-003c: i2c reg: 0x3c05, value: 0x98
    [  277.549051] ov5640 2-003c: i2c reg: 0x3c06, value: 0x0
    [  277.554330] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  277.559626] ov5640 2-003c: i2c reg: 0x3c08, value: 0x0
    [  277.564904] ov5640 2-003c: i2c reg: 0x3c09, value: 0x1c
    [  277.570290] ov5640 2-003c: i2c reg: 0x3c0a, value: 0x9c
    [  277.575655] ov5640 2-003c: i2c reg: 0x3c0b, value: 0x40
    [  277.581045] ov5640 2-003c: i2c reg: 0x3810, value: 0x0
    [  277.586323] ov5640 2-003c: i2c reg: 0x3811, value: 0x10
    [  277.591708] ov5640 2-003c: i2c reg: 0x3812, value: 0x0
    [  277.596987] ov5640 2-003c: i2c reg: 0x3708, value: 0x64
    [  277.602386] ov5640 2-003c: i2c reg: 0x4001, value: 0x2
    [  277.607664] ov5640 2-003c: i2c reg: 0x4005, value: 0x1a
    [  277.613068] ov5640 2-003c: i2c reg: 0x3000, value: 0x0
    [  277.618559] ov5640 2-003c: i2c reg: 0x3004, value: 0xff
    [  277.624148] ov5640 2-003c: i2c reg: 0x300e, value: 0x58
    [  277.629536] ov5640 2-003c: i2c reg: 0x302e, value: 0x0
    [  277.634822] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [  277.640203] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [  277.645479] ov5640 2-003c: i2c reg: 0x5000, value: 0xa7
    [  277.650866] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x38
    [  277.656236] ov5640 2-003c: i2c reg: 0x3a10, value: 0x30
    [  277.661613] ov5640 2-003c: i2c reg: 0x3a11, value: 0x61
    [  277.666979] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x38
    [  277.672364] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x30
    [  277.677733] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x10
    [  277.683113] ov5640 2-003c: i2c reg: 0x5800, value: 0x23
    [  277.688477] ov5640 2-003c: i2c reg: 0x5801, value: 0x14
    [  277.693862] ov5640 2-003c: i2c reg: 0x5802, value: 0xf
    [  277.699157] ov5640 2-003c: i2c reg: 0x5803, value: 0xf
    [  277.704433] ov5640 2-003c: i2c reg: 0x5804, value: 0x12
    [  277.709818] ov5640 2-003c: i2c reg: 0x5805, value: 0x26
    [  277.715183] ov5640 2-003c: i2c reg: 0x5806, value: 0xc
    [  277.720480] ov5640 2-003c: i2c reg: 0x5807, value: 0x8
    [  277.725758] ov5640 2-003c: i2c reg: 0x5808, value: 0x5
    [  277.731114] ov5640 2-003c: i2c reg: 0x5809, value: 0x5
    [  277.736392] ov5640 2-003c: i2c reg: 0x580a, value: 0x8
    [  277.741691] ov5640 2-003c: i2c reg: 0x580b, value: 0xd
    [  277.746969] ov5640 2-003c: i2c reg: 0x580c, value: 0x8
    [  277.752360] ov5640 2-003c: i2c reg: 0x580d, value: 0x3
    [  277.757638] ov5640 2-003c: i2c reg: 0x580e, value: 0x0
    [  277.762957] ov5640 2-003c: i2c reg: 0x580f, value: 0x0
    [  277.768235] ov5640 2-003c: i2c reg: 0x5810, value: 0x3
    [  277.773785] ov5640 2-003c: i2c reg: 0x5811, value: 0x9
    [  277.779083] ov5640 2-003c: i2c reg: 0x5812, value: 0x7
    [  277.784360] ov5640 2-003c: i2c reg: 0x5813, value: 0x3
    [  277.789657] ov5640 2-003c: i2c reg: 0x5814, value: 0x0
    [  277.794935] ov5640 2-003c: i2c reg: 0x5815, value: 0x1
    [  277.800232] ov5640 2-003c: i2c reg: 0x5816, value: 0x3
    [  277.805509] ov5640 2-003c: i2c reg: 0x5817, value: 0x8
    [  277.810809] ov5640 2-003c: i2c reg: 0x5818, value: 0xd
    [  277.816086] ov5640 2-003c: i2c reg: 0x5819, value: 0x8
    [  277.821384] ov5640 2-003c: i2c reg: 0x581a, value: 0x5
    [  277.826662] ov5640 2-003c: i2c reg: 0x581b, value: 0x6
    [  277.831959] ov5640 2-003c: i2c reg: 0x581c, value: 0x8
    [  277.837237] ov5640 2-003c: i2c reg: 0x581d, value: 0xe
    [  277.842552] ov5640 2-003c: i2c reg: 0x581e, value: 0x29
    [  277.847920] ov5640 2-003c: i2c reg: 0x581f, value: 0x17
    [  277.853304] ov5640 2-003c: i2c reg: 0x5820, value: 0x11
    [  277.858669] ov5640 2-003c: i2c reg: 0x5821, value: 0x11
    [  277.864067] ov5640 2-003c: i2c reg: 0x5822, value: 0x15
    [  277.869451] ov5640 2-003c: i2c reg: 0x5823, value: 0x28
    [  277.874816] ov5640 2-003c: i2c reg: 0x5824, value: 0x46
    [  277.880198] ov5640 2-003c: i2c reg: 0x5825, value: 0x26
    [  277.885799] ov5640 2-003c: i2c reg: 0x5826, value: 0x8
    [  277.891341] ov5640 2-003c: i2c reg: 0x5827, value: 0x26
    [  277.896709] ov5640 2-003c: i2c reg: 0x5828, value: 0x64
    [  277.902094] ov5640 2-003c: i2c reg: 0x5829, value: 0x26
    [  277.907458] ov5640 2-003c: i2c reg: 0x582a, value: 0x24
    [  277.912843] ov5640 2-003c: i2c reg: 0x582b, value: 0x22
    [  277.918209] ov5640 2-003c: i2c reg: 0x582c, value: 0x24
    [  277.923635] ov5640 2-003c: i2c reg: 0x582d, value: 0x24
    [  277.929035] ov5640 2-003c: i2c reg: 0x582e, value: 0x6
    [  277.934332] ov5640 2-003c: i2c reg: 0x582f, value: 0x22
    [  277.939732] ov5640 2-003c: i2c reg: 0x5830, value: 0x40
    [  277.945115] ov5640 2-003c: i2c reg: 0x5831, value: 0x42
    [  277.950515] ov5640 2-003c: i2c reg: 0x5832, value: 0x24
    [  277.955896] ov5640 2-003c: i2c reg: 0x5833, value: 0x26
    [  277.961280] ov5640 2-003c: i2c reg: 0x5834, value: 0x24
    [  277.966645] ov5640 2-003c: i2c reg: 0x5835, value: 0x22
    [  277.972051] ov5640 2-003c: i2c reg: 0x5836, value: 0x22
    [  277.977417] ov5640 2-003c: i2c reg: 0x5837, value: 0x26
    [  277.982801] ov5640 2-003c: i2c reg: 0x5838, value: 0x44
    [  277.988165] ov5640 2-003c: i2c reg: 0x5839, value: 0x24
    [  277.993551] ov5640 2-003c: i2c reg: 0x583a, value: 0x26
    [  277.998933] ov5640 2-003c: i2c reg: 0x583b, value: 0x28
    [  278.004298] ov5640 2-003c: i2c reg: 0x583c, value: 0x42
    [  278.009683] ov5640 2-003c: i2c reg: 0x583d, value: 0xce
    [  278.015047] ov5640 2-003c: i2c reg: 0x5180, value: 0xff
    [  278.020431] ov5640 2-003c: i2c reg: 0x5181, value: 0xf2
    [  278.025796] ov5640 2-003c: i2c reg: 0x5182, value: 0x0
    [  278.031101] ov5640 2-003c: i2c reg: 0x5183, value: 0x14
    [  278.036466] ov5640 2-003c: i2c reg: 0x5184, value: 0x25
    [  278.041850] ov5640 2-003c: i2c reg: 0x5185, value: 0x24
    [  278.047213] ov5640 2-003c: i2c reg: 0x5186, value: 0x9
    [  278.052511] ov5640 2-003c: i2c reg: 0x5187, value: 0x9
    [  278.057789] ov5640 2-003c: i2c reg: 0x5188, value: 0x9
    [  278.063266] ov5640 2-003c: i2c reg: 0x5189, value: 0x75
    [  278.068632] ov5640 2-003c: i2c reg: 0x518a, value: 0x54
    [  278.074021] ov5640 2-003c: i2c reg: 0x518b, value: 0xe0
    [  278.079422] ov5640 2-003c: i2c reg: 0x518c, value: 0xb2
    [  278.084786] ov5640 2-003c: i2c reg: 0x518d, value: 0x42
    [  278.090172] ov5640 2-003c: i2c reg: 0x518e, value: 0x3d
    [  278.095536] ov5640 2-003c: i2c reg: 0x518f, value: 0x56
    [  278.100919] ov5640 2-003c: i2c reg: 0x5190, value: 0x46
    [  278.106356] ov5640 2-003c: i2c reg: 0x5191, value: 0xf8
    [  278.111745] ov5640 2-003c: i2c reg: 0x5192, value: 0x4
    [  278.117023] ov5640 2-003c: i2c reg: 0x5193, value: 0x70
    [  278.122408] ov5640 2-003c: i2c reg: 0x5194, value: 0xf0
    [  278.127772] ov5640 2-003c: i2c reg: 0x5195, value: 0xf0
    [  278.133155] ov5640 2-003c: i2c reg: 0x5196, value: 0x3
    [  278.138433] ov5640 2-003c: i2c reg: 0x5197, value: 0x1
    [  278.143728] ov5640 2-003c: i2c reg: 0x5198, value: 0x4
    [  278.149333] ov5640 2-003c: i2c reg: 0x5199, value: 0x12
    [  278.154876] ov5640 2-003c: i2c reg: 0x519a, value: 0x4
    [  278.160177] ov5640 2-003c: i2c reg: 0x519b, value: 0x0
    [  278.165454] ov5640 2-003c: i2c reg: 0x519c, value: 0x6
    [  278.170752] ov5640 2-003c: i2c reg: 0x519d, value: 0x82
    [  278.176116] ov5640 2-003c: i2c reg: 0x519e, value: 0x38
    [  278.181519] ov5640 2-003c: i2c reg: 0x5480, value: 0x1
    [  278.186796] ov5640 2-003c: i2c reg: 0x5481, value: 0x8
    [  278.192096] ov5640 2-003c: i2c reg: 0x5482, value: 0x14
    [  278.197461] ov5640 2-003c: i2c reg: 0x5483, value: 0x28
    [  278.202845] ov5640 2-003c: i2c reg: 0x5484, value: 0x51
    [  278.208210] ov5640 2-003c: i2c reg: 0x5485, value: 0x65
    [  278.213595] ov5640 2-003c: i2c reg: 0x5486, value: 0x71
    [  278.218977] ov5640 2-003c: i2c reg: 0x5487, value: 0x7d
    [  278.224340] ov5640 2-003c: i2c reg: 0x5488, value: 0x87
    [  278.229725] ov5640 2-003c: i2c reg: 0x5489, value: 0x91
    [  278.235089] ov5640 2-003c: i2c reg: 0x548a, value: 0x9a
    [  278.240472] ov5640 2-003c: i2c reg: 0x548b, value: 0xaa
    [  278.245837] ov5640 2-003c: i2c reg: 0x548c, value: 0xb8
    [  278.251224] ov5640 2-003c: i2c reg: 0x548d, value: 0xcd
    [  278.256588] ov5640 2-003c: i2c reg: 0x548e, value: 0xdd
    [  278.261970] ov5640 2-003c: i2c reg: 0x548f, value: 0xea
    [  278.267335] ov5640 2-003c: i2c reg: 0x5490, value: 0x1d
    [  278.272719] ov5640 2-003c: i2c reg: 0x5381, value: 0x1c
    [  278.278085] ov5640 2-003c: i2c reg: 0x5382, value: 0x5a
    [  278.283573] ov5640 2-003c: i2c reg: 0x5383, value: 0x6
    [  278.289206] ov5640 2-003c: i2c reg: 0x5384, value: 0x24
    [  278.294571] ov5640 2-003c: i2c reg: 0x5385, value: 0x8f
    [  278.299957] ov5640 2-003c: i2c reg: 0x5386, value: 0xb3
    [  278.305322] ov5640 2-003c: i2c reg: 0x5387, value: 0xb6
    [  278.310708] ov5640 2-003c: i2c reg: 0x5388, value: 0xb3
    [  278.316073] ov5640 2-003c: i2c reg: 0x5389, value: 0x3
    [  278.321369] ov5640 2-003c: i2c reg: 0x538b, value: 0x98
    [  278.326734] ov5640 2-003c: i2c reg: 0x538a, value: 0x1
    [  278.332034] ov5640 2-003c: i2c reg: 0x5580, value: 0x6
    [  278.337313] ov5640 2-003c: i2c reg: 0x5583, value: 0x40
    [  278.342695] ov5640 2-003c: i2c reg: 0x5584, value: 0x10
    [  278.348059] ov5640 2-003c: i2c reg: 0x5589, value: 0x10
    [  278.353443] ov5640 2-003c: i2c reg: 0x558a, value: 0x0
    [  278.358721] ov5640 2-003c: i2c reg: 0x558b, value: 0xf8
    [  278.364104] ov5640 2-003c: i2c reg: 0x501d, value: 0x40
    [  278.369486] ov5640 2-003c: i2c reg: 0x5300, value: 0x8
    [  278.374764] ov5640 2-003c: i2c reg: 0x5301, value: 0x30
    [  278.380147] ov5640 2-003c: i2c reg: 0x5302, value: 0x10
    [  278.385512] ov5640 2-003c: i2c reg: 0x5303, value: 0x0
    [  278.390828] ov5640 2-003c: i2c reg: 0x5304, value: 0x8
    [  278.396107] ov5640 2-003c: i2c reg: 0x5305, value: 0x30
    [  278.401527] ov5640 2-003c: i2c reg: 0x5306, value: 0x8
    [  278.406825] ov5640 2-003c: i2c reg: 0x5307, value: 0x16
    [  278.412225] ov5640 2-003c: i2c reg: 0x5309, value: 0x8
    [  278.417746] ov5640 2-003c: i2c reg: 0x530a, value: 0x30
    [  278.423341] ov5640 2-003c: i2c reg: 0x530b, value: 0x4
    [  278.428640] ov5640 2-003c: i2c reg: 0x530c, value: 0x6
    [  278.434037] ov5640 2-003c: i2c reg: 0x5025, value: 0x0
    [  278.439336] ov5640 2-003c: i2c reg: 0x3008, value: 0x2
    [  278.444614] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  278.449911] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  278.455276] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  278.460574] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  278.465938] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  278.471236] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  278.476606] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  278.481898] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  278.487141] Resolution set to 640 x 480
    [  278.491131] ov5640 2-003c: i2c reg: 0x3035, value: 0x11
    [  278.496496] ov5640 2-003c: i2c reg: 0x3036, value: 0x46
    [  278.501881] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  278.507159] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [  278.512546] ov5640 2-003c: i2c reg: 0x3821, value: 0x8
    [  278.517824] ov5640 2-003c: i2c reg: 0x3814, value: 0x31
    [  278.523206] ov5640 2-003c: i2c reg: 0x3815, value: 0x31
    [  278.528569] ov5640 2-003c: i2c reg: 0x3800, value: 0x0
    [  278.533867] ov5640 2-003c: i2c reg: 0x3801, value: 0x0
    [  278.539604] ov5640 2-003c: i2c reg: 0x3802, value: 0x0
    [  278.544883] ov5640 2-003c: i2c reg: 0x3803, value: 0x4
    [  278.550182] ov5640 2-003c: i2c reg: 0x3804, value: 0xa
    [  278.555461] ov5640 2-003c: i2c reg: 0x3805, value: 0x3f
    [  278.560846] ov5640 2-003c: i2c reg: 0x3806, value: 0x7
    [  278.566124] ov5640 2-003c: i2c reg: 0x3807, value: 0x9b
    [  278.571508] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  278.576794] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  278.582291] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  278.587570] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  278.592958] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  278.598235] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  278.603639] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  278.608937] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  278.614302] ov5640 2-003c: i2c reg: 0x3813, value: 0x6
    [  278.619598] ov5640 2-003c: i2c reg: 0x3618, value: 0x0
    [  278.624876] ov5640 2-003c: i2c reg: 0x3612, value: 0x29
    [  278.630260] ov5640 2-003c: i2c reg: 0x3709, value: 0x52
    [  278.635626] ov5640 2-003c: i2c reg: 0x370c, value: 0x3
    [  278.640921] ov5640 2-003c: i2c reg: 0x3a02, value: 0x17
    [  278.646287] ov5640 2-003c: i2c reg: 0x3a03, value: 0x10
    [  278.651672] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [  278.656950] ov5640 2-003c: i2c reg: 0x3a09, value: 0x27
    [  278.662332] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x0
    [  278.667609] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xf6
    [  278.672994] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [  278.678469] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x4
    [  278.684027] ov5640 2-003c: i2c reg: 0x3a14, value: 0x17
    [  278.689415] ov5640 2-003c: i2c reg: 0x3a15, value: 0x10
    [  278.694781] ov5640 2-003c: i2c reg: 0x4004, value: 0x2
    [  278.700078] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [  278.705444] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [  278.710827] ov5640 2-003c: i2c reg: 0x4713, value: 0x3
    [  278.716105] ov5640 2-003c: i2c reg: 0x4407, value: 0x4
    [  278.721403] ov5640 2-003c: i2c reg: 0x460b, value: 0x35
    [  278.726768] ov5640 2-003c: i2c reg: 0x460c, value: 0x22
    [  278.732153] ov5640 2-003c: i2c reg: 0x4837, value: 0x22
    [  278.737517] ov5640 2-003c: i2c reg: 0x3824, value: 0x2
    [  278.742812] ov5640 2-003c: i2c reg: 0x5001, value: 0xa3
    [  278.748176] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  278.753475] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  278.758766] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  278.764132] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  278.769429] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  278.774794] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  278.780089] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  278.785454] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  278.790752] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  279.708321] ov5640 2-003c: stream enable: 0
    [  279.712894] ov5640 2-003c: i2c reg: 0x300e, value: 0x0
    [  279.720202] ov5640 2-003c: i2c reg: 0x3017, value: 0x0
    [  279.725613] ov5640 2-003c: i2c reg: 0x3018, value: 0x0
    [  279.733003] ov5640 2-003c: i2c reg: 0x3103, value: 0x11
    [  279.739557] ov5640 2-003c: i2c reg: 0x3008, value: 0x82
    [  279.750127] ov5640 2-003c: i2c reg: 0x3008, value: 0x42
    [  279.755555] ov5640 2-003c: i2c reg: 0x3103, value: 0x3
    [  279.761870] ov5640 2-003c: i2c reg: 0x3017, value: 0xff
    [  279.767306] ov5640 2-003c: i2c reg: 0x3018, value: 0xff
    [  279.773800] ov5640 2-003c: i2c reg: 0x3034, value: 0x1a
    [  279.779811] ov5640 2-003c: i2c reg: 0x3037, value: 0x13
    [  279.785618] ov5640 2-003c: i2c reg: 0x3108, value: 0x1
    [  279.791112] ov5640 2-003c: i2c reg: 0x3630, value: 0x36
    [  279.796479] ov5640 2-003c: i2c reg: 0x3631, value: 0xe
    [  279.803317] ov5640 2-003c: i2c reg: 0x3632, value: 0xe2
    [  279.810260] ov5640 2-003c: i2c reg: 0x3633, value: 0x12
    [  279.815694] ov5640 2-003c: i2c reg: 0x3621, value: 0xe0
    [  279.821120] ov5640 2-003c: i2c reg: 0x3704, value: 0xa0
    [  279.826546] ov5640 2-003c: i2c reg: 0x3703, value: 0x5a
    [  279.832090] ov5640 2-003c: i2c reg: 0x3715, value: 0x78
    [  279.837517] ov5640 2-003c: i2c reg: 0x3717, value: 0x1
    [  279.842870] ov5640 2-003c: i2c reg: 0x370b, value: 0x60
    [  279.848303] ov5640 2-003c: i2c reg: 0x3705, value: 0x1a
    [  279.853869] ov5640 2-003c: i2c reg: 0x3905, value: 0x2
    [  279.859225] ov5640 2-003c: i2c reg: 0x3906, value: 0x10
    [  279.864592] ov5640 2-003c: i2c reg: 0x3901, value: 0xa
    [  279.870067] ov5640 2-003c: i2c reg: 0x3731, value: 0x12
    [  279.875455] ov5640 2-003c: i2c reg: 0x3600, value: 0x8
    [  279.880790] ov5640 2-003c: i2c reg: 0x3601, value: 0x33
    [  279.886163] ov5640 2-003c: i2c reg: 0x302d, value: 0x60
    [  279.891718] ov5640 2-003c: i2c reg: 0x3620, value: 0x52
    [  279.897087] ov5640 2-003c: i2c reg: 0x371b, value: 0x20
    [  279.902528] ov5640 2-003c: i2c reg: 0x471c, value: 0x50
    [  279.907910] ov5640 2-003c: i2c reg: 0x3a13, value: 0x43
    [  279.913468] ov5640 2-003c: i2c reg: 0x3a18, value: 0x0
    [  279.918774] ov5640 2-003c: i2c reg: 0x3a19, value: 0xf8
    [  279.924184] ov5640 2-003c: i2c reg: 0x3635, value: 0x13
    [  279.929586] ov5640 2-003c: i2c reg: 0x3636, value: 0x3
    [  279.935025] ov5640 2-003c: i2c reg: 0x3634, value: 0x40
    [  279.940428] ov5640 2-003c: i2c reg: 0x3622, value: 0x1
    [  279.945751] ov5640 2-003c: i2c reg: 0x3c01, value: 0x34
    [  279.951144] ov5640 2-003c: i2c reg: 0x3c04, value: 0x28
    [  279.956664] ov5640 2-003c: i2c reg: 0x3c05, value: 0x98
    [  279.962076] ov5640 2-003c: i2c reg: 0x3c06, value: 0x0
    [  279.967403] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  279.972822] ov5640 2-003c: i2c reg: 0x3c08, value: 0x0
    [  279.980241] ov5640 2-003c: i2c reg: 0x3c09, value: 0x1c
    [  279.988393] ov5640 2-003c: i2c reg: 0x3c0a, value: 0x9c
    [  279.993979] ov5640 2-003c: i2c reg: 0x3c0b, value: 0x40
    [  279.999406] ov5640 2-003c: i2c reg: 0x3810, value: 0x0
    [  280.004686] ov5640 2-003c: i2c reg: 0x3811, value: 0x10
    [  280.010074] ov5640 2-003c: i2c reg: 0x3812, value: 0x0
    [  280.015496] ov5640 2-003c: i2c reg: 0x3708, value: 0x64
    [  280.020902] ov5640 2-003c: i2c reg: 0x4001, value: 0x2
    [  280.026181] ov5640 2-003c: i2c reg: 0x4005, value: 0x1a
    [  280.031580] ov5640 2-003c: i2c reg: 0x3000, value: 0x0
    [  280.036983] ov5640 2-003c: i2c reg: 0x3004, value: 0xff
    [  280.042371] ov5640 2-003c: i2c reg: 0x300e, value: 0x58
    [  280.047738] ov5640 2-003c: i2c reg: 0x302e, value: 0x0
    [  280.053047] ov5640 2-003c: i2c reg: 0x4300, value: 0x3f
    [  280.058582] ov5640 2-003c: i2c reg: 0x501f, value: 0x0
    [  280.063940] ov5640 2-003c: i2c reg: 0x5000, value: 0xa7
    [  280.069334] ov5640 2-003c: i2c reg: 0x3a0f, value: 0x38
    [  280.074824] ov5640 2-003c: i2c reg: 0x3a10, value: 0x30
    [  280.080245] ov5640 2-003c: i2c reg: 0x3a11, value: 0x61
    [  280.085620] ov5640 2-003c: i2c reg: 0x3a1b, value: 0x38
    [  280.091045] ov5640 2-003c: i2c reg: 0x3a1e, value: 0x30
    [  280.096534] ov5640 2-003c: i2c reg: 0x3a1f, value: 0x10
    [  280.101947] ov5640 2-003c: i2c reg: 0x5800, value: 0x23
    [  280.107337] ov5640 2-003c: i2c reg: 0x5801, value: 0x14
    [  280.112724] ov5640 2-003c: i2c reg: 0x5802, value: 0xf
    [  280.118145] ov5640 2-003c: i2c reg: 0x5803, value: 0xf
    [  280.123464] ov5640 2-003c: i2c reg: 0x5804, value: 0x12
    [  280.128839] ov5640 2-003c: i2c reg: 0x5805, value: 0x26
    [  280.134214] ov5640 2-003c: i2c reg: 0x5806, value: 0xc
    [  280.139654] ov5640 2-003c: i2c reg: 0x5807, value: 0x8
    [  280.144935] ov5640 2-003c: i2c reg: 0x5808, value: 0x5
    [  280.150241] ov5640 2-003c: i2c reg: 0x5809, value: 0x5
    [  280.155529] ov5640 2-003c: i2c reg: 0x580a, value: 0x8
    [  280.160945] ov5640 2-003c: i2c reg: 0x580b, value: 0xd
    [  280.166236] ov5640 2-003c: i2c reg: 0x580c, value: 0x8
    [  280.171530] ov5640 2-003c: i2c reg: 0x580d, value: 0x3
    [  280.176926] ov5640 2-003c: i2c reg: 0x580e, value: 0x0
    [  280.182229] ov5640 2-003c: i2c reg: 0x580f, value: 0x0
    [  280.187512] ov5640 2-003c: i2c reg: 0x5810, value: 0x3
    [  280.192806] ov5640 2-003c: i2c reg: 0x5811, value: 0x9
    [  280.198212] ov5640 2-003c: i2c reg: 0x5812, value: 0x7
    [  280.203524] ov5640 2-003c: i2c reg: 0x5813, value: 0x3
    [  280.208808] ov5640 2-003c: i2c reg: 0x5814, value: 0x0
    [  280.214087] ov5640 2-003c: i2c reg: 0x5815, value: 0x1
    [  280.219507] ov5640 2-003c: i2c reg: 0x5816, value: 0x3
    [  280.224787] ov5640 2-003c: i2c reg: 0x5817, value: 0x8
    [  280.230085] ov5640 2-003c: i2c reg: 0x5818, value: 0xd
    [  280.235371] ov5640 2-003c: i2c reg: 0x5819, value: 0x8
    [  280.240784] ov5640 2-003c: i2c reg: 0x581a, value: 0x5
    [  280.246064] ov5640 2-003c: i2c reg: 0x581b, value: 0x6
    [  280.251369] ov5640 2-003c: i2c reg: 0x581c, value: 0x8
    [  280.257375] ov5640 2-003c: i2c reg: 0x581d, value: 0xe
    [  280.263931] ov5640 2-003c: i2c reg: 0x581e, value: 0x29
    [  280.269878] ov5640 2-003c: i2c reg: 0x581f, value: 0x17
    [  280.275309] ov5640 2-003c: i2c reg: 0x5820, value: 0x11
    [  280.281774] ov5640 2-003c: i2c reg: 0x5821, value: 0x11
    [  280.287203] ov5640 2-003c: i2c reg: 0x5822, value: 0x15
    [  280.293579] ov5640 2-003c: i2c reg: 0x5823, value: 0x28
    [  280.299038] ov5640 2-003c: i2c reg: 0x5824, value: 0x46
    [  280.304406] ov5640 2-003c: i2c reg: 0x5825, value: 0x26
    [  280.309810] ov5640 2-003c: i2c reg: 0x5826, value: 0x8
    [  280.315092] ov5640 2-003c: i2c reg: 0x5827, value: 0x26
    [  280.320511] ov5640 2-003c: i2c reg: 0x5828, value: 0x64
    [  280.325877] ov5640 2-003c: i2c reg: 0x5829, value: 0x26
    [  280.331281] ov5640 2-003c: i2c reg: 0x582a, value: 0x24
    [  280.336650] ov5640 2-003c: i2c reg: 0x582b, value: 0x22
    [  280.342054] ov5640 2-003c: i2c reg: 0x582c, value: 0x24
    [  280.347420] ov5640 2-003c: i2c reg: 0x582d, value: 0x24
    [  280.352822] ov5640 2-003c: i2c reg: 0x582e, value: 0x6
    [  280.358104] ov5640 2-003c: i2c reg: 0x582f, value: 0x22
    [  280.363483] ov5640 2-003c: i2c reg: 0x5830, value: 0x40
    [  280.368854] ov5640 2-003c: i2c reg: 0x5831, value: 0x42
    [  280.374220] ov5640 2-003c: i2c reg: 0x5832, value: 0x24
    [  280.379619] ov5640 2-003c: i2c reg: 0x5833, value: 0x26
    [  280.384984] ov5640 2-003c: i2c reg: 0x5834, value: 0x24
    [  280.390370] ov5640 2-003c: i2c reg: 0x5835, value: 0x22
    [  280.395736] ov5640 2-003c: i2c reg: 0x5836, value: 0x22
    [  280.401134] ov5640 2-003c: i2c reg: 0x5837, value: 0x26
    [  280.406499] ov5640 2-003c: i2c reg: 0x5838, value: 0x44
    [  280.411883] ov5640 2-003c: i2c reg: 0x5839, value: 0x24
    [  280.417249] ov5640 2-003c: i2c reg: 0x583a, value: 0x26
    [  280.422645] ov5640 2-003c: i2c reg: 0x583b, value: 0x28
    [  280.428011] ov5640 2-003c: i2c reg: 0x583c, value: 0x42
    [  280.433394] ov5640 2-003c: i2c reg: 0x583d, value: 0xce
    [  280.438784] ov5640 2-003c: i2c reg: 0x5180, value: 0xff
    [  280.444151] ov5640 2-003c: i2c reg: 0x5181, value: 0xf2
    [  280.449534] ov5640 2-003c: i2c reg: 0x5182, value: 0x0
    [  280.454811] ov5640 2-003c: i2c reg: 0x5183, value: 0x14
    [  280.460208] ov5640 2-003c: i2c reg: 0x5184, value: 0x25
    [  280.465573] ov5640 2-003c: i2c reg: 0x5185, value: 0x24
    [  280.470956] ov5640 2-003c: i2c reg: 0x5186, value: 0x9
    [  280.476234] ov5640 2-003c: i2c reg: 0x5187, value: 0x9
    [  280.481582] ov5640 2-003c: i2c reg: 0x5188, value: 0x9
    [  280.486880] ov5640 2-003c: i2c reg: 0x5189, value: 0x75
    [  280.492295] ov5640 2-003c: i2c reg: 0x518a, value: 0x54
    [  280.497679] ov5640 2-003c: i2c reg: 0x518b, value: 0xe0
    [  280.503088] ov5640 2-003c: i2c reg: 0x518c, value: 0xb2
    [  280.508472] ov5640 2-003c: i2c reg: 0x518d, value: 0x42
    [  280.513870] ov5640 2-003c: i2c reg: 0x518e, value: 0x3d
    [  280.519490] ov5640 2-003c: i2c reg: 0x518f, value: 0x56
    [  280.525007] ov5640 2-003c: i2c reg: 0x5190, value: 0x46
    [  280.530396] ov5640 2-003c: i2c reg: 0x5191, value: 0xf8
    [  280.535763] ov5640 2-003c: i2c reg: 0x5192, value: 0x4
    [  280.541075] ov5640 2-003c: i2c reg: 0x5193, value: 0x70
    [  280.546440] ov5640 2-003c: i2c reg: 0x5194, value: 0xf0
    [  280.551828] ov5640 2-003c: i2c reg: 0x5195, value: 0xf0
    [  280.557194] ov5640 2-003c: i2c reg: 0x5196, value: 0x3
    [  280.562504] ov5640 2-003c: i2c reg: 0x5197, value: 0x1
    [  280.567783] ov5640 2-003c: i2c reg: 0x5198, value: 0x4
    [  280.573081] ov5640 2-003c: i2c reg: 0x5199, value: 0x12
    [  280.578447] ov5640 2-003c: i2c reg: 0x519a, value: 0x4
    [  280.583756] ov5640 2-003c: i2c reg: 0x519b, value: 0x0
    [  280.589053] ov5640 2-003c: i2c reg: 0x519c, value: 0x6
    [  280.594330] ov5640 2-003c: i2c reg: 0x519d, value: 0x82
    [  280.599728] ov5640 2-003c: i2c reg: 0x519e, value: 0x38
    [  280.605095] ov5640 2-003c: i2c reg: 0x5480, value: 0x1
    [  280.610391] ov5640 2-003c: i2c reg: 0x5481, value: 0x8
    [  280.615668] ov5640 2-003c: i2c reg: 0x5482, value: 0x14
    [  280.621221] ov5640 2-003c: i2c reg: 0x5483, value: 0x28
    [  280.626593] ov5640 2-003c: i2c reg: 0x5484, value: 0x51
    [  280.631973] ov5640 2-003c: i2c reg: 0x5485, value: 0x65
    [  280.637337] ov5640 2-003c: i2c reg: 0x5486, value: 0x71
    [  280.642735] ov5640 2-003c: i2c reg: 0x5487, value: 0x7d
    [  280.648104] ov5640 2-003c: i2c reg: 0x5488, value: 0x87
    [  280.653483] ov5640 2-003c: i2c reg: 0x5489, value: 0x91
    [  280.658854] ov5640 2-003c: i2c reg: 0x548a, value: 0x9a
    [  280.664221] ov5640 2-003c: i2c reg: 0x548b, value: 0xaa
    [  280.669620] ov5640 2-003c: i2c reg: 0x548c, value: 0xb8
    [  280.674984] ov5640 2-003c: i2c reg: 0x548d, value: 0xcd
    [  280.680382] ov5640 2-003c: i2c reg: 0x548e, value: 0xdd
    [  280.685746] ov5640 2-003c: i2c reg: 0x548f, value: 0xea
    [  280.691143] ov5640 2-003c: i2c reg: 0x5490, value: 0x1d
    [  280.696508] ov5640 2-003c: i2c reg: 0x5381, value: 0x1c
    [  280.701911] ov5640 2-003c: i2c reg: 0x5382, value: 0x5a
    [  280.707277] ov5640 2-003c: i2c reg: 0x5383, value: 0x6
    [  280.712587] ov5640 2-003c: i2c reg: 0x5384, value: 0x24
    [  280.717952] ov5640 2-003c: i2c reg: 0x5385, value: 0x8f
    [  280.723336] ov5640 2-003c: i2c reg: 0x5386, value: 0xb3
    [  280.728700] ov5640 2-003c: i2c reg: 0x5387, value: 0xb6
    [  280.734096] ov5640 2-003c: i2c reg: 0x5388, value: 0xb3
    [  280.739494] ov5640 2-003c: i2c reg: 0x5389, value: 0x3
    [  280.744772] ov5640 2-003c: i2c reg: 0x538b, value: 0x98
    [  280.750157] ov5640 2-003c: i2c reg: 0x538a, value: 0x1
    [  280.755435] ov5640 2-003c: i2c reg: 0x5580, value: 0x6
    [  280.760745] ov5640 2-003c: i2c reg: 0x5583, value: 0x40
    [  280.766110] ov5640 2-003c: i2c reg: 0x5584, value: 0x10
    [  280.771493] ov5640 2-003c: i2c reg: 0x5589, value: 0x10
    [  280.776858] ov5640 2-003c: i2c reg: 0x558a, value: 0x0
    [  280.782171] ov5640 2-003c: i2c reg: 0x558b, value: 0xf8
    [  280.787736] ov5640 2-003c: i2c reg: 0x501d, value: 0x40
    [  280.793300] ov5640 2-003c: i2c reg: 0x5300, value: 0x8
    [  280.798581] ov5640 2-003c: i2c reg: 0x5301, value: 0x30
    [  280.803983] ov5640 2-003c: i2c reg: 0x5302, value: 0x10
    [  280.809367] ov5640 2-003c: i2c reg: 0x5303, value: 0x0
    [  280.814649] ov5640 2-003c: i2c reg: 0x5304, value: 0x8
    [  280.819955] ov5640 2-003c: i2c reg: 0x5305, value: 0x30
    [  280.825319] ov5640 2-003c: i2c reg: 0x5306, value: 0x8
    [  280.830632] ov5640 2-003c: i2c reg: 0x5307, value: 0x16
    [  280.836004] ov5640 2-003c: i2c reg: 0x5309, value: 0x8
    [  280.841297] ov5640 2-003c: i2c reg: 0x530a, value: 0x30
    [  280.846662] ov5640 2-003c: i2c reg: 0x530b, value: 0x4
    [  280.851972] ov5640 2-003c: i2c reg: 0x530c, value: 0x6
    [  280.857255] ov5640 2-003c: i2c reg: 0x5025, value: 0x0
    [  280.862547] ov5640 2-003c: i2c reg: 0x3008, value: 0x2
    [  280.867824] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  280.873135] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  280.878505] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  280.883799] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  280.889197] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  280.894476] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  280.899874] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  280.905152] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  280.910431] Resolution set to 640 x 480
    [  280.914403] ov5640 2-003c: i2c reg: 0x3035, value: 0x11
    [  280.919805] ov5640 2-003c: i2c reg: 0x3036, value: 0x46
    [  280.925171] ov5640 2-003c: i2c reg: 0x3c07, value: 0x8
    [  280.930467] ov5640 2-003c: i2c reg: 0x3820, value: 0x41
    [  280.935831] ov5640 2-003c: i2c reg: 0x3821, value: 0x8
    [  280.941153] ov5640 2-003c: i2c reg: 0x3814, value: 0x31
    [  280.946519] ov5640 2-003c: i2c reg: 0x3815, value: 0x31
    [  280.951902] ov5640 2-003c: i2c reg: 0x3800, value: 0x0
    [  280.957179] ov5640 2-003c: i2c reg: 0x3801, value: 0x0
    [  280.962489] ov5640 2-003c: i2c reg: 0x3802, value: 0x0
    [  280.967766] ov5640 2-003c: i2c reg: 0x3803, value: 0x4
    [  280.973062] ov5640 2-003c: i2c reg: 0x3804, value: 0xa
    [  280.978340] ov5640 2-003c: i2c reg: 0x3805, value: 0x3f
    [  280.983739] ov5640 2-003c: i2c reg: 0x3806, value: 0x7
    [  280.989034] ov5640 2-003c: i2c reg: 0x3807, value: 0x9b
    [  280.994398] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  280.999709] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  281.005075] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  281.010371] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  281.015735] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  281.021044] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  281.026410] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  281.031706] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8
    [  281.037071] ov5640 2-003c: i2c reg: 0x3813, value: 0x6
    [  281.042435] ov5640 2-003c: i2c reg: 0x3618, value: 0x0
    [  281.047733] ov5640 2-003c: i2c reg: 0x3612, value: 0x29
    [  281.053134] ov5640 2-003c: i2c reg: 0x3709, value: 0x52
    [  281.058850] ov5640 2-003c: i2c reg: 0x370c, value: 0x3
    [  281.064313] ov5640 2-003c: i2c reg: 0x3a02, value: 0x17
    [  281.069717] ov5640 2-003c: i2c reg: 0x3a03, value: 0x10
    [  281.075100] ov5640 2-003c: i2c reg: 0x3a08, value: 0x1
    [  281.080411] ov5640 2-003c: i2c reg: 0x3a09, value: 0x27
    [  281.085778] ov5640 2-003c: i2c reg: 0x3a0a, value: 0x0
    [  281.091074] ov5640 2-003c: i2c reg: 0x3a0b, value: 0xf6
    [  281.096440] ov5640 2-003c: i2c reg: 0x3a0e, value: 0x3
    [  281.101750] ov5640 2-003c: i2c reg: 0x3a0d, value: 0x4
    [  281.107097] ov5640 2-003c: i2c reg: 0x3a14, value: 0x17
    [  281.112488] ov5640 2-003c: i2c reg: 0x3a15, value: 0x10
    [  281.117853] ov5640 2-003c: i2c reg: 0x4004, value: 0x2
    [  281.123185] ov5640 2-003c: i2c reg: 0x3002, value: 0x1c
    [  281.128550] ov5640 2-003c: i2c reg: 0x3006, value: 0xc3
    [  281.133935] ov5640 2-003c: i2c reg: 0x4713, value: 0x3
    [  281.139245] ov5640 2-003c: i2c reg: 0x4407, value: 0x4
    [  281.144523] ov5640 2-003c: i2c reg: 0x460b, value: 0x35
    [  281.149909] ov5640 2-003c: i2c reg: 0x460c, value: 0x22
    [  281.155274] ov5640 2-003c: i2c reg: 0x4837, value: 0x22
    [  281.160671] ov5640 2-003c: i2c reg: 0x3824, value: 0x2
    [  281.165949] ov5640 2-003c: i2c reg: 0x5001, value: 0xa3
    [  281.171332] ov5640 2-003c: i2c reg: 0x3503, value: 0x0
    [  281.177096] ov5640 2-003c: i2c reg: 0x3808, value: 0x2
    [  281.182580] ov5640 2-003c: i2c reg: 0x3809, value: 0x80
    [  281.187946] ov5640 2-003c: i2c reg: 0x380a, value: 0x1
    [  281.193246] ov5640 2-003c: i2c reg: 0x380b, value: 0xe0
    [  281.198612] ov5640 2-003c: i2c reg: 0x380c, value: 0x7
    [  281.203923] ov5640 2-003c: i2c reg: 0x380d, value: 0x68
    [  281.209305] ov5640 2-003c: i2c reg: 0x380e, value: 0x3
    [  281.214583] ov5640 2-003c: i2c reg: 0x380f, value: 0xd8

    - Vishal

  • Hi Vishal,

    Thank you for the logs. If it's possible, it would be helpful to add back the printks/dev_infos to see what registers are sent in the specific functions. For example, what are the resolution registers, AWE registers, etc?

    For now though, the differences in the following 2 registers are concerning to me:

    Register 6.03 Value 9.03 Value Difference
    0x380e 0x3 0x4 total vertical size [15:8]
    0x380f 0xd8 0x38 total vertical size [7:0]

    They could be the reason for the difference, but it's also difficult to know when the registers are written currently. Some registers are written and overwritten within the logs, and I'm unsure of the reason why.

    It would be easier if there are logs to show what is written when.

    Datasheet: https://cdn.sparkfun.com/datasheets/Sensors/LightImaging/OV5640_datasheet.pdf 

    Best,
    Jared

  •  ,

    Thank you for the logs. If it's possible, it would be helpful to add back the printks/dev_infos to see what registers are sent in the specific functions. For example, what are the resolution registers, AWE registers, etc?

    Which printks/dev_infos are you referring to? 

    I’m not entirely sure where to place the prints to capture the desired registers' values.

    They could be the reason for the difference, but it's also difficult to know when the registers are written currently. Some registers are written and overwritten within the logs, and I'm unsure of the reason why.

    I believe you have a better understanding of when certain registers are written. The reasons behind writing and rewriting these registers would be clearer if the overall flow were known in advance.

    It would be easier if there are logs to show what is written when.

    Could you please guide me or add the debug prints yourself and share the updated file here? We can discuss it virtually using our indigenous platform or via Microsoft Teams—whichever is more convenient for you.



    -VIshal

  • Hi Vishal,

    The general flow of a driver is the following:

    1. Driver is probed/initialized
    2. Driver begins streaming
    3. Driver is streaming
    4. Driver stops streaming
    5. Repeat 2-4 whenever the camera is told to start/stop streaming

    In the 9.03 driver, i2c registers are written in 1, 2, and 4.

    In the 6.03 driver, it seems i2c registers are written in 2, and 4. In other words, all of the initialization is done at the start of the streaming instead of on probe.

    It's important to know where the registers are written, so we know what registers are for initializing, starting, and stopping the camera.

    Ideally, we will observe a mismatch between the initialization/starting registers and that will explain why the output of the camera in 9.03 is incorrect.

    Patch for the 9.03 driver:

    From 73c8c15714948c295a683185c1ee2efa20dc4252 Mon Sep 17 00:00:00 2001
    From: Jared McArthur <j-mcarthur@ti.com>
    Date: Thu, 2 Oct 2025 11:46:11 -0500
    Subject: [PATCH 1/1] media: i2c: ov5640: Add logs to decipher i2c writes
    
    Signed-off-by: Jared McArthur <j-mcarthur@ti.com>
    ---
     drivers/media/i2c/ov5640.c | 39 +++++++++++++++++++++++++++++++++++---
     1 file changed, 36 insertions(+), 3 deletions(-)
    
    diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
    index 94ba2429b258..b3927edb0d66 100644
    --- a/drivers/media/i2c/ov5640.c
    +++ b/drivers/media/i2c/ov5640.c
    @@ -1191,6 +1191,8 @@ static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
     	msg.buf = buf;
     	msg.len = sizeof(buf);
     
    +	dev_info(client->dev, "ov5640_write_reg: reg: 0x%x, val: 0x%x\n", reg, val);
    +
     	ret = i2c_transfer(client->adapter, &msg, 1);
     	if (ret < 0) {
     		dev_err(&client->dev, "%s: error: reg=%x, val=%x\n",
    @@ -1820,15 +1822,24 @@ static int ov5640_set_autogain(struct ov5640_dev *sensor, bool on)
     
     static int ov5640_set_stream_dvp(struct ov5640_dev *sensor, bool on)
     {
    -	return ov5640_write_reg(sensor, OV5640_REG_SYS_CTRL0, on ?
    +	int ret;
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_dvp: open\n");
    +
    +	ret =  ov5640_write_reg(sensor, OV5640_REG_SYS_CTRL0, on ?
     				OV5640_REG_SYS_CTRL0_SW_PWUP :
     				OV5640_REG_SYS_CTRL0_SW_PWDN);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_dvp: close\n");
    +	return ret;
     }
     
     static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     {
     	int ret;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_mipi: open\n");
    +
     	/*
     	 * Enable/disable the MIPI interface
     	 *
    @@ -1851,8 +1862,12 @@ static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     	if (ret)
     		return ret;
     
    -	return ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
    +	ret = ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
     				on ? 0x00 : 0x0f);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_mipi: close\n");
    +
    +	return ret;
     }
     
     static int ov5640_get_sysclk(struct ov5640_dev *sensor)
    @@ -2330,6 +2345,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	dn_mode = mode->dn_mode;
     	orig_dn_mode = orig_mode->dn_mode;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_mode: open\n");
    +
     	/* auto gain and exposure must be turned off when changing modes */
     	if (auto_gain) {
     		ret = ov5640_set_autogain(sensor, false);
    @@ -2392,6 +2409,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	sensor->pending_mode_change = false;
     	sensor->last_mode = mode;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_mode: close\n");
    +
     	return 0;
     
     restore_auto_exp_gain:
    @@ -3041,6 +3060,8 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	const struct ov5640_pixfmt *pixfmt;
     	int ret = 0;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_framefmt: open\n");
    +
     	pixfmt = ov5640_code_to_pixfmt(sensor, format->code);
     
     	/* FORMAT CONTROL00: YUV and RGB formatting */
    @@ -3081,9 +3102,13 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	 * - [5]:	Enable JPEG 2x clock
     	 * - [3]:	Enable JPEG clock
     	 */
    -	return ov5640_mod_reg(sensor, OV5640_REG_SYS_CLOCK_ENABLE02,
    +	ret = ov5640_mod_reg(sensor, OV5640_REG_SYS_CLOCK_ENABLE02,
     			      BIT(5) | BIT(3),
     			      is_jpeg ? (BIT(5) | BIT(3)) : 0);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_framefmt: open\n");
    +
    +	return ret;
     }
     
     /*
    @@ -3699,6 +3724,8 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     	struct ov5640_dev *sensor = to_ov5640_dev(sd);
     	int ret = 0;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_s_stream: open: enable: %d\n", enable);
    +
     	if (enable) {
     		ret = pm_runtime_resume_and_get(&sensor->i2c_client->dev);
     		if (ret < 0)
    @@ -3744,6 +3771,8 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     		pm_runtime_put_autosuspend(&sensor->i2c_client->dev);
     	}
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_s_stream: close: enable: %d\n", enable);
    +
     	return ret;
     }
     
    @@ -3835,6 +3864,8 @@ static int ov5640_probe(struct i2c_client *client)
     	struct ov5640_dev *sensor;
     	int ret;
     
    +	dev_info(dev, "ov5640_probe: open\n");
    +
     	sensor = devm_kzalloc(dev, sizeof(*sensor), GFP_KERNEL);
     	if (!sensor)
     		return -ENOMEM;
    @@ -3950,6 +3981,8 @@ static int ov5640_probe(struct i2c_client *client)
     	pm_runtime_mark_last_busy(dev);
     	pm_runtime_put_autosuspend(dev);
     
    +	dev_info(dev, "ov5640_probe: close\n");
    +
     	return 0;
     
     err_pm_runtime:
    -- 
    2.34.1
    

    Patch for the 6.03 driver:

    From 6e5890264b372f9ab26f0846dc991043ba6a2f86 Mon Sep 17 00:00:00 2001
    From: Jared McArthur <j-mcarthur@ti.com>
    Date: Thu, 2 Oct 2025 11:31:58 -0500
    Subject: [PATCH 1/1] media: i2c: ov5640: Add logs for deciphering i2c writes
    
    Signed-off-by: Jared McArthur <j-mcarthur@ti.com>
    ---
     drivers/media/i2c/ov5640.c | 35 +++++++++++++++++++++++++++++++++--
     1 file changed, 33 insertions(+), 2 deletions(-)
    
    diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
    index e9667f50ee8c..f73e851dd239 100644
    --- a/drivers/media/i2c/ov5640.c
    +++ b/drivers/media/i2c/ov5640.c
    @@ -621,6 +621,8 @@ static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
     	msg.buf = buf;
     	msg.len = sizeof(buf);
     
    +	dev_info(client->dev, "ov5640_write_reg: reg: 0x%x, val: 0x%x\n", reg, val);
    +
     	ret = i2c_transfer(client->adapter, &msg, 1);
     	if (ret < 0) {
     		dev_err(&client->dev, "%s: error: reg=%x, val=%x\n",
    @@ -1166,6 +1168,8 @@ static int ov5640_set_stream_dvp(struct ov5640_dev *sensor, bool on)
     	u8 hsync_pol = 0;
     	u8 vsync_pol = 0;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_dvp: open\n");
    +
     	/*
     	 * Note about parallel port configuration.
     	 *
    @@ -1247,15 +1251,21 @@ static int ov5640_set_stream_dvp(struct ov5640_dev *sensor, bool on)
     	 * PAD OUTPUT ENABLE 02
     	 * - [7:2]:	D[5:0] output enable
     	 */
    -	return ov5640_write_reg(sensor,
    +	ret = ov5640_write_reg(sensor,
     				OV5640_REG_PAD_OUTPUT_ENABLE02,
     				on ? 0xfc : 0);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_dvp: close\n");
    +
    +	return ret;
     }
     
     static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     {
     	int ret;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_mipi: open\n");
    +
     	/*
     	 * Enable/disable the MIPI interface
     	 *
    @@ -1278,8 +1288,12 @@ static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     	if (ret)
     		return ret;
     
    -	return ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
    +	ret = ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
     				on ? 0x00 : 0x0f);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_stream_mipi: close\n");
    +
    +	return ret;
     }
     
     static int ov5640_get_sysclk(struct ov5640_dev *sensor)
    @@ -1767,6 +1781,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	dn_mode = mode->dn_mode;
     	orig_dn_mode = orig_mode->dn_mode;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_mode: open\n", enable);
    +
     	/* auto gain and exposure must be turned off when changing modes */
     	if (auto_gain) {
     		ret = ov5640_set_autogain(sensor, false);
    @@ -1839,6 +1855,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	sensor->pending_mode_change = false;
     	sensor->last_mode = mode;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_mode: close\n", enable);
    +
     	return 0;
     
     restore_auto_exp_gain:
    @@ -2219,6 +2237,8 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	bool is_jpeg = false;
     	u8 val;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_framefmt: open\n");
    +
     	switch (format->code) {
     	case MEDIA_BUS_FMT_UYVY8_2X8:
     		/* YUV422, UYVY */
    @@ -2287,6 +2307,8 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	return ov5640_mod_reg(sensor, OV5640_REG_SYS_CLOCK_ENABLE02,
     			      BIT(5) | BIT(3),
     			      is_jpeg ? (BIT(5) | BIT(3)) : 0);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_set_framefmt: close\n");
     }
     
     /*
    @@ -2780,6 +2802,8 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     	struct ov5640_dev *sensor = to_ov5640_dev(sd);
     	int ret = 0;
     
    +	dev_info(sensor->i2c_client->dev, "ov5640_s_stream: open: enable: %d\n", enable);
    +
     	mutex_lock(&sensor->lock);
     
     	if (sensor->streaming == !enable) {
    @@ -2806,6 +2830,9 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     	}
     out:
     	mutex_unlock(&sensor->lock);
    +
    +	dev_info(sensor->i2c_client->dev, "ov5640_s_stream: close: enable: %d\n", enable);
    +
     	return ret;
     }
     
    @@ -2886,6 +2913,8 @@ static int ov5640_probe(struct i2c_client *client,
     	u32 rotation;
     	int ret;
     
    +	dev_info(dev, "ov5640_probe: open\n");
    +
     	sensor = devm_kzalloc(dev, sizeof(*sensor), GFP_KERNEL);
     	if (!sensor)
     		return -ENOMEM;
    @@ -2999,6 +3028,8 @@ static int ov5640_probe(struct i2c_client *client,
     	if (ret)
     		goto free_ctrls;
     
    +	dev_info(dev, "ov5640_probe: close\n");
    +
     	return 0;
     
     free_ctrls:
    -- 
    2.34.1
    

    Best,
    Jared

  •   , 

    Ok on 3rd oct IST morning I will give you the logs for both the SDKs after applying the patches. 

    I hope you would want me to retain the existing dev_info prints that you had suggested earlier !!

    For 9.03 I will give you boot logs and for 6.03 I will give you prints after camera streaming (same as I gave earlier). 

    As soon as you read this reply, do let me know if you need anything else if not above in bold


    Also, how will these prints at the new location be of much help ? Asking this because you had already  put  dev_info prints in the same function in a different location. What difference will these prints actually make given the fact that I have already shared the logs previously ? 

    -Vishal

  • Hi ,

    These patches are assuming the driver has not had any changes previously applied. i.e. the patches contain the previous changes.

    I would like the logs from boot to stream to ending the stream. All 4 of the following steps:

    1. Driver is probed/initialized
    2. Driver begins streaming
    3. Driver is streaming
    4. Driver stops streaming

    Best,
    Jared

  •   , 

    Sure, I will provide dmesg logs from boot to streaming to ending the stream for both the SDKs in some time.


    However, in 6.03 SDK, you will see all the extra debug prints that we had put when we had successfully ported the 6.03 camera driver.


    I have also noticed that if I removed the printk statements related to those prints then the /dev/video1 doesn’t get created. (I guess due to removal of  delay caused by the prints or any other logical reason that I might not be aware of. To summarize I can't remove the printk statements that have been added over time in 6.03 SDK's camera driver in order to get it working).

    So for 6.03 SDK, can you post the diff over the 6.03 SDK camera driver that I have shared with you? It will be easier for me to patch it!

    Otherwise I will have to patch your changes manually! (No problem patching manually but it would be faster with the former approach.)

    Hope you need me to patch the current 6.03 SDK camera driver (already shared with you) only and not the default 6.03 SDK's camera driver.

    Because default camera driver doesn't work. It worked only after the so many modifications we did. We could do the same modifications in 9.03 camera driver but the structure / source code of the camera driver in 9.03  is quite different so skipped that and you also didn't suggest to do the same. 

    -Vishal

  •   , 

    FYI, I had run the command below and I got the output which I have already shared in past replies.

    gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! waylandsink

    When I ran the above command with -v I found that by default the camera resolution  was set to 1920x1080.

    So may be the camera doesn't have proper registers set to open up 1920x1080 resolution.

    So, out of curiosity I tried 1280x720 (1MP) as below:-

    gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=1280,height=720 ! videoconvert ! waylandsink
     

    Here is the output that I got. Basically I am able to see my hand (taking photograph with phone) and a bottle with red cap but partially as the left side is still showing blurred image with only horizontal lines.

    I think the issue is with the register values set in various arrays such as ov5640_setting_low_resov5640_setting_720P_1280_720 and ov5640_setting_1080P_1920_1080. 

    Only register values set inside the array ov5640_setting_720P_1280_720 is able to stream camera and that too partially.

    May be the correct register values will solve the problem!


    PFA the dmesg logs for 9.03 SDK boot + streaming camera using command below:-

    gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=1280,height=720 ! videoconvert ! waylandsink

    dmesg_camera_TI9.03.txt

    Here is the updated patch for my 6.03 modified camera driver as your patch was not on my updated driver and it had compilation error around set_mode function. I have also commented certain redundant prints but obviously** not all. 

    From 45d2e94286920b98ed4559199b7a8fa7a9e75a0b Mon Sep 17 00:00:00 2001
    From: Your Name <you@example.com>
    Date: Fri, 3 Oct 2025 17:42:48 +0530
    Subject: [PATCH] media: i2c: ov5640: Add logs for deciphering i2c writes as
     suggested by Jared. Resolved compilation errors in it. Commented certain
     redundant prints added in the past by me
    
    Signed-off-by: Your Name <you@example.com>
    ---
     drivers/media/i2c/ov5640.c | 49 +++++++++++++++++++++++++++++---------
     1 file changed, 38 insertions(+), 11 deletions(-)
    
    diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
    index 0d7d221f3a..5927756085 100644
    --- a/drivers/media/i2c/ov5640.c
    +++ b/drivers/media/i2c/ov5640.c
    @@ -713,6 +713,8 @@ static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
     	msg.flags = client->flags;
     	msg.buf = buf;
     	msg.len = sizeof(buf);
    +	
    +	dev_info(&client->dev, "ov5640_write_reg: reg: 0x%x, val: 0x%x\n", reg, val);
     
     	ret = i2c_transfer(client->adapter, &msg, 1);
     	if (ret < 0) {
    @@ -1281,6 +1283,8 @@ static int ov5640_set_stream_dvp(struct ov5640_dev *sensor, bool on)
     	u8 hsync_pol = 0;
     	u8 vsync_pol = 0;
     
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_stream_dvp: open\n");
    +
     	//printk(KERN_ALERT  "\nCDOT: Value of flags = %d \n", flags);
     	/*
     	 * Note about parallel port configuration.
    @@ -1376,19 +1380,17 @@ static int ov5640_set_stream_dvp(struct ov5640_dev *sensor, bool on)
     			OV5640_REG_PAD_OUTPUT_ENABLE02,
     			on ? 0xfc : 0); //changed from fc
     
    -	if (ret) {
    -		//printk(KERN_ALERT  "\nCDOT: Return from enable DVP data lines check -  %s %d \n", __FUNCTION__,__LINE__);
    -		return ret;
    -	}
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_stream_dvp: close\n");
     
    -	//printk(KERN_ALERT  "\nCDOT: Returning 0 -  %s %d \n", __FUNCTION__,__LINE__);
    -	return 0;
    +	return ret;
     }
     
     static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     {
     	int ret;
     
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_stream_mipi: open\n");
    +
     	/*
     	 * Enable/disable the MIPI interface
     	 *
    @@ -1411,8 +1413,12 @@ static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on)
     	if (ret)
     		return ret;
     
    -	return ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
    +	ret = ov5640_write_reg(sensor, OV5640_REG_FRAME_CTRL01,
     			on ? 0x00 : 0x0f);
    +
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_stream_mipi: close\n");
    +
    +	return ret;
     }
     
     static int ov5640_get_sysclk(struct ov5640_dev *sensor)
    @@ -1698,8 +1704,8 @@ ov5640_find_mode(struct ov5640_dev *sensor, enum ov5640_frame_rate fr,
     			hact, vact,
     			width, height);
     
    -	printk(KERN_ALERT  "\n: FPS is :%d %s %d \n",fr, __FUNCTION__,__LINE__);
    -	printk(KERN_ALERT  "\nCDOT: mode is :%d x %d %s %d \n",mode->hact,mode->vact, __FUNCTION__,__LINE__);
    +	//printk(KERN_ALERT  "\n: FPS is :%d %s %d \n",fr, __FUNCTION__,__LINE__);
    +	//printk(KERN_ALERT  "\nCDOT: mode is :%d x %d %s %d \n",mode->hact,mode->vact, __FUNCTION__,__LINE__);
     	if (!mode ||
     			(!nearest && (mode->hact != width || mode->vact != height)))
     		return NULL;
    @@ -1908,6 +1914,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	dn_mode = mode->dn_mode;
     	orig_dn_mode = orig_mode->dn_mode;
     
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_mode: open\n");
    +
     	/* auto gain and exposure must be turned off when changing modes */
     	if (auto_gain) {
     		ret = ov5640_set_autogain(sensor, false);
    @@ -1983,6 +1991,8 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
     	sensor->pending_mode_change = false;
     	sensor->last_mode = mode;
     
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_mode: close\n");
    +
     	return 0;
     
     restore_auto_exp_gain:
    @@ -2253,7 +2263,7 @@ static int ov5640_try_frame_interval(struct ov5640_dev *sensor,
     		}
     	}
     
    -	printk(KERN_ALERT "\nVM_AK: RATE : %d  FPS: %d MINFPS: %d BEST FPS MAXFPS: %d %s %d \n",rate,fps,minfps,best_fps,maxfps, __FUNCTION__,__LINE__);
    +	//printk(KERN_ALERT "\nVM_AK: RATE : %d  FPS: %d MINFPS: %d BEST FPS MAXFPS: %d %s %d \n",rate,fps,minfps,best_fps,maxfps, __FUNCTION__,__LINE__);
     	fi->numerator = 1;
     	fi->denominator = best_fps;
     
    @@ -2391,6 +2401,9 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	bool is_rgb = false;
     	bool is_jpeg = false;
     	u8 val;
    +
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_framefmt: open\n");
    +
     	printk(KERN_ALERT  "\nCDOT: Initial format val=0x%x \n", format->code);
     
     	switch (format->code) {
    @@ -2460,9 +2473,13 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
     	 * - [5]:	Enable JPEG 2x clock
     	 * - [3]:	Enable JPEG clock
     	 */
    -	return ov5640_mod_reg(sensor, OV5640_REG_SYS_CLOCK_ENABLE02,
    +	ret = ov5640_mod_reg(sensor, OV5640_REG_SYS_CLOCK_ENABLE02,
     			BIT(5) | BIT(3),
     			is_jpeg ? (BIT(5) | BIT(3)) : 0);
    +
    +	dev_info(&sensor->i2c_client->dev, "ov5640_set_framefmt: close\n");
    +
    +	return ret;
     }
     
     /*
    @@ -3099,6 +3116,8 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     	struct ov5640_dev *sensor = to_ov5640_dev(sd);
     	int ret = 0;
     
    +	dev_info(&sensor->i2c_client->dev, "ov5640_s_stream: open: enable: %d\n", enable);
    +
     	mutex_lock(&sensor->lock);
     
     	if (sensor->streaming == !enable) {
    @@ -3148,6 +3167,9 @@ static int ov5640_s_stream(struct v4l2_subdev *sd, int enable)
     	}
     out:
     	mutex_unlock(&sensor->lock);
    +
    +	dev_info(&sensor->i2c_client->dev, "ov5640_s_stream: close: enable: %d\n", enable);
    +
     	return ret;
     }
     
    @@ -3237,6 +3259,8 @@ static int ov5640_probe(struct i2c_client *client,
     	u32 rotation;
     	int ret;
     
    +	dev_info(dev, "ov5640_probe: open\n");
    +
     	sensor = devm_kzalloc(dev, sizeof(*sensor), GFP_KERNEL);
     	if (!sensor)
     		return -ENOMEM;
    @@ -3348,6 +3372,9 @@ static int ov5640_probe(struct i2c_client *client,
     	ret = v4l2_async_register_subdev(&sensor->sd);
     	if (ret)
     		goto free_ctrls;
    +
    +	dev_info(dev, "ov5640_probe: close\n");
    +
     	return 0;
     
     free_ctrls:
    -- 
    2.17.1
    

     

    If your patch over my driver is ready (which gets compiled as well) and if it is dissimilar to my patch above then you can post it here otherwise ignore posting it.

    PFA the log file for 6.03 SDK camera (boot  logs+ same gstreamer command as for 9.03) 
    6102.dmesg_camera_6.03.txt

    Ignore all the prints that are already part of our current driver in attached file above.

    **As like I said I can't remove all my previous prints as removing them leads to camera not getting detected as already explained in previous reply. 

    -Vishal

  • Hi  , 

    Hope you have read my replies.

    This is a gentle reminder, please reply if you have any insights / suggestions to solve the issue.

    -Vishal

  •  ,

    I have certain doubts. 

    Why only 1280x720 resolution feed is opening and not any other feed like 640x480 / 1920x1080 when running the gstreamer command?

    Also after running the gstreamer command for 1280x720 as below, I tried to play with certain registers so that I could get the image to full screen:-


    gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=1280,height=720 ! videoconvert ! waylandsink


    I set the following commands to set the two registers (0x380c and 0x380d) while the gstreamer pipeline/command was running and I got the image below:-

    /usr/sbin/i2cset -f -y 2 0x3c 0x38 0x0c 0x06 i
    /usr/sbin/i2cset -f -y 2 0x3c 0x38 0x0d 0x00 i

    I could not reduce further than this! 

    Please help me get it to full screen. Also help me resolve why other resolutions aren't working!

    -Vishal

  • Hi  ,

    Apologies, I was out of office.

    The timings for the camera are likely incorrect for the specific resolution. You can read section 4-2 of the camera's datasheet for details on setting the windowing registers to the correct values.

    You will have to set the correct values for the different windows:

    Assuming you're not scaling, the following equations should give your values. The example assumes the X_ADDR_ST and X_ADDR_END are kept at default (entire physical pixel size):

    Variable Calculation Example for 1280x720
    X_OFFSET ((X_ADDR_END - X_ADDR_ST) - X_OUTPUT_SIZE) / 2 672
    Y_OFFSET ((Y_ADDR_END - Y_ADDR_ST) - Y_OUTPUT_SIZE) / 2 622
    X_OUTPUT_SIZE out_width 1280
    Y_OUTPUT_SIZE out_height 720

    The values are in decimal (not hex).

    Best,
    Jared