Other Parts Discussed in Thread: DS90UB953-Q1
Dear TI experts. I'm now trying to realize the dual camera display with dual DS90UB953-Q1 + IMX219 and DS90UB954-Q1 in Line concatenate forwarding mode.
The image size is 1024x1088 for the image of 2048x1088.
The MIPI speed from sensor is 768MHz (and 512MHz).
I am referring the code in the datasheet 8.4.28.6.1 and modified(corrected) the address and the value of address 0x72.
I can see the normal images from both ports, however, when line concatenating, the image is corrupted as below.
I think something is missing in the script.
Please show me the example code for the line-concatenate forwarding mode.
Below is the script to set the Tx, Rx, and the sensors.
The slave ID for Rx is changed to 0x3d.
----
#!/bin/bash
sudo i2cset -y 10 0x10 0x01 0x00 0x00 i # IMX219 streaming off
sudo i2cset -y 10 0x10 0x01 0x03 0x01 i # IMX219 SW reset
# sudo i2cset -y 10 0x10 0x01 0x00 b
# sudo i2cset -y 10 0x10 0x01 0x00 b
# sudo i2cset -y 10 0x10 0x00 0x00 b
sudo i2cset -y 10 0x3d 0x01 0x03 b # Rx Reset include registers ID change back to 0x30
sudo i2cset -y 10 0x30 0x01 0x03 b # Rx Reset include registers
sudo i2cset -y 10 0x30 0x00 0x7b b # Set Rx ID to 0x3d
#echo "xxxxx1xxxxx"
sudo i2cset -y 10 0x3d 0x4c 0x03 b # port0(0x01) + port1(0x03) write to both cameras
sudo i2cset -y 10 0x3d 0x58 0x5a b # BCC_CONFIG
sudo i2cset -y 10 0x3d 0x5c 0x30 b # SER ID
sudo i2cset -y 10 0x3d 0x02 0x1E b # General configuration
sudo i2cset -y 10 0x3d 0x0f 0x7f b # GPIO INPUT ENABLE
sudo i2cset -y 10 0x3d 0x18 0xe0 b # Frame Sync from GPIO 6
sudo i2cset -y 10 0x3d 0x6f 0xa8 b # BC_GPIO_CTL, GPIO3 for frame sync
#echo "xxxxx2xxxxx"
sudo i2cset -y 10 0x3d 0x1F 0x02 b # CSI_PLL CTL, 02:800MHz 1600MHz:00
sudo i2cset -y 10 0x3d 0x0C 0xff b # Rx_PORT_CTL, all enable, port0(0xAB) + port1(0x96) bf(OK),be(NG)
# echo " set port 0 I2C enable and VC "
#sudo i2cset -y 10 0x3d 0x72 0xec b # port0(0xE8) + port1(0xE4)
sudo i2cset -y 10 0x3d 0x4c 0x01 b # write to port0
sudo i2cset -y 10 0x3d 0x72 0xe8 b # port0(0xE8)
# echo " set port 1 I2C enable and VC "
sudo i2cset -y 10 0x3d 0x4c 0x12 b # write to port1
sudo i2cset -y 10 0x3d 0x72 0xe8 b # port0(0xED)
# echo " set port 0 & 1 I2C enable "
sudo i2cset -y 10 0x3d 0x4c 0x03 b # write to both ports
sudo i2cset -y 10 0x3d 0x33 0x21 b # 2lane, non continous clock, CSI enable
sudo i2cset -y 10 0x3d 0x21 0x3d b # CSI0_SYNC_FORWARD, line concatenation
sudo i2cset -y 10 0x3d 0x20 0x00 b # Forward port0 and port1
#######
sudo i2cset -y 10 0x3d 0x4c 0x03 b # port0(0x01) + port1(0x03) write to both cameras
sudo i2cset -y 10 0x3d 0x5d 0x20 b # SlaveID[0] for IMX219
sudo i2cset -y 10 0x3d 0x65 0x20 b # SlaveAlias[0] for IMX219
sudo i2cset -y 10 0x18 0x02 0x12 b # Tx Gneral_CFG, non-continous clock, 2lane, CRC enable
sudo i2cset -y 10 0x18 0x05 0x03 b # PLLCLK_CTRL, default value
echo "xxxxx3xxxxx"
####sudo i2cset -y 10 0x18 0x05 0x0b b # set 4Gbps
echo "xxxxx4xxxxx"
sudo i2cset -y 10 0x18 0x0E 0x87 b # GPIO3 output enable, input disable
echo "xxxxx5xxxxx"
sudo i2cset -y 10 0x18 0x0E 0x87 b # GPIO3 output enable, input disable
#echo "xxxxx6xxxxx"
sudo i2cset -y 10 0x10 0x01 0x00 0x00 i # IMX219 streaming off
sudo i2cset -y 10 0x10 0x01 0x03 0x01 i # IMX219 SW reset
#sudo i2cset -y 10 0x10 0x01 0x00 b
#echo "xxxxx7xxxxx"
#sudo i2cset -y 10 0x10 0x01 0x00 b
#sudo i2cset -y 10 0x10 0x00 0x00 b
/home/pi/camera_i2c
sleep 1
/home/pi/camera_i2c
#------------------------------------------
#10c10
#< sudo i2cset -y 10 0x3d 0x4c 0x01 b
#---
#> sudo i2cset -y 10 0x3d 0x4c 0x03 b
#18,19c18,19
#< sudo i2cset -y 10 0x3d 0x0C 0xab b
#> sudo i2cset -y 10 0x3d 0x0C 0x96 b
#< sudo i2cset -y 10 0x3d 0x72 0xe8 b
#> sudo i2cset -y 10 0x3d 0x72 0xe4 b
----
I appreciate your kind support in advance.
est Regards,
NOMURA
