[BUG] flash.py cannot set soc_id which is always 1 in 6.0.6

Required Info:

  • Software Version
    DRIVE OS 6.0.6
  • Target OS
    Linux
  • SDK Manager Version
    1.9.2.10884
  • Host Machine Version
    native Ubuntu Linux 20.04 Host installed with DRIVE OS DOCKER Containers

Describe the bug

Accorind to PCIe Hot-Plug not working - #12 by BruceYangNV , in order to get NvSciPcieC2c working, separate soc_id should be set in both SoCs.

Although ./bind_partitions -b p3710-10-s05 linux -s 1 work and success, the sudo -E -H python3 ./flash.py /dev/ttyACM1 p3710 did clean the partitions, and clean the opt -s 1. After flashing, the soc_id is still 1.

To Reproduce

cd /drive/drive-foundation/make
sudo ./bind_partitions -b p3710-10-s05 linux -s 2
# success

cd /drive
# sudo find . -name \*.pyc -delete
sudo -E -H python3 ./flash.py /dev/ttyACM1 p3710

# after flashing, login to orin
xxd -b /proc/device-tree/soc_id
# still 1

the flash.py terminal output is

gz06744@in-sdk-docker:/drive$ sudo -E -H python3 ./flash.py /dev/ttyACM1 p3710
2023-07-06 17:40:02 INFO : Flashing already set for dual bootchain
2023-07-06 17:40:02 INFO : Flash clean already disabled for persistent partitions
2023-07-06 17:40:02 INFO : Initiating pre-flash check
2023-07-06 17:40:02 INFO : Checking Serial Port Connection
2023-07-06 17:40:02 INFO : Serial Port found /dev/ttyACM1
2023-07-06 17:40:02 INFO : Running basic open/close tests on Serial Port Connection
2023-07-06 17:40:02 INFO : Serial Port is open
2023-07-06 17:40:02 INFO : Flushing input and output buffer, discard all content
2023-07-06 17:40:02 INFO : Serial Port is closed
2023-07-06 17:40:02 INFO : Checking available targets
2023-07-06 17:40:02 INFO : Checking Orin board connection
2023-07-06 17:40:02 INFO : Orin board with Device ID -- 0955:7045 found.
2023-07-06 17:40:02 INFO : Orin board device path is /dev/bus/usb/001/013
2023-07-06 17:40:02 INFO : Pre-flash check complete
2023-07-06 17:40:02 INFO : Flashing DRIVE OS Docker
2023-07-06 17:40:02 INFO : driveinstaller v2.0
2023-07-06 17:40:02 INFO : 
2023-07-06 17:40:02 INFO : SDK/PDK Installer and Flasher
2023-07-06 17:40:02 INFO : Run `./driveinstaller --help` for usage information.
2023-07-06 17:40:02 INFO : 
2023-07-06 17:40:02 INFO : Initializing board and OS configuration to Autonomous vehicle p3710 Linux Tegra A
2023-07-06 17:40:02 INFO : Manifest version 2.0
2023-07-06 17:40:02 INFO : 
2023-07-06 17:40:15 INFO : BOARD SKU : 940-63710-0010-200
2023-07-06 17:40:15 INFO : Found matching board id p3710-10-s05 in 940-63710-0010-200 sku
2023-07-06 17:40:15 INFO : Applying additional Bind opts [x]
2023-07-06 17:40:23 INFO : Executing bind clean cmd make/bind_partitions -b p3710-10-s05 linux clean
2023-07-06 17:40:24 INFO : Executing bind cmd make/bind_partitions -b p3710-10-s05 linux
2023-07-06 17:40:43 INFO : Bind partitions done!
2023-07-06 17:40:43 INFO : Initializing SDK/PDK flasher for configuration
2023-07-06 17:40:43 INFO : Board: p3710
2023-07-06 17:40:43 INFO : Board type: ES
2023-07-06 17:40:43 INFO : Hypervisor config: linux
2023-07-06 17:40:43 INFO : 
2023-07-06 17:40:43 INFO : Pre flash script found! Calling scripts/linux_pre_flash.sh
2023-07-06 17:40:44 INFO : Running flash command: sudo -E /drive/drive-foundation//tools/flashtools/bootburn/bootburn.py -b p3710-10-s05 -B qspi -x /dev/ttyACM1
2023-07-06 17:40:44 INFO : This may take a few minutes

2023-07-06 17:40:15 INFO : Applying additional Bind opts
2023-07-06 17:40:23 INFO : Executing bind clean cmd make/bind_partitions -b p3710-10-s05 linux clean
2023-07-06 17:40:24 INFO : Executing bind cmd make/bind_partitions -b p3710-10-s05 linux
2023-07-06 17:40:43 INFO : Bind partitions done!

this means sudo ./bind_partitions -b p3710-10-s05 linux -s 2 was override by flash.py

qst1. How to set soc_id correctly in 6.0.6?
qst2. If cannot, could you provide the flash.py in 6.0.7?

Additional context

according to 6.0.7 doc, Flashing Basics | NVIDIA Docs

sudo -E -H python3 ./flash.py --bind-opt '-s 2' /dev/ttyACM1 p3710
# this cannot be done in 6.0.6

Please run the commands below under the directory of sdkmanager installation method.

cd ~/nvidia/nvidia_sdk/DRIVE_OS_6.0.6_SDK_Linux_DRIVE_AGX_ORIN_DEVKITS/DRIVEOS/drive-foundation
make/bind_partitions -b p3710-10-s05 linux clean
make/bind_partitions -b p3710-10-s05 linux -s 2
tools/flashtools/bootburn/bootburn.py -b p3710-10-s05 -B qspi -x /dev/ttyACM1 --init_persistent_partitions -D

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.