IMX6 TW9990

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

IMX6 TW9990

3,242 Views
suifengrumeng
Contributor II

IMX6DL_TW9990.png大家好:

   最近公司做的项目上用到了摄像头,我看到模拟视频解码器用的是TW9990芯片。这个驱动目前内核中已经加过了,但是测试的时候,出了点问题,用官方yocto平台下的imx6_v4l2_test测试的时候,出现了BUG,现在不确定是驱动问题还是测试demo的问题了,所以在这里请教下解决办法。不知道有没有专门针对imx6 tw9990的测试demo呢?

现在再描述一下BUG的情况:

我使用的测试软件是mxc_v4l2_test/mxc_v4l2_overlay.c文件,现在出现在LCD上的显示是如图上那样的,不知道是什么问题?大家能帮助我吗?

另外,内核的启动log信息这块,我觉的有点不太正常的是tw9990的打印信息:

。。。。。。。。。。。。。。。。。。。。。。。

tw9990 2-0044: tw9990_probe:tw9990 probe i2c address is 0x44
tw9990 2-0044: tw9990 Product ID 0:0
tw9990 2-0044: tw9990 probe done 0
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
galcore: clk_get vg clock failed, disable vg!

。。。。。。。。。。。。。。。。。。。。。。。。。。。

这个产品的ID怎么是0:0,这是让我感觉不太正常的一点,所以跟大家在这里探讨下,希望能获得大家的帮助!

Labels (1)
Tags (1)
0 Kudos
5 Replies

2,189 Views
173829023
Contributor I

we are used TW9990,modules .when execute  mxc-v4l2-tvin -ow 640 -oh 480  ,the panel not change display anthing and printf show belowing:

130|root@sabresd_6dq:/ # mxc-v4l2-tvin -ow 640 -oh 480

In MVC: mxc_v4l_open
device name is Mxc Camera
tw9990:ioctl_g_ifparm
tw9990:ioctl_g_fmt_cap
Returning size of 720x525
End of mxc_v4l_open: v2f pix widthxheight 720 x 480
End of mxc_v4l_open: crop_bounds widthxheight 720 x 525
End of mxc_v4l_open: crop_defrect widthxheight 720 x 525
End of mxc_v4l_open: crop_current widthxheight 720 x 525
On Open: Input to ipu size is 720 x 525
In tw9990:ioctl_init
tw9990:ioctl_dev_init
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl 80685600
case VIDIOC_QUERYCAP
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c02c5651
TV decoder chip is tw9990_decoderIn MVC:mxc_v4l_ioctl

