From ff4cf397c741e987d670780ee36851043585bc5e Mon Sep 17 00:00:00 2001 From: Kendall Willis Date: Thu, 11 Dec 2025 16:17:30 -0600 Subject: [PATCH 1/3] feat(linux): AM62*: Update LPM power measurements for 11.02 Update all low power mode power measurements for AM62A, AM62P, AM62X, and AM62L for SDK 11.02. Signed-off-by: Kendall Willis --- .../AM62AX/linux/Linux_Performance_Guide.rst | 24 +++---- .../AM62LX/linux/Linux_Performance_Guide.rst | 58 +++++++++++++++++ .../AM62PX/linux/Linux_Performance_Guide.rst | 65 +++++++++++++++++++ .../AM62X/linux/Linux_Performance_Guide.rst | 62 ++++++++++++++++++ 4 files changed, 197 insertions(+), 12 deletions(-) diff --git a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst index f41a4c374..5d1d91dc9 100644 --- a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst @@ -834,24 +834,24 @@ Power Performance .. csv-table:: Deep Sleep Power Performance :header: "Rail name","Rail voltage(V)","Power (mW)" - "vdd_core","0.85","18.73" - "vddr_core","0.85","2.28" - "soc_dvdd_3v3","3.30","5.04" - "soc_dvdd_1v8","1.80","2.17" - "vdda_1v8","1.80","10.99" + "vdd_core","0.85","14.48" + "vddr_core","0.85","1.90" + "soc_dvdd_3v3","3.30","4.38" + "soc_dvdd_1v8","1.80","2.08" + "vdda_1v8","1.80","10.86" "vdd_lpddr4","1.10","3.31" - "Total"," ","42.51" + "Total"," ","36.99" .. csv-table:: MCU Only Power Performance :header: "Rail name","Rail voltage(V)","Power (mW)" - "vdd_core","0.85","197.77" + "vdd_core","0.85","197.38" "vddr_core","0.85","3.11" - "soc_dvdd_3v3","3.30","11.32" - "soc_dvdd_1v8","1.80","2.44" - "vdda_1v8","1.80","19.55" - "vdd_lpddr4","1.10","3.86" - "Total"," ","238.06" + "soc_dvdd_3v3","3.30","10.24" + "soc_dvdd_1v8","1.80","2.30" + "vdda_1v8","1.80","19.42" + "vdd_lpddr4","1.10","4.14" + "Total"," ","236.60" Partial I/O Data - All voltage rails were measured to be near 0V diff --git a/source/devices/AM62LX/linux/Linux_Performance_Guide.rst b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst index 8f68dec10..e1004a8f0 100644 --- a/source/devices/AM62LX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst @@ -582,3 +582,61 @@ USB Device Controller :header: "Number of Blocks","am62lxx_evm-fs: Throughput (MB/sec)" "150","37.43 (min 31.00, max 41.40)" + +Low Power Performance +--------------------- + +Power Performance +^^^^^^^^^^^^^^^^^ + +These are power measurements taken while the device is in various low power modes like +Deep Sleep and RTC Only + DDR. + +.. csv-table:: Deep Sleep Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core", "0.75", "4.06" + "soc_dvdd_1v8", "1.80", "1.48" + "soc_dvdd_3v3", "3.29", "3.59" + "vdda_1v8", "1.80", "1.38" + "vdd_lpddr4_pmic2", "1.10", "1.04" + "vdd_rtc", "0.74", "0.01" + "vdd_rtc_1v8", "1.80", "0.02" + "Total"," ","11.57" + +.. csv-table:: RTC Only + DDR Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core", "0.00", "0.00" + "soc_dvdd_1v8", "1.80", "1.41" + "soc_dvdd_3v3", "3.29", "1.09" + "vdda_1v8", "0.00", "0.00" + "vdd_lpddr4_pmic2", "1.10", "1.09" + "vdd_rtc", "0.75", "0.01" + "vdd_rtc_1v8", "1.80", "0.02" + "Total"," ","3.62" + +Resume Latency Performance +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. csv-table:: LPM Resume Latency Performance + :header: "Low Power Mode","Total Resume Latency (ms)" + + "RTC Only + DDR", "459.40" + "Deep Sleep", "98.70" + +The performance numbers are measured without the Linux printk logs. To remove the +Linux printk logs, run the following commands in the terminal: + +.. code:: console + + # Detach kernel serial console + consoles=$(find /sys/bus/platform/devices/*.serial/ -name console) + for console in ${consoles}; do + echo -n N > ${console} + done + + +.. note:: + + The measurements shown are from using the default SDK with no extra optimizations. diff --git a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst index d890bb499..a027eefe0 100644 --- a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst @@ -689,3 +689,68 @@ Listed for each algorithm are the code snippets used to run each :: time -v openssl speed -elapsed -evp aes-128-cbc + +Power Performance +^^^^^^^^^^^^^^^^^ + +.. csv-table:: Deep Sleep Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","18.32" + "vddr_core","0.85","1.53" + "soc_dvdd_3v3","3.30","8.54" + "soc_dvdd_1v8","1.80","3.01" + "vdda_1v8","1.80","68.06" + "vdd_lpddr4","1.10","3.47" + "Total"," ","102.93" + +.. csv-table:: MCU Only Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","219.30" + "vddr_core","0.85","3.32" + "soc_dvdd_3v3","3.30","7.10" + "soc_dvdd_1v8","1.80","2.93" + "vdda_1v8","1.80","76.55" + "vdd_lpddr4","1.10","4.37" + "Total"," ","313.56" + +Partial I/O Data +- All voltage rails were measured to be near 0V + +.. note:: + + The power consumption on the vdda_1v8 rail is not indicitive of the SoC's power consumption due to an oscillator on the rail + that has significant current consumption. + +.. note:: + + The measurements shown are from an AM62Px SK rev E1-1. Results may vary based off of the board revision being used. + +Further optimizations are possible for these low power modes. Please refer to the AM62x Power Consumption App Note (https://www.ti.com/lit/pdf/spradg1) + +Resume Latency Performance +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. csv-table:: LPM Resume Latency Performance + :header: "Low Power Mode","Total Resume Latency (ms)" + + "I/O Only + DDR", "716.68" + "Deep Sleep", "150.50" + "MCU Only", "94.06" + +The performance numbers are measured without the Linux printk logs. To remove the +Linux printk logs, run the following commands in the terminal: + +.. code:: console + + # Detach kernel serial console + consoles=$(find /sys/bus/platform/devices/*.serial/ -name console) + for console in ${consoles}; do + echo -n N > ${console} + done + + +.. note:: + + The measurements shown are from using the default SDK with no extra optimizations. diff --git a/source/devices/AM62X/linux/Linux_Performance_Guide.rst b/source/devices/AM62X/linux/Linux_Performance_Guide.rst index 174b1ff90..f5f25d30d 100644 --- a/source/devices/AM62X/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62X/linux/Linux_Performance_Guide.rst @@ -790,3 +790,65 @@ IPSec Software Performance "aes128","121.71 (min 2.30, max 305.50)","10.57 (min 0.00, max 27.00)","48.76 (min 28.52, max 54.93)","135.97 (min 4.10, max 338.50)","11.71 (min 0.00, max 30.00)","52.73 (min 47.19, max 58.90)" "aes192","75.94 (min 0.20, max 228.80)","6.43 (min 0.00, max 20.00)","42.84 (min 28.19, max 50.88)","2.40 (min 2.20, max 2.60)","0.00","85.06 (min 83.00, max 87.11)" "aes256","188.42 (min 1.30, max 302.20)","16.33 (min 0.00, max 26.00)","48.78 (min 28.23, max 54.44)","164.90 (min 4.80, max 331.20)","14.33 (min 0.00, max 29.00)","53.12 (min 28.47, max 65.09)" + +Low Power Performance +------------------------- + +Power Performance +^^^^^^^^^^^^^^^^^ + +.. csv-table:: Deep Sleep Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","9.59" + "vddr_core","0.85","n/a" + "soc_dvdd_3v3","3.30","7.71" + "soc_dvdd_1v8","1.80","0.54" + "vdda_1v8","1.80","1.89" + "vdd_ddr4","1.10","8.49" + "Total"," ","28.21" + +.. csv-table:: MCU Only Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","110.78" + "vddr_core","0.85","n/a" + "soc_dvdd_3v3","3.30","13.81" + "soc_dvdd_1v8","1.80","0.50" + "vdda_1v8","1.80","11.35" + "vdd_ddr4","1.10","8.79" + "Total"," ","145.23" + +Partial I/O Data +- All voltage rails were measured to be near 0V + +.. note:: + + The measurements shown are from an SK-AM62B-P1. Results may vary based off of the board variant being used. + +Further optimizations are possible for these low power modes. Please refer to the AM62x Power Consumption App Note (https://www.ti.com/lit/pdf/spradg1) + +Resume Latency Performance +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. csv-table:: LPM Resume Latency Performance + :header: "Low Power Mode","Total Resume Latency (ms)" + + "Deep Sleep", "137.03" + "MCU Only", "86.12" + +The performance numbers are measured without the Linux printk logs. To remove the +Linux printk logs, run the following commands in the terminal: + +.. code:: console + + # Detach kernel serial console + consoles=$(find /sys/bus/platform/devices/*.serial/ -name console) + for console in ${consoles}; do + echo -n N > ${console} + done + + +.. note:: + + The measurements shown are from using the default SDK with no extra optimizations. From eb622db8bb830b5c07ac5b558bbf6889c6cadbde Mon Sep 17 00:00:00 2001 From: Kendall Willis Date: Thu, 11 Dec 2025 16:15:43 -0600 Subject: [PATCH 2/3] feat(linux): AM62A/P: Add I/O Only + DDR power measurements Add the I/O Only + DDR power measurements for AM62A and AM62P for SDK 11.02. Signed-off-by: Kendall Willis --- .../devices/AM62AX/linux/Linux_Performance_Guide.rst | 12 ++++++++++++ .../devices/AM62PX/linux/Linux_Performance_Guide.rst | 11 +++++++++++ 2 files changed, 23 insertions(+) diff --git a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst index 5d1d91dc9..ba8ec4ed6 100644 --- a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst @@ -831,6 +831,18 @@ Low Power Performance Power Performance ^^^^^^^^^^^^^^^^^ +.. csv-table:: I/O Only + DDR Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","0.00" + "vddr_core","0.85","0.00" + "soc_dvdd_3v3","3.30","3.47" + "soc_dvdd_1v8","1.80","2.26" + "vdda_1v8","1.80","0.02" + "vdd_lpddr4","1.10","3.03" + "Total"," ","8.78" + + .. csv-table:: Deep Sleep Power Performance :header: "Rail name","Rail voltage(V)","Power (mW)" diff --git a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst index a027eefe0..03cb815fb 100644 --- a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst @@ -693,6 +693,17 @@ Listed for each algorithm are the code snippets used to run each Power Performance ^^^^^^^^^^^^^^^^^ +.. csv-table:: I/O Only + DDR Power Performance + :header: "Rail name","Rail voltage(V)","Power (mW)" + + "vdd_core","0.85","0.00" + "vddr_core","0.85","0.00" + "soc_dvdd_3v3","3.30","2.07" + "soc_dvdd_1v8","1.80","8.50" + "vdda_1v8","1.80","0.13" + "vdd_lpddr4","1.10","4.58" + "Total"," ","15.28" + .. csv-table:: Deep Sleep Power Performance :header: "Rail name","Rail voltage(V)","Power (mW)" From f97da28d2dc8b344a39170a8f5dc1f8c54c0888f Mon Sep 17 00:00:00 2001 From: Kendall Willis Date: Thu, 11 Dec 2025 16:18:38 -0600 Subject: [PATCH 3/3] feat(linux): AM62*: Update LPM resume latency measurements for SDK 11.02 Update all low power mode resume latency measurements for AM62A, AM62P, AM62X, and AM62L for SDK 11.02. Signed-off-by: Kendall Willis --- source/devices/AM62AX/linux/Linux_Performance_Guide.rst | 6 +++--- source/devices/AM62LX/linux/Linux_Performance_Guide.rst | 4 ++-- source/devices/AM62PX/linux/Linux_Performance_Guide.rst | 6 +++--- source/devices/AM62X/linux/Linux_Performance_Guide.rst | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst index ba8ec4ed6..3b9d00d05 100644 --- a/source/devices/AM62AX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62AX/linux/Linux_Performance_Guide.rst @@ -880,9 +880,9 @@ Resume Latency Performance .. csv-table:: LPM Resume Latency Performance :header: "Low Power Mode","Total Resume Latency (ms)" - "I/O Only + DDR", "682.23" - "Deep Sleep", "160.24" - "MCU Only", "95.30" + "I/O Only + DDR", "766.17" + "Deep Sleep", "153.75" + "MCU Only", "89.70" The performance numbers are measured without the Linux printk logs. To remove the Linux printk logs, run the following commands in the terminal: diff --git a/source/devices/AM62LX/linux/Linux_Performance_Guide.rst b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst index e1004a8f0..dd87ac197 100644 --- a/source/devices/AM62LX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst @@ -622,8 +622,8 @@ Resume Latency Performance .. csv-table:: LPM Resume Latency Performance :header: "Low Power Mode","Total Resume Latency (ms)" - "RTC Only + DDR", "459.40" - "Deep Sleep", "98.70" + "RTC Only + DDR", "456.44" + "Deep Sleep", "109.96" The performance numbers are measured without the Linux printk logs. To remove the Linux printk logs, run the following commands in the terminal: diff --git a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst index 03cb815fb..366c7ac38 100644 --- a/source/devices/AM62PX/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62PX/linux/Linux_Performance_Guide.rst @@ -746,9 +746,9 @@ Resume Latency Performance .. csv-table:: LPM Resume Latency Performance :header: "Low Power Mode","Total Resume Latency (ms)" - "I/O Only + DDR", "716.68" - "Deep Sleep", "150.50" - "MCU Only", "94.06" + "I/O Only + DDR", "709.82" + "Deep Sleep", "136.52" + "MCU Only", "91.68" The performance numbers are measured without the Linux printk logs. To remove the Linux printk logs, run the following commands in the terminal: diff --git a/source/devices/AM62X/linux/Linux_Performance_Guide.rst b/source/devices/AM62X/linux/Linux_Performance_Guide.rst index f5f25d30d..33cdd3902 100644 --- a/source/devices/AM62X/linux/Linux_Performance_Guide.rst +++ b/source/devices/AM62X/linux/Linux_Performance_Guide.rst @@ -834,8 +834,8 @@ Resume Latency Performance .. csv-table:: LPM Resume Latency Performance :header: "Low Power Mode","Total Resume Latency (ms)" - "Deep Sleep", "137.03" - "MCU Only", "86.12" + "Deep Sleep", "131.50" + "MCU Only", "84.89" The performance numbers are measured without the Linux printk logs. To remove the Linux printk logs, run the following commands in the terminal: