SOLVED CSI132相机nvidia nx平台上无法更新硬件
- 
					
					
					
					
 我的板子是nvidia nx ,系统版本是32.6.1,按照http://wiki.veye.cc/index.php/VEYE_CS_Camera_for_Jetson_TX2/zh中的教程,将对应的Image_l4t_r32.6.1_veyecam_signed_4_xavier.tgz和Image_l4t_r32.6.1_veyecam.tar,gz 解压缩以后的Image和Image.sig拷贝到/boot 下并将对应的tegra194-p3668-all-p3509-0000.dtb也考到boot下了,下面是boot下的内容 
 '''
 ls /boot/
 dtb
 extlinux
 grub
 Image
 Image.sig
 Image.t19x
 Image.t19x.sig
 initrd
 initrd.img
 initrd.img-4.9.253-tegra
 initrd.sig
 initrd.t19x
 initrd.t19x.sig
 kernel_tegra194-p3668-all-p3509-0000.dtb
 tegra186-p3636-0001-p3509-0000-a01-adafruit-sph0645lm4h.dtbo
 tegra186-p3636-0001-p3509-0000-a01-adafruit-uda1334a.dtbo
 tegra186-p3636-0001-p3509-0000-a01.dtb
 tegra186-p3636-0001-p3509-0000-a01-fe-pi-audio.dtbo
 tegra186-p3636-0001-p3509-0000-a01-hdr40.dtbo
 tegra186-p3636-0001-p3509-0000-a01-m2ke.dtbo
 tegra186-p3636-0001-p3509-0000-a01-respeaker-4-mic-array.dtbo
 tegra186-p3636-0001-p3509-0000-a01-respeaker-4-mic-lin-array.dtbo
 tegra186-quill-p3310-1000-a00-00-base.dtb
 tegra186-quill-p3310-1000-as-0888.dtb
 tegra186-quill-p3310-1000-c03-00-base-adafruit-sph0645lm4h.dtbo
 tegra186-quill-p3310-1000-c03-00-base-adafruit-uda1334a.dtbo
 tegra186-quill-p3310-1000-c03-00-base-csi.dtbo
 tegra186-quill-p3310-1000-c03-00-base.dtb
 tegra186-quill-p3310-1000-c03-00-base-fe-pi-audio.dtbo
 tegra186-quill-p3310-1000-c03-00-base-hdr30.dtbo
 tegra186-quill-p3310-1000-c03-00-base-hdr40.dtbo
 tegra186-quill-p3310-1000-c03-00-base-m2ke.dtbo
 tegra186-quill-p3310-1000-c03-00-base-respeaker-4-mic-array.dtbo
 tegra186-quill-p3310-1000-c03-00-base-respeaker-4-mic-lin-array.dtbo
 tegra186-quill-p3310-1000-c03-00-dsi-hdmi-dp.dtb
 tegra186-quill-p3489-0888-a00-00-base.dtb
 tegra186-quill-p3489-1000-a00-00-ucm1.dtb
 tegra186-quill-p3489-1000-a00-00-ucm2.dtb
 tegra194-p2888-0001-p2822-0000-adafruit-sph0645lm4h.dtbo
 tegra194-p2888-0001-p2822-0000-adafruit-uda1334a.dtbo
 tegra194-p2888-0001-p2822-0000-csi.dtbo
 tegra194-p2888-0001-p2822-0000.dtb
 tegra194-p2888-0001-p2822-0000.dtb.sig
 tegra194-p2888-0001-p2822-0000-fe-pi-audio.dtbo
 tegra194-p2888-0001-p2822-0000-hdr40.dtbo
 tegra194-p2888-0001-p2822-0000-m2ke.dtbo
 tegra194-p2888-0001-p2822-0000-maxn.dtb
 tegra194-p2888-0001-p2822-0000-maxn.dtb.sig
 tegra194-p2888-0001-p2822-0000-respeaker-4-mic-array.dtbo
 tegra194-p2888-0001-p2822-0000-respeaker-4-mic-lin-array.dtbo
 tegra194-p2888-0004-e3900-0000-adafruit-sph0645lm4h.dtbo
 tegra194-p2888-0004-e3900-0000-adafruit-uda1334a.dtbo
 tegra194-p2888-0004-e3900-0000-csi.dtbo
 tegra194-p2888-0004-e3900-0000.dtb
 tegra194-p2888-0004-e3900-0000.dtb.sig
 tegra194-p2888-0004-e3900-0000-dual-imx274.dtbo
 tegra194-p2888-0004-e3900-0000-fe-pi-audio.dtbo
 tegra194-p2888-0004-e3900-0000-hdr40.dtbo
 tegra194-p2888-0004-e3900-0000-imx274.dtbo
 tegra194-p2888-0004-e3900-0000-respeaker-4-mic-array.dtbo
 tegra194-p2888-0004-e3900-0000-respeaker-4-mic-lin-array.dtbo
 tegra194-p2888-0008-p2822-0000.dtb
 tegra194-p2888-0008-p2822-0000.dtb.sig
 tegra194-p2888-as-0006-p2822-0000.dtb
 tegra194-p2888-as-0006-p2822-0000.dtb.sig
 tegra194-p2888-as-p3668-p2822-0000.dtb
 tegra194-p2888-as-p3668-p2822-0000.dtb.sig
 tegra194-p3668-all-p3509-0000-adafruit-sph0645lm4h.dtbo
 tegra194-p3668-all-p3509-0000-adafruit-uda1334a.dtbo
 tegra194-p3668-all-p3509-0000-camera-imx219-dual.dtbo
 tegra194-p3668-all-p3509-0000-camera-imx477-dual.dtbo
 tegra194-p3668-all-p3509-0000-camera-imx477-imx219.dtbo
 tegra194-p3668-all-p3509-0000.dtb
 tegra194-p3668-all-p3509-0000.dtb.sig
 tegra194-p3668-all-p3509-0000-fe-pi-audio.dtbo
 tegra194-p3668-all-p3509-0000-hdr40.dtbo
 tegra194-p3668-all-p3509-0000-m2ke.dtbo
 tegra194-p3668-all-p3509-0000-respeaker-4-mic-array.dtbo
 tegra194-p3668-all-p3509-0000-respeaker-4-mic-lin-array.dtbo
 '''
 但是reboot以后,在设备树下只发现了imx219和imx477
 ‘’‘
 nvidia@nvidia-desktop:/home$ ls /proc/device-tree/cam_i2cmux/i2c@i2c@0/ i2c@1/ nvidia@nvidia-desktop:/home$ ls /proc/device-tree/cam_i2cmux/i2c@0 '#address-cells' name rbpcv2_imx219_a@10 reg 
 linux,phandle phandle rbpcv3_imx477_a@1a '#size-cells'nvidia@nvidia-desktop:/home$ ls /proc/device-tree/cam_i2cmux/i2c@1 '#address-cells' name rbpcv2_imx219_c@10 reg 
 linux,phandle phandle rbpcv3_imx477_c@1a '#size-cells'
 '''
 这个是/sys/bus/i2c/drivers/下也找不到对应的相机目录,
 '''
 nvidia@nvidia-desktop:/home$ ls /sys/bus/i2c/driversbmi160_i2c imx318 lc898212 max9296 pca954x sgtl5000 ucsi_ccg 
 bq27xxx-battery imx390 lm92 nct1008_nct72 pca9570 stepper_pca usb3503
 cs53l30 imx477 lp855x ov10823 'PEX9749 thermal sensor' tas2552
 dummy ina219x lt6911uxc ov23850 rt5640 tegra_edid
 imx219 ina230x max77620 ov9281 rt5659 tmpm32xi2c
 imx268 ina3221x max9295 pca953x rtc-rx8025 tps65132
 '''
 是我哪里操作不对嘛,没法更新Image和DTB
- 
					
					
					
					
 @zjutony 
 你好,Image只用signed的包压缩出来的。Image_l4t_r32.6.1_veyecam_signed_4_xavier.tgzdtb放进去之后,记得要改一下 
 编辑 /boot/extlinux/extlinux.conf文件。
 part 3.6.4
- 
					
					
					
					
 @veye_xumm 这个我已经改了 
  
- 
					
					
					
					
 @veye_xumm 更新的时候需要插着相机嘛,我更新的时候没有插相机 
- 
					
					
					
					
 @zjutony 
 更新的时候不需要。
- 
					
					
					
					
 @zjutony 最近有两个人都跟我反馈此问题了。请问你的原生系统,是通过nvidia提供的镜像烧写的,还是通过sdkmanager烧进去的? 
- 
					
					
					
					
 
- 
					
					
					
					
 
- 
					
					
					
					
 @zjutony 我们的kernel并未生效。 
 请上传一下/boot/extlinux/extlinux.conf
- 
					
					
					
					
 
- 
					
					
					
					
 @zjutony 
 你好,我这边测试了一遍,没有问题。
 跟你核对一下md5~$ md5sum /boot/Image c52160b4a7a73dd171651d0df165f013 /boot/Image xumm@xumm-desktop:~$ md5sum /boot/Image.sig 9478788d08d86fcb31db8c2281820c93 /boot/Image.sig xumm@xumm-desktop:~$ md5sum /boot/tegra194-p3668-all-p3509-0000.dtb 9ef615754c5b0bbb7778d8d18dc1f609 /boot/tegra194-p3668-all-p3509-0000.dtb
- 
					
					
					
					
 @veye_xumm  
 我对了下似乎这个也没有问题,是不是这个可以通过host pc直接烧写镜像的方法将其烧写进镜像文件中,可否将你们烧写好的这个镜像文件发我,我直接用这个镜像文件进行测试看
- 
					
					
					
					
 @zjutony 
 我刚才尝试了一下,用
 https://developer.nvidia.com/zh-cn/embedded/jetpack
 下载的镜像直接烧写,然后按照我们的步骤操作了一下,没有问题。
 你也可以这样尝试一下。你这个问题也有其他人跟我反馈过,现在还没有确切的结论。不知道跟jetpack4.6增加的rootfs备份分区有没有关系。 如果要深究原因,你可以把你的系统的串口打印信息保存起来,发给我看看。 关键点在boot怎样引导的Image,引导的哪个Image。 
- 
					
					
					
					
 
- 
					
					
					
					
 @veye_xumm 那如果我把系统降低点是否会没有这个问题呢,就4.6之前的版本是不是都还是比较稳定的 
- 
					
					
					
					
 @zjutony 用sdkmanager也是可以的。 
- 
					
					
					
					
 @zjutony 老版本我们也支持的。 这个不是稳定性的问题,就是不知为何没有生效。 但是我这总是复现不出,所以没有找到根本原因。你可以再试试我说的方法。 
- 
					
					
					
					
 @veye_xumm said in CSI132相机nvidia nx平台上无法更新硬件: 我现在按照 这个链接里面的教程 https://blog.csdn.net/zbb297918657/article/details/106390209 
 把镜像烧写到那个tf卡里,然后系统装上去以后,按照http://wiki.veye.cc/index.php/VEYE_CS_Camera_for_Jetson_TX2/zh里的步骤执行到3.6,然后ls /sys/bus/i2c/drivers/ 是能看到 cssc132的目录,但是ls /proc/device-tree/cam_i2cmux/i2c@* 就没有看到对应的相机的型号,请问这个是什么原因,是我没有执行3.9吗?
- 
					
					
					
					
 @zjutony said in CSI132相机nvidia nx平台上无法更新硬件: ls /proc/device-tree/cam_i2cmux/i2c@* 就没有看到对应的相机的型号, 这个是dtb更新对了才有的。你看一下3.6.4步骤是否正确执行了? 
- 
					
					
					
					
 @veye_xumm 
  
 我们是nx的板子,您看看这样子是不是操作正确的