In MVC: mxc_v4l_do_ioctl c0045627
case VIDIOC_S_INPUT
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl 80085617
case VIDIOC_G_STD
In mxc_v4l2_g_std
tw9990:ioctl_g_fmt_cap
In tw9990_get_std
tw9990:read_mod 0x7
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl 40085618
case VIDIOC_S_STD
In mxc_v4l2_s_std b000
Setting standard to NTSC b000
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c02c563a
case VIDIOC_CROPCAP
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c0cc5616
case VIDIOC_S_PARM
In mxc_v4l2_s_param
In tw9990:ioctl_g_parm
type is V4L2_BUF_TYPE_VIDEO_CAPTURE
Current capabilities are 0
Current capturemode is 0 change to 0
Current framerate is 30 change to 0
In tw9990:ioctl_s_parm
tw9990:ioctl_g_ifparm
clock_curr=mclk=0
tw9990:ioctl_g_fmt_cap
Returning size of 720x525
g_fmt_cap returns widthxheight of input as 720 x 525
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c0cc5605
case VIDIOC_S_FMT
In MVC: mxc_v4l2_s_fmt
type=V4L2_BUF_TYPE_VIDEO_CAPTURE
End of mxc_v4l2_s_fmt: v2f pix widthxheight 720 x 480
End of mxc_v4l2_s_fmt: crop_bounds widthxheight 720 x 525
End of mxc_v4l2_s_fmt: crop_defrect widthxheight 720 x 525
End of mxc_v4l2_s_fmt: crop_current widthxheight 720 x 480
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c0cc5604
case VIDIOC_G_FMT
In MVC: mxc_v4l2_g_fmt type=1
type is V4L2_BUF_TYPE_VIDEO_CAPTURE
End of mxc_v4l2_g_fmt: v2f pix widthxheight 720 x 480
End of mxc_v4l2_g_fmt: crop_bounds widthxheight 720 x 525
End of mxc_v4l2_g_fmt: crop_defrect widthxheight 720 x 525
End of mxc_v4l2_g_fmt: crop_current widthxheight 720 x 480
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c0145608
case VIDIOC_REQBUFS
In MVC:mxc_streamoff
MVC: In mxc_free_frame_buf
In MVC:mxc_allocate_frame_buf - size=691200
driver=mxc_vout, card=DISP3 FG, bus=, version=0x00000000, capabilities=0x04000002
fmt RGB565: fourcc = 0x50424752
fmt BGR24: fouIn MVC:mxc_v4l_ioctl
rcc = 0x33524742
fmt RGB24: fourIn MVC: mxc_v4l_do_ioctl c0445609
cc = 0x33424752
fmt RGB32: fourc case VIDIOC_QUERYBUF
c = 0x34424752
fmt BGR32: fourccIn MVC:mxc_v4l2_buffer_status
= 0x34524742
fmt NV12: fourcc =In MVC:mxc_mmap
0x3231564e
fmt UYVY: fourcc = 0<0> pgoff=0x20a00, start=0x40711000, end=0x407ba000
x59565955
fmt YUYV: fourcc = 0x5In MVC:mxc_v4l_ioctl
6595559
fmt YUV422 planar: fourcIn MVC: mxc_v4l_do_ioctl c0445609
c = 0x50323234
fmt YUV444: fourc case VIDIOC_QUERYBUF
c = 0x34343459
fmt YUV420: fourcIn MVC:mxc_v4l2_buffer_status
c = 0x32315559
fmt YVU420: fourcIn MVC:mxc_mmap
c = 0x32315659
fmt TILED NV12P: pgoff=0x20e00, start=0x40863000, end=0x4090c000
fourcc = 0x50564e54
fmt TILED NVIn MVC:mxc_v4l_ioctl
12F: fourcc = 0x46564e54
fmt YUVIn MVC: mxc_v4l_do_ioctl c0445609
444 planar: fourcc = 0x50343434
case VIDIOC_QUERYBUF
In MVC:mxc_v4l2_buffer_status
In MVC:mxc_mmap
pgoff=0x20700, start=0x409b5000, end=0x40a5e000
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c044560f
case VIDIOC_QBUF
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c044560f
case VIDIOC_QBUF
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c044560f
case VIDIOC_QBUF
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl 40045612
case VIDIOC_STREAMON
In MVC:mxc_streamon
start time = 92284 s, 408371 usIn MVC:mxc_v4l_ioctl

In MVC: mxc_v4l_do_ioctl 80085617
case VIDIOC_G_STD
In mxc_v4l2_g_std
tw9990:ioctl_g_fmt_cap
In tw9990_get_std
tw9990:read_mod 0x7
In MVC:mxc_v4l_ioctl
In MVC: mxc_v4l_do_ioctl c0445611
case VIDIOC_DQBUF
In MVC:mxc_v4l_dqueue

0 Kudos

2,189 Views
jianansun
Contributor II

最近也在调tw9990, 可以把您的驱动发一份给我吗?万分感谢.... 1547828072@qq.com

0 Kudos

2,189 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello,

   Please try to use the patch for TW9912 to you system!

Regards,

Weidong

0 Kudos

2,189 Views
suifengrumeng
Contributor II

你好,你发的附近我看到了,但是他基于的BSP内核版本为3.0.35。而我现在使用的是3.14.52的内核,另外,能否给一个测试tw9990的demo呢?把摄像头的画面显示在LVDS上的demo?将十分感谢!!!

0 Kudos

2,189 Views
suifengrumeng
Contributor II

刚才又去查找了下tw9990的datasheet,这个芯片的Product ID确实是0,如下所示:

0X00 – PRODUCT ID CODE REGISTER (ID)
Bit Function R/W Description Reset
7-3 ID R The TW9990 Product ID code is 00000. 0
2-0 Revision R The revision number. 0

如此看来,我的驱动,似乎没有问题,/dev/video0的设备节点也创建成功,不知道大家能否提供一个完好的测试demo,最好是能将/dev/video0的显示画面显示在LVDS上,我们用的是LVDS的显示屏,谢谢!

0 Kudos