hello SammyChenTw,
it’ll parse board information, but there’s no dependency of device tree file.
if you looking into Xavier’s flash configuration file, p2972-0000.conf.common
it’s using same DTB_FILE=tegra194-p2888-0001-p2822-0000.dtb;
for flashing.
for example,
here’s Xavier-8G
$ cat /proc/meminfo | grep MemTotal
MemTotal: 7957412 kB
$ dmesg | grep DTS
[ 0.432830] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-p2888-0001-p2822-0000-common.dtsi
and… Xavier-32G.
$ cat /proc/meminfo | grep MemTotal
MemTotal: 32684728 kB
$ dmesg | grep DTS
[ 0.438016] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-p2888-0001-p2822-0000-common.dtsi
so, you may use the same flashing commands as your Xavier-16GB to flash Xavier-32G.
thanks