Please note that we cannot guarantee this would limit your current to 500mA.
no use HDMI, CSI, USB, Ether
→ You could disable them from the kernel defconfig or the device tree itself.
kernel/kernel-4.9/arch/arm64/configs/tegra_defconfig
no use GPU, internal Video Enc/Dec
→ For gpu, you could also disable the driver in defconfig (CONFIG_GK20A)
→ Or just remove the gpu module driver after boot up.
use only 1 ARM core
→ You could disable it manually with below nodes
/sys/devices/system/cpu/cpu*/online
I fully understand your company does not guarantee operating current.
I could achieve <200mA at normal operating condition ( after login prompt).
But at start-up, I saw over 1A current around the following log(maybe at 7.078856 sec).
Is it possible to reduce the current at start-up?
“[ 7.078856] nvgpu: 57000000.gpu gm20b_init_clk_setup_sw:1268 [INFO)” indicates the gpu driver starts to work. Please try with my previous comment to disable gpu driver.
I believe my build step is no problem.
Problem is, whenever I remove GK20A from config file,
kernel always outputs “nvgpu: 57000000.gpu gm20b_init_clk_setup_sw:1268 [INFO)”.
So I think it is difficult to disable GPU by .config file.
Please tell me if you know another way to disable GPU.
Thank you very much.
I remove(actually rename) /lib/modules/4.9.140/kernel/drivers/gpu/nvgpu/nvgpu.ko,
then GPU disappear.
But operating current is over 1A.
So GPU is not the problem.
It seems ARM cpu is the problem, because operating current decrease 500mA at the following log point.
[ 8.494191] IRQ10 no longer affine to CPU1
[ 8.498526] CPU1: shutdown
[ 8.579680] IRQ11 no longer affine to CPU2
[ 8.584253] CPU2: shutdown
[ 8.642266] IRQ12 no longer affine to CPU3
[ 8.647441] CPU3: shutdown
Do you know how to disable three ARM cpu from the kernel boot-up?
Thank you very much.
I resolve this issue by your hint.
I put “maxcpus=1” at /boot/extlinux/extlinux.conf like this, and get about 500mA current.
APPEND ${cbootargs} rootfstype=ext4 root=/dev/mmcblk0p1 rw rootwait maxcpus=1
As you said, for another way, it is ok with sysfs.