Toshiba TC358743 Linux driver for Jetson: Difference between revisions
Jcaballero (talk | contribs) |
Jcaballero (talk | contribs) |
||
Line 30: | Line 30: | ||
'''4.''' Follow the instructions in [http://developer.ridgerun.com/wiki/index.php?title=Compiling_Tegra_X1_source_code#Build_Kernel Compiling_Tegra_X1_source_code (Build Kernel)] for building the kernel, and then flash the image. | '''4.''' Follow the instructions in [http://developer.ridgerun.com/wiki/index.php?title=Compiling_Tegra_X1_source_code#Build_Kernel Compiling_Tegra_X1_source_code (Build Kernel)] for building the kernel, and then flash the image. | ||
Make sure to enable tc358743 driver support and | Make sure to enable tc358743 driver support and soc_camera support, and disable platform camera support. | ||
<pre> | <pre> | ||
make menuconfig | make menuconfig | ||
Line 47: | Line 47: | ||
->V4L platform devices | ->V4L platform devices | ||
-> <*> SoC camera support | -> <*> SoC camera support | ||
-> < > platform camera support | |||
</pre> | </pre> | ||
Revision as of 13:23, 14 July 2016
TC358743 features
Reference: Toshiba TC358743 bridge chip
The Toshiba TC358743 is an HDMI 1.4 to MIPI CSI-2 1.01 bridge chip capable of handling video data up to 1080P at 60 fps.
Tested resolutions are 640x480, 1280x720, 1920x1080. Tested format is UYVY.
Source code
In order to get the source code please send an email to support@ridgerun.com or contact us
Enable driver
The driver was developed for kernel 3.10.67 using NVIDIA kernel source l4t-r23.2.
1. Follow the instructions in Compiling_Tegra_X1_source_code (Downloading the code) to get the kernel source code.
2. Once you have the source code, apply the following two patches if you haven't yet, for fixing kernel errors during compilation.
kernel_r7_asm.patch
logical_comparison.patch
3. Apply the driver patches:
add-tc358743-driver.patch
add-tc358743-dtb.patch
fix-continuos-clock-in-v4l2-driver.patch
4. Follow the instructions in Compiling_Tegra_X1_source_code (Build Kernel) for building the kernel, and then flash the image.
Make sure to enable tc358743 driver support and soc_camera support, and disable platform camera support.
make menuconfig
-> Device Drivers -> Multimedia support -> Sensors used on soc_camera driver -> <M>tc358743 support
-> Device Drivers -> Multimedia support ->V4L platform devices -> <*> SoC camera support -> < > platform camera support
Mount the kernel module
sudo rmmod nvhost_vi sudo modprobe tc358743 sudo modprobe tegra_camera
Examples
Yavta
Yavta (Yet Another V4L2 Test Application) can be used for testing the driver, according to the input video resolution:
./yavta /dev/video0 -c1 -n1 -s640x480 -Ftest1.raw
./yavta /dev/video0 -c1 -n1 -s1280x720 -Ftest2.raw
./yavta /dev/video0 -c1 -n1 -s1920x1080 -Ftest3.raw
Also Raw pixels can be used for visualizing the captured frame.
GStreamer
To capture a video of 100 frames, and according to the input video resolution use:
gst-launch-1.0 v4l2src num-buffers=100 ! 'video/x-raw,width=640,height=480,format=UYVY,framerate=60/1'\ ! filesink location=test4.raw
gst-launch-1.0 v4l2src num-buffers=100 ! 'video/x-raw,width=1280,height=720,format=UYVY,framerate=60/1'\ ! filesink location=test5.raw
gst-launch-1.0 v4l2src num-buffers=100 ! 'video/x-raw,width=1920,height=1080,format=UYVY,framerate=60/1'\ ! filesink location=test6.raw
Output video can be visualized using Vooya
Also, the following pipeline can be used to visualize the input video in the Tegra X1:
gst-launch-1.0 v4l2src ! 'video/x-raw,format=UYVY,width=640,height=480' ! queue ! videoconvert ! nveglglessink
gst-launch-1.0 v4l2src ! 'video/x-raw,format=UYVY,width=1280,height=720' ! queue ! videoconvert ! nveglglessink
gst-launch-1.0 v4l2src ! 'video/x-raw,format=UYVY,width=1920,height=1080' ! queue ! videoconvert ! nveglglessink