Hello. In last yocto kirkstone (Linux 5.15.32-2.0.0) uses kernel-module-isp-vvcam 4.2.2.18.0. This isp has an example for working with a sensor AR1335 and autofocus functions are used there. But in Linux there is no mention of this sensor(no dts). We need to test the autofocus performance on this platform, in particular the lens adjustment. For this, as I understand it, in dts you need a description of the sensor and lens. My dts:
/dts-v1/;
#include "imx8mp-evk.dts"
&i2c2 {
/delete-node/ov5640_mipi@3c;
imx258_0: imx258_mipi@1a {
compatible = "sony,imx258";
reg = <0x1a>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_csi0_pwn>, <&pinctrl_csi0_rst>, <&pinctrl_csi_mclk>;
clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>;
clock-names = "mclk";
clock-frequency = <24000000>;
rotation = <180>;
orientation = <2>;
assigned-clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>;
assigned-clock-parents = <&clk IMX8MP_CLK_24M>;
assigned-clock-rates = <24000000>;
csi_id = <0>;
resetb-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
lens-focus = <&dw9714>;
port {
imx258_mipi_0_ep: endpoint {
data-lanes = <1 2 3 4>;
clock-lanes = <0>;
max-pixel-frequency = /bits/ 64 <500000000>;
remote-endpoint = <&mipi_csi0_ep>;
};
};
};
dw9714: dac@c {
compatible = "dongwoon,dw9714";
reg = <0x0c>;
};
};
&i2c3 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
ov5640_1: ov5640_mipi@3c {
status = "disabled";
};
};
&cameradev {
status = "okay";
};
&isi_0 {
status = "disabled";
};
&isi_1 {
status = "disabled";
};
&isp_0 {
status = "okay";
};
&dewarp {
status = "okay";
};
&mipi_csi_0 {
status = "okay";
port@0 {
endpoint {
remote-endpoint = <&imx258_mipi_0_ep>;
data-lanes = <4>;
csis-hs-settle = <16>;
};
};
};
&mipi_csi_1 {
status = "disabled";
};
Sensor work fine, but how to describe autofocus correctly in dts?? ISP driver need lens id and name.
Can you write the correct dts for example for the ar1335 sensor lens?
Thank you