Open main menu

DAVE Developer's Wiki β

Changes

no edit summary
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
|-
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Version
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
|-
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|1.0.0{{oldid|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"14366|Oct 20202021/07/26}}
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|New documentation layout
|-
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000"|2022/02/21
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000"|Fix external link references
|-
|}
<section end=History/>
__FORCETOC__
<section begin=Body/>
=====Optimized idle=====
In this case the <code>powersave</code> governor is used. Most importantly, Ethernet interface is disabled, as described in i.MX 6UltraLite Power Consumption Measurement application note.<ref name=[https://www.nxp.com/docs/en/application-note/AN5170.pdf "AN5170">NXP Semiconductors, ''i.MX 6UltraLite Power Consumption Measurement'', Rev. 1, 04/2016</ref> ] This allows to reduce power consumption significantly because
* processor's peripheral bus can be disabled as well
* external PHY is put in power-down mode.
Basic assumption is that the system spends most of the time in an idle condition (that is there are no user applications ready to run nor interrupt requests to serve).
Two idle configurations have been tested, detailed in the following sections: generic idle and system idle. System idle is the same nomenclature used NXP official documentation (specifically processor's data sheet<ref name="[https://www.nxp.com/docs/en/data-sheet/IMX6ULIEC.pdf IMX6ULIEC">Freescale Semiconductor, ''i.MX 6UltraLite Applications Processors for Industrial Products Data Sheet'', Rev. 1, 04/2016<] and [https://www.nxp.com/docs/en/ref> and AN5170 application -note<ref name=/AN5170.pdf "AN5170">NXP Semiconductors, ''i.MX 6UltraLite Power Consumption Measurement'', Rev. 1, 04/2016</ref>]).
Measurements have been performed on the following platform (also denoted as ''testbed2'' in the rest of the document):
|-
|}
[1] '''24MHz active oscillator power consumption is included'''. As the board under test is equipped with iMX6UL revision 1.0, active oscillator is required to implement the fix described by errata ERR009455. Typical consumption of this oscillator is about 20mW. Future revision of the board will be populated with silicon revision 1.1 or newer. Thus active oscillator will be removed. For more details please refer to ''Chip Errata for the i[https://www.nxp.MX 6UltraLite''<ref name="com/docs/en/errata/IMX6ULCE">Freescale Semiconductor, .pdf ''Chip Errata for the i.MX 6UltraLite'', Rev. 0.1, 02/2016</ref>].
=====Optimized idle=====
In this case the <code>powersave</code> governor is used. Most importantly, Ethernet interface is disabled, as described in ''i.MX 6UltraLite Power Consumption Measurement'' application note<ref name=[https://www.nxp.com/docs/en/application-note/AN5170.pdf "AN5170">NXP Semiconductors, ''i.MX 6UltraLite Power Consumption Measurement'', Rev. 1, 04/2016</ref>]. This allows to reduce power consumption significantly because
*processor's peripheral bus can be disabled as well
*external PHY is put in power-down mode.
|-
|}
[1] '''24MHz active oscillator power consumption is included'''. As the board under test is equipped with iMX6UL revision 1.0, active oscillator is required to implement the fix described by errata ERR009455. Typical consumption of this oscillator is about 20mW. Future revision of the board will be populated with silicon revision 1.1 or newer. Thus active oscillator will be removed. For more details please refer to ''Chip Errata for the i[https://www.nxp.MX 6UltraLite''<ref name="com/docs/en/errata/IMX6ULCE">Freescale Semiconductor, .pdf ''Chip Errata for the i.MX 6UltraLite'', Rev. 0.1, 02/2016</ref>].
The following commands have been used in order to configure the system. The command <code>ifconfig eth0 down</code> disables processor's Ethernet controller and puts the external PHY in power-down mode.
 
<pre>
#!/bin/bash
echo 0 > /sys/class/gpio/gpio84/value
</pre>
 
The system automatically enters to and exits from system idle mode when needed:
<pre>
</pre>
It is worth to remember that the use of <code>powersave</code> governor '''has a drawback in terms of system reactivity''', because processor is relatively slow to get out of the idle condition. This can lead to phenomena such as the UART RX FIFO overrun, as shown in the following box{{efn|This is the same issue described [[Linux_and_interrupt_latency_(Axel)#A_real-word_case:_UART_RX_FIFO_overrun|here]].}}. In this example, a relatively long command string has been pasted into the serial console terminal: 
<pre>
root@sbc-lynx:~# imx-uart 2020000.serial: Rx FIFO overrun
|-
|}
[1] When entering DSM mode, iMX6UL turns 24MHz external active oscillator off. As the board under test is equipped with iMX6UL revision 1.0, active oscillator is required to implement the fix described by errata ERR009455. For more details please refer to ''Chip Errata for the i[https://www.nxp.MX 6UltraLite''<ref name="com/docs/en/errata/IMX6ULCE">Freescale Semiconductor, .pdf ''Chip Errata for the i.MX 6UltraLite'', Rev. 0.1, 02/2016</ref>].
[2] Ethernet PHY supports several power-management modes. The most aggressive is the ''slow-oscillator mode''. At the time of this writing, Linux kernel does not support this mode. The ''power-down mode'' is used instead. If ''slow-oscillator mode'' were implemented, about 7mW would be spared.
<section end=Body/>
----
[[Category:AXEL ULite]]
8,226
edits