For customers who want to port their own GMSL2 cameras on NRU-161V or NRU-171V
Last updated
Last updated
MAX9296_A=0x48
MAX9296_B=0x4A
MAX9296_C=0x68
MAX9295_PRIM=0x62 # AC-IMX390 as an example
MAX9295_AA=0x70
MAX9295_AB=0x71
MAX9295_BA=0x72
MAX9295_BB=0x73
MAX9295_CA=0x74
MAX9295_CB=0x75
function disable20086 {
i2cset -f -y 0 0x28 0x01 0x10
i2cset -f -y 0 0x29 0x01 0x10
sleep 0.8
}
function resetMAX9296 {
echo out > /sys/class/gpio/PZ.05/direction
echo out > /sys/class/gpio/PZ.07/direction
echo out > /sys/class/gpio/PZ.06/direction
echo 0 > /sys/class/gpio/PZ.05/value
echo 0 > /sys/class/gpio/PZ.06/value
echo 0 > /sys/class/gpio/PZ.07/value
sleep 0.5
echo 1 > /sys/class/gpio/PZ.05/value
echo 1 > /sys/class/gpio/PZ.06/value
echo 1 > /sys/class/gpio/PZ.07/value
sleep 0.5
}
function initMAX9296_noMove {
to=$1
# Disable MIPI
i2ctransfer -f -y 0 w3@$to 0x03 0x13 0x00
sleep 0.001
# Disable UART . with Pin swapped
i2ctransfer -f -y 0 w3@$to 0x00 0x03 0x40
sleep 0.001
# Setting (GMSL2) Speed 375M / 1.5G?
i2ctransfer -f -y 0 w3@$to 0x00 0x01 0x02
sleep 0.001
}
function enable20086 {
CH=$1
case "$CH" in
0)
i2cset -f -y 0 0x28 0x01 0x13
;;
1)
i2cset -f -y 0 0x29 0x01 0x13
;;
2)
i2cset -f -y 0 0x29 0x01 0x1f
esac
sleep 0.5
}
disable20086
resetMAX9296
initMAX9296_noMove $MAX9296_A
initMAX9296_noMove $MAX9296_B
initMAX9296_noMove $MAX9296_C
enable20086 0
...