ADV7180 i.MX6

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

ADV7180 i.MX6

Jump to solution
2,914 Views
mirkoardinghi1
Contributor IV


I have some problems with this chip!

I'm using the BSP imx-3.14.52-1.1.0_ga

1) First configuration

AD7180 + iMX 6Quad

CMA=260M

Device Tree
adv7180: adv7180@21 {
compatible = "adv,adv7180";
reg = <0x21>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ipu1_6>;
clocks = <&clks 201>;
clock-names = "csi_mclk";
DOVDD-supply = <&reg_3p3v>; /* 3.3v, enabled via 2.8 VGEN6 */
AVDD-supply = <&reg_3p3v>;  /* 1.8v */
DVDD-supply = <&reg_3p3v>;  /* 1.8v */
PVDD-supply = <&reg_3p3v>;  /* 1.8v */
pwn-gpios = <&gpio3 19 0>;  /* put on not used pin */
csi_id = <0>;
mclk = <24000000>;
mclk_source = <0>;
cvbs = <1>;
};

The command

gst-launch-1.0  imxv4l2src  ! imxv4l2sink

all works!

2) Second configuration

AD7180 + iMX 6SoloX

CMA=160M

&csi1 {
status = "okay";
port {
csi1_ep: endpoint {
remote-endpoint = <&adv7180_ep>;
};
};
};
adv7180: adv7180@21 {
compatible = "adv,adv7180";
reg = <0x21>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_csi_2>;
clocks = <&clks IMX6SX_CLK_CSI>;
clock-names = "csi_mclk";
DOVDD-supply = <&reg_3V3>; /* 3.3v, enabled via 2.8 VGEN6 */
AVDD-supply = <&reg_3V3>;  /* 1.8v */
DVDD-supply = <&reg_3V3>;  /* 1.8v */
PVDD-supply = <&reg_3V3>;  /* 1.8v */
pwn-gpios = <&gpio3 19 0>;  /* put on not used pin */
csi_id = <0>;
mclk = <24000000>;
mclk_source = <0>;
cvbs = <1>;
status = "okay";
port {
adv7180_ep: endpoint {
remote-endpoint = <&csi1_ep>;
};
};
};

pxp_v4l2_out {
compatible = "fsl,imx6sx-pxp-v4l2", "fsl,imx6sl-pxp-v4l2";
status = "okay";
};

The command

gst-launch-1.0  imxv4l2src  ! imxv4l2sink

doesn't work!

If I try /unit_test/pxp_v4l2_out_test.sh

I obtain:

unable to open /dev/video for outpxp-v4l2 pxp_v4l2_out.16: cannot get dma buf size:0xbb800 put, continue searching device. Found v4l2 output device /dev/video1. failed to set output: Cannot allocate memory Unable to handle kernel NULL pointer dereference at virtual address 00000000 unable to open /dev/video for outpgd = 82424000 put, continue searching device. [00000000] *pgd=824bb831Found v4l2 output device /dev/vid, *pte=00000000eo1. , *ppte=00000000 Internal error: Oops: 817 [#1] PREEMPT SMP ARM Modules linked in: CPU: 0 PID: 391 Comm: pxp_v4l2_test.o Not tainted 3.14.52-6QDSX-ga2fafc3-dirty #2 task: 821e0480 ti: 824e0000 task.ti: 824e0000 PC is at __memzero+0x24/0x80 LR is at 0x0 pc : [<8028d864>]    lr : [<00000000>]    psr: 20080013 sp : 824e1df4  ip : 00000000  fp : 824e1e88 r10: 00000000  r9 : 8339b240  r8 : 80a66574 r7 : 0000002f  r6 : c004562f  r5 : 000bb800  r4 : 831c0800 r3 : 00000000  r2 : 00000000  r1 : 000bb7c0  r0 : 00000000 Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user Control: 10c53c7d  Table: 8242404a  DAC: 00000015 Process pxp_v4l2_test.o (pid: 391, stack limit = 0x824e0238) Stack: (0x824e1df4 to 0x824e2000) 1de0:                                              804a714c 831c0800 804a6b04 1e00: 00000003 831d0400 c004562f 80474c04 8333ac40 003000d0 00000000 00000000 1e20: 80a66974 00000000 00000000 000000bc 824e0028 800a32b8 00000001 00000141 1e40: 80a8aa00 00000000 00000000 8071614c 8333ac78 c004562f 00000004 824e1e88 1e60: 00000004 00000000 8339b240 7eb459d4 80474998 80474688 824e0028 00000003 1e80: 00000000 003d0f00 00000001 00000000 00000000 00000000 00707870 00000000 1ea0: 00000000 00000000 00000000 00000000 00000000 00000000 5f707870 326c3476 1ec0: 74756f5f 0036312e 00000000 00000000 00000000 00000000 00000200 04000202 1ee0: 00000000 00000000 00000000 00000000 821e0048 80058730 ffd28de4 ffffffff 1f00: 00002e7b 00000000 80a1a980 831c4ae0 7eb459d4 8339b240 c004562f 00000004 1f20: 824e0000 00000000 00000000 800e78f8 824e1f44 80052900 824e1f64 807160f8 1f40: 00000000 800550ec 00000000 76daf4c8 821e0000 00000000 7eb45b04 8071614c 1f60: 00000000 8002e04c 83e9cb80 8339b241 7eb459d4 8339b240 c004562f 00000004 1f80: 824e0000 00000000 00000000 800e7aec 008c1008 00000001 00000000 00000036 1fa0: 8000e5e4 8000e460 008c1008 00000001 00000004 c004562f 7eb459d4 00000202 1fc0: 008c1008 00000001 00000000 00000036 00000002 00000000 76f2e000 00000000 1fe0: 00012f00 7eb459cc 00009c6c 76e79cbc 00080010 00000004 00000000 00000000 Code: e52de004 e1a0c002 e1a0e002 e2511040 (a8a0500c) ---[ end trace d85d1847e4b1d091 ]--- libphy: 2188000.ethernet:00 - Link is Down

I checked the kernel config and I have enable all required modules.

Can anyone help me to resolve this problem?

compatible = "adv,adv7180"; reg = <0x21>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_6>; clocks = <&clks 201>; clock-names = "csi_mclk"; DOVDD-supply = <&reg_3p3v>; /* 3.3v, enabled via 2.8 VGEN6 */ AVDD-supply = <&reg_3p3v>;  /* 1.8v */ DVDD-supply = <&reg_3p3v>;  /* 1.8v */ PVDD-supply = <&reg_3p3v>;  /* 1.8v */ pwn-gpios = <&gpio3 19 0>;  /* put on not used pin */ csi_id = <0>; mclk = <24000000>; mclk_source = <0>; cvbs = <1>; };

Labels (4)
0 Kudos
1 Solution
1,109 Views
mirkoardinghi1
Contributor IV

Thanks. You saved me!

View solution in original post

0 Kudos
3 Replies
1,110 Views
mirkoardinghi1
Contributor IV

Thanks. You saved me!

0 Kudos
1,109 Views
mirkoardinghi1
Contributor IV

Sorry but I thought the MXC_TVIN_ADV7180 was the correct driver. I was wrong?

0 Kudos
1,109 Views
igorpadykov
NXP Employee
NXP Employee

Hi Mirko

I am afraid BSP does not support adv7180 for SoloX . It make sense

to look at example of subdev driver - v4l2 subdev in ..drivers/media/platform/mxc/subdev/ov5640.c,

L3.14.28_1.0.0-Add-OV5642-subdev-driver.patch.zip, and  create similar driver for adv7180.

https://community.freescale.com/message/589825#589825

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos