Hi,
We've recently received the first iteration of a custom I.mx6ull board, and noticed that the processor is running significantly hotter compared to the eval board.
The eval board idles at around 37°C, whereas our board idles at around 60°C.
Some changes of the custom board include:
- eMMC on board
- VDD SOC fixed at 1.5V
I think the latter might explain a slightly higher temperature, but not to this extent.
I have another suspicion of what might be going on. All the tamper pins are grounded. I did try to initialise them to 0 in the iomux, but that doesn't seem to make a difference.
On another board, I have removed the balls of the tamper pads for them to become floating. This board seems to run much cooler at around 50°C
It seems that I haven't modified the devicetree correctly, since otherwise I would not expect a temperature difference between the two.
/ {
....
disable_tamper {
pinctrl-assert-gpios = <
&gpio5 0 GPIO_ACTIVE_LOW
&gpio5 1 GPIO_ACTIVE_LOW
&gpio5 2 GPIO_ACTIVE_LOW
&gpio5 3 GPIO_ACTIVE_LOW
&gpio5 4 GPIO_ACTIVE_LOW
&gpio5 5 GPIO_ACTIVE_LOW
&gpio5 6 GPIO_ACTIVE_LOW
&gpio5 7 GPIO_ACTIVE_LOW
&gpio5 8 GPIO_ACTIVE_LOW
&gpio5 9 GPIO_ACTIVE_LOW
>;
pinctrl-0 = <&pinctrl_tamper>;
};
};
.....
&iomuxc {
pinctrl-names = "default";
pinctrl_tamper: tampergrp {
fsl,pins = <
MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x80000000
MX6ULL_PAD_SNVS_TAMPER1__GPIO5_IO01 0x80000000
MX6ULL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x80000000
MX6ULL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x80000000
MX6ULL_PAD_SNVS_TAMPER4__GPIO5_IO04 0x80000000
MX6ULL_PAD_SNVS_TAMPER5__GPIO5_IO05 0x80000000
MX6ULL_PAD_SNVS_TAMPER6__GPIO5_IO06 0x80000000
MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x80000000
MX6ULL_PAD_SNVS_TAMPER8__GPIO5_IO08 0x80000000
MX6ULL_PAD_SNVS_TAMPER9__GPIO5_IO09 0x80000000
>;
};
.....
};
Any help or suggestions would be greatly appreciated!
Did you measure the surface temperature of the chips? Do they differ as well?
@turker Yes they do.
On the EVK the surface temperature of the processor is around 33°C, whereas on the custom board it is 47°C.
It is not recommended to ground the unused tamper or I/O pins since it really
can cause extra current leakage and extra processor heating. Better is to leave
them unconnected and configure as pulled-up GPIO inputs in software. Actually,
this is the default out-of-reset state for most of the I/O pins, so, you can
just do nothing with them in software.
Any ideas ?