Critical Current Limit Jetson TX2

Hello I am wondering how to change the critical current limit for a TX2 dev kit. The doc “JETSON TX1 AND TX2 VOLTAGE AND CURRENT MONITOR CONFIGURATION” only describes how to do this for the TX1 but not the TX2.

This is the last line of the doc:
“By default, the Jetson TX2 Developer kit critical current limit of VDD_IN is set to the maximum possible value of 8190mA. Therefore, it is not necessary to modify the critical current for lower input voltage unless user wants to configure the critical current limit for a specific input voltage.”

How do I lower this value from 8190mA to say 3000mA?


please check


How 8190mA comes from is
163800uv/0.02ohm = 8190mA.

Please change below value “shunt-resistor-mohm” to achieve 3000mA.

133fragement-pmon-p3310-1000-800 {
134 			ids = ">=3310-1000-800";
135 			override@0 {
136 				target = <&ina3221x_41>;
137 				_overlay_ {
138 					channel@0 {
139 						ti,shunt-resistor-mohm = <20>;
140 					};

Thank you for the reply.

And if we will be powering the Jetson with a 12V battery?

Where does the 163800uv come from?

To clarify I would like to limit our inrush current to 3A when powering off a 12V battery.

Does the 0.1638V change with a different input voltage?

If not then I will just change the shunt resistance to 56 to acheive a critical current of 2925mA.

I would have expected to need to edit “/sources/hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-p3310-1000-a00-powermon.dtsi” as with the TX1 but I suppose this “fragement-pmon” overides the other powermon file.


Hi blauder,

The 16380uv is Power ON reset value for INA3221 chip.

Another way to change the critical current limit is to use sysfs.

  1. Read channel name to confirm if we are setting value to correct channel:

cat /sys/devices/3160000.i2c/i2c-0/0-0041/iio:device1/rail_name_0


  1. Set critical current limit:

echo 3000 > cat /sys/devices/3160000.i2c/i2c-0/0-0041/iio:device1/crit_current_limit_0

Modifying the dts and reflashing seemed to work but on trying your 2nd solution the input critical_current reverts to the original “8190 ma” on reboot.

You could just use dt property ti,current-critical-limit-ma to set this value if you want it enabled by default.

It makes sense that every sysfs/debugfs would be override again after reboot.

Hey there,

Thanks for the answers. We reflashed to achieve a desired critical current. I checked the value.

But it doesn’t seem to limit our in-rush current.

We see about 8 amps in-rush for around a millisecond or so that kicks out our power supply board at 12V.

Shouldn’t this critical current value limit this?

Should I change the crit_current_limit #1 and #2 as well as #0 on the cpu and ddr rails on that chip as well?

We very much need to not draw more than 5 amps at 12V but this very quick in-rush current seems to be an issue for us.

Help would be appreciated!

Hi Blauder,

The critical current limit = System EDP limit / VDD_IN voltage, please check with your system EDP limit first.