Hi,
I’m working on my custom board with TX2i. I modified pinmux.cfg, pad.cfg and dtb as described at MB1 Configuration Changes.
However, on flashing, I got an error saying failed to check bin load range right before downloading bct_mb1.
[ 5.2856 ] Sending BCTs
[ 5.2906 ] tegrarcm_v2 --download bct_bootrom br_bct_BR.bct --download bct_mb1 mb1_bct_MB1_sigheader.bct.encrypt
[ 5.2937 ] Applet version 01.00.0000
[ 5.3713 ] Sending bct_bootrom
[ 5.3719 ] [................................................] 100%
[ 5.3731 ] Sending bct_mb1
[ 5.3734 ] 000000000e874502: Failed to check bin load range
I suspect my pinmux file. It was generated by pinmux-dts2cfg.py without --mandatory_pinmux_file mandatory_pinmux.txt
option because it threw errors, which are also mentioned on other topics.
ERROR: pin dmic1_clk_pm1(0x00004441) field nvidia,enable-input(0x00000040) is not matching, val = 0x01 expected = 0x00
ERROR: pin dmic2_dat_pm2(0x00004441) field nvidia,enable-input(0x00000040) is not matching, val = 0x01 expected = 0x00
ERROR: pin dap4_sclk_pcc0(0x00004440) field nvidia,enable-input(0x00000040) is not matching, val = 0x01 expected = 0x00
ERROR: pin dap4_fs_pcc3(0x00004440) field nvidia,enable-input(0x00000040) is not matching, val = 0x01 expected = 0x00
ERROR: pin sdmmc4_dqs(0x00000444) field nvidia,tristate(0x00000010) is not matching, val = 0x00 expected = 0x01
Its size is bigger than the default one.
[ 1.2404 ] Parsing config file :tegra186-mb1-bct-pinmux-quill-p3489-1000-a00.cfg
[ 1.2410 ] Appending platform config data of size :- 2952
[ 1.1840 ] Parsing config file :gcb01a-mb1-bct-pinmux.cfg
[ 1.1842 ] Appending platform config data of size :- 3560
Would you give me some entrypoints to debug with this?
hello peroxyacyl,
just would like to double confirm you had access Jetson TX2 Series Pinmux, and you’re using TX2i-TX2-4GB template to customize your pin configuration.
Hello JerryChang,
Yes, I use v1.08 file and the third (Jetson-TX2i-TX2-4GB-Template) sheet.
hello peroxyacyl,
it should be an issue of incorrect SYSRAM_END_ADDRESS, the MB1_BCT max size is insufficient, hence has to be increased.
could you please review the xml file, (i.e. flash_l4t_t186.xml
) for the size of MB1_BCT.
thanks
Hi Jerry,
Thank you!
I modified that size in bootloader/t186ref/cfg/flash_l4t_t186.xml
but I got the same error.
<partition name="MB1_BCT" type="mb1_boot_config_table">
<allocation_policy> sequential </allocation_policy>
<filesystem_type> basic </filesystem_type>
<size> 524288 </size>
<file_system_attribute> 0 </file_system_attribute>
<allocation_attribute> 8 </allocation_attribute>
<percent_reserved> 0 </percent_reserved>
<description> **Required.** Slot A; contains MB1 boot configuration table. </description>
</partition>
<partition name="MB1_BCT_b" type="mb1_boot_config_table">
<allocation_policy> sequential </allocation_policy>
<filesystem_type> basic </filesystem_type>
<size> 524288 </size>
<file_system_attribute> 0 </file_system_attribute>
<allocation_attribute> 8 </allocation_attribute>
<percent_reserved> 0 </percent_reserved>
<description> **Required.** Slot B; contains MB1 boot configuration table. </description>
</partition>
None of 65536, 131072, 262144, 524288
sizes worked.
I checked the staging file bootloader/flash.xml
also contained that configured number.
Do you have other ideas to try?
hello peroxyacyl,
may I know which L4T release version you’re working with, thanks
Sure, it is JetPack 4.6.
~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_TX2_TARGETS/Linux_for_Tegra
hello peroxyacyl,
you should double confirm you’d actually use the configuration file, which generated by pinmux-dts2cfg.py
to flash the target.
please refer to p2771-0000.conf.common
, you should assign correct files.
Hi, Jerry
The newly generated config file is certainly used according to the log, isn’t it?.
[ 1.0423 ] MB1-BCT version: 0xf
[ 1.0424 ] Copying Sdram info from 1 to 2 set
[ 1.0514 ] Copying Sdram info from 2 to 3 set
[ 1.0515 ] Packing sdram param for instance[0]
[ 1.0517 ] Packing sdram param for instance[1]
[ 1.0518 ] Packing sdram param for instance[2]
[ 1.0519 ] Packing sdram param for instance[3]
[ 1.0520 ] Parsing config file :gcb01a-mb1-bct-pinmux.cfg
[ 1.0522 ] Appending platform config data of size :- 3560
[ 1.0524 ] Parsing config file :minimal_scr.cfg
[ 1.0525 ] Appending platform config data of size :- 12240
[ 1.0538 ] Parsing config file :gcb01a-mb1-bct-pad.cfg
[ 1.0540 ] Appending platform config data of size :- 24
[ 1.0540 ]
[ 1.0540 ] Parsing config file :tegra186-mb1-bct-pmic-quill-p3489-1000-a00.cfg
it should be an issue of incorrect SYSRAM_END_ADDRESS, the MB1_BCT max size is insufficient.
You are right. I disabled some pin assign to reduce pinmux file size and it was written successfully.
I need full configured pinmux. Is there any BCT size configuration other than flash.xml or is it hard coded in tegrarcm?
[ 1.0520 ] Parsing config file :gcb01a-mb1-bct-pinmux-min.cfg
[ 1.0522 ] Appending platform config data of size :- 2696
....
[ 3.7224 ] Applet version 01.00.0000
[ 3.9875 ] Sending bct_bootrom
[ 3.9876 ] [................................................] 100%
[ 3.9890 ] Sending bct_mb1
[ 3.9901 ] [................................................] 100%
[ 13.2427 ]
[ 13.2429 ] Generating blob
you’ve just ring my bell, there’s limitation of BCT_MB1, which has fixed to 50K.
hence, that’s an expected failure with a larger binary.
Ooh… so, TX2i cannot use its entire pinmux by nature?
My observation is that using GPIO enlarge the cfg file size.