Dram alias check failure on D00 revision TX2 SOM and custom carrier board

can you print the values from here:
root@jetson:/sys# cat /sys//kernel/debug/bpmp/debug/emc/

dram_info
dram_strap

On a Rev B SOM running l4t R32.4.3 and without hardware rework (still pulling UART RTS high at startup) I see

root@dnncam-000dev11:~# cat /sys/kernel/debug/bpmp/debug/emc/dram_info
Manufacturer ID (MR5): 1
Revision ID-1 (MR6): 5
Revision ID-2 (MR7): 0
IO Width/Density/Type (MR8): 0x08
root@dnncam-000dev11:~# cat /sys/kernel/debug/bpmp/debug/emc/dram_strap
cat: /sys/kernel/debug/bpmp/debug/emc/dram_strap: No such file or directory
root@dnncam-000dev11:~# ls /sys/kernel/debug/bpmp/debug/emc
cc_debug  cc_seq  dll_prelock_version  dram_info  dram_temp_range  dram_therm  over_temp_state  periodic_calibration  pll_lib  possible_rates  stats  tables  tables_info  timer_period_training
root@dnncam-000dev11:~# find /sys/kernel/debug/ -name "dram_strap"
root@dnncam-000dev11:~# find /sys/kernel/ -name "dram_strap"

from MR5, its selecting Samsung memory, so strap is 1.
two bits are used, bit1(uart3_tx) bit0(uart1_rts) . If rts is pulled high, strap value is 1 and if the module has samsung memory, thing will work perfectly.
Later boards has micron(ramcode 3) or hynix(ramcode 2) memory and they fail to work.

you can try using the application present in the home folder.
sudo nv_get_dram_info

Thanks @Bibek this is helpful. Here’s what I see on B0 SOM with nv_get_dram_info

Manufacturer:   Samsung
Density:        8Gb per die
DRAM strap:     1
Therm:          DRAM is in normal temperature mode
Frequencies:
40800 68000 102000 204000 408000 665600 800000 1062400 1331200 1600000 1866000 (kHz)

On the D0 SOM I see:

Manufacturer:   SK hynix
Density:        8Gb per die
DRAM strap:     2
Therm:          DRAM is in normal temperature mode
Frequencies:
40800 68000 102000 204000 408000 665600 800000 1062400 1331200 1600000 1866000 (kHz)

And when I search for TX2 PCNs I see only D00 SOM with 204840 (hynix) and D02 SOM with 206440 (micron). So as long as we don’t try to use either of D00 SOMs or later on hardware without rework everything should just work across any version of jetpack as I understand it. Thanks for the help!

1 Like